新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > AVR單片機微秒級和毫秒級延時函數

        AVR單片機微秒級和毫秒級延時函數

        作者: 時間:2016-11-26 來源:網絡 收藏
        在用單片機IO口模擬總線時序時老是碰到問題,自己總結了一下大多數是因為我們的延時不準確造成的,所以自己調了兩個延時函數,我板子上用的是AT Mega128的單片機和16MHz的晶振,用示波器看了這兩個函數產生的波形還挺準確的,希望大家能用得上 ^_^

        本文引用地址:http://www.104case.com/article/201611/321603.htm

        //16MHz晶振時間范圍:1-65535us

        void Delay_us(unsigned int us)
        {
        unsigned int i;
        i = us/2;
        i--;
        asm("nop"); asm("nop");
        for(;i!=0;i--)
        {
        asm("nop");asm("nop");asm("nop");
        asm("nop");asm("nop");asm("nop");
        asm("nop");asm("nop");asm("nop");
        }

        }

        //16MHz晶振時間范圍:1-65535ms

        void Delay_Ms(unsigned int t)
        {
        for(;t>0;t--)
        Delay_us(1100);
        }



        評論


        技術專區

        關閉
        主站蜘蛛池模板: 宜宾县| 海盐县| 宣武区| 磐安县| 隆德县| 德清县| 遂宁市| 梁山县| 武定县| 娱乐| 常熟市| 都江堰市| 台中县| 扎鲁特旗| 绿春县| 革吉县| 应城市| 靖西县| 霍山县| 阳谷县| 凤台县| 宝清县| 高碑店市| 广河县| 湘潭县| 台南市| 阳山县| 呼和浩特市| 旌德县| 阿勒泰市| 崇阳县| 吉木乃县| 明水县| 汝南县| 甘肃省| 黄大仙区| 巴彦淖尔市| 增城市| 仲巴县| 扎囊县| 称多县|