新聞中心

        EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 51單片機程序——定時器控制LED閃爍

        51單片機程序——定時器控制LED閃爍

        作者: 時間:2016-11-23 來源:網絡 收藏
        #include
        #define uint unsigned int
        uint i=0;
        void delay(uint z) //延遲函數(shù)
        {
        uint x,y;
        for(x=z;x>0;x--)
        for(y=20;y>0;y--);
        }
        void main (void)
        {
        TMOD=0x10; //TMOD賦值,以確定T0和T1的工作方式
        TH1=(65536-50000)/256; //計算初值,并將其寫入TH0、TL0或TH1、TL1
        TL1=(65536-50000)%6;
        EA=1; //打開總中斷
        ET1=1; //打開定時器1中斷
        TR1=1; //啟動定時器1
        while(1)
        {
        if(i==20) //定時器計數(shù)時間20*50MS=1S
        {
        i=0; //清除標志位
        P0=0xaa;
        delay(500);
        P0=0xff;
        delay(500);
        }
        }
        }
        void exter1() interrupt 3 //定時器1中斷函數(shù)
        {
        TH1=(65536-50000)/256; //中斷函數(shù)中也需要賦定時器初值
        TL1=(65536-50000)%6;
        i++; //定時器每50MS就使i加一
        }


        評論


        技術專區(qū)

        關閉
        主站蜘蛛池模板: 镇巴县| 汤阴县| 饶河县| 隆昌县| 共和县| 天等县| 昌吉市| 诏安县| 平昌县| 德钦县| 和田市| 文安县| 墨竹工卡县| 延津县| 宜昌市| 恩平市| 博爱县| 中阳县| 安义县| 资溪县| 依安县| 湟源县| 抚州市| 泽库县| 普格县| 普兰店市| 图木舒克市| 花莲县| 安陆市| 尖扎县| 都江堰市| 栖霞市| 马公市| 铁岭市| 巩义市| 镇坪县| 康保县| 赣州市| 资溪县| 普陀区| 新郑市|