新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 單片機C語言(0到100計時器)

        單片機C語言(0到100計時器)

        作者: 時間:2016-11-29 來源:網絡 收藏

        #include

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

        #define uint unsigned int

        #define uchar unsigned charuchar temp,bai,shi,ge,aa;

        sbit dula=P2^6;sbit wela=P2^7;uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};

        void display(uchar bai,uchar shi,uchar ge);

        void delay(uint z);

        void init();

        void main()

        {

        init(); //初始化子程序

        while(1)

        {

        if(aa==20)

        {

        aa=0;

        temp++;

        if(temp==100)

        {

        temp=0;

        }

        bai=temp/100;

        shi=temp%100/10;

        ge=temp%10;

        }

        display(bai,shi,ge);

        }

        }

        void delay(uint z)

        {

        uint x,y;

        for(x=z;x>0;x--)

        for(y=110;y>0;y--);

        }

        void display(uchar bai,uchar shi,uchar ge)

        {

        dula=1;

        P0=table[bai];

        dula=0;P0=0xff;

        wela=1;

        P0=0xfe; //位選通

        wela=0;

        delay(1) ;

        dula=1;

        P0=table[shi];

        dula=0;

        P0=0xff; //消隱

        wela=1;

        P0=0xfd;

        wela=0;

        delay(1) ;

        dula=1;

        P0=table[ge];

        dula=0;

        P0=0xff;// 消隱

        wela=1;

        P0=0xfb;

        wela=0;

        delay(1);

        }

        void init()

        {

        wela=0;

        dula=0;

        temp=0;

        TMOD=0x01;

        TH0=(65536-50000)/256;

        TL0=(65536-50000)%256;

        EA=1;

        ET0=1;

        TR0=1;

        }

        void timer0() interrupt 1

        {

        TH0=(65536-50000)/256;

        TL0=(65536-50000)%256;

        aa++;

        }    



        評論


        技術專區

        關閉
        主站蜘蛛池模板: 新野县| 上思县| 方城县| 长岛县| 淮北市| 武川县| 株洲县| 托克逊县| 陆丰市| 永善县| 略阳县| 大石桥市| 永和县| 曲周县| 麟游县| 西畴县| 翁源县| 五常市| 喀什市| 南华县| 德化县| 平乡县| 隆子县| 湘潭市| 湟中县| 徐州市| 兴仁县| 克什克腾旗| 青阳县| 织金县| 克拉玛依市| 韶关市| 个旧市| 大宁县| 灵石县| 淮北市| 凤阳县| 永定县| 鄂尔多斯市| 东平县| 兖州市|