在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            新聞中心

            EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 單片機C語言程序設(shè)計:10s 的秒表

            單片機C語言程序設(shè)計:10s 的秒表

            作者: 時間:2013-08-03 來源:網(wǎng)絡(luò) 收藏

            /* 名稱:10s 的

            說明:首次按鍵計時開始,再次按鍵暫停,第三次按鍵清零。


            */

            #includereg51.h>

            #define uchar unsigned char

            #define uint unsigned int

            sbit K1=P3^7;

            uchar

            i,Second_Counts,Key_Flag_Idx;

            bit Key_State;

            uchar

            DSY_CODE[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};

            //延時

            void DelayMS(uint ms)

            {

            uchar t;

            while(ms--) for(t=0;t120;t++);

            }

            //處理按鍵事件

            void Key_Event_Handle()

            {

            if(Key_State==0)

            {

            Key_Flag_Idx=(Key_Flag_Idx+1)%3;

            switch(Key_Flag_Idx)

            {

            case 1:EA=1;ET0=1;TR0=1;break;

            case 2:EA=0;ET0=0;TR0=0;break;

            case 0:P0=0x3f;P2=0x3f;i=0;Second_Counts=0;

            }

            }

            }

            //主程序

            void main()

            {


            Second_Counts=0;

            Key_Flag_Idx=0; //按鍵次數(shù)(取值 0,1,2,3)

            Key_State=1; //按鍵狀態(tài)

            TMOD=0x01; //定時器 0 方式 1


            TH0=(65536-50000)/256; //定時器 0:15ms

            TL0=(65536-50000)%256;

            while(1)

            {

            if(Key_State!=K1)

            {

            DelayMS(10);

            Key_State=K1;

            Key_Event_Handle();

            }

            }

            }

            /T0 中斷函數(shù)

            void DSY_Refresh() interrupt 1

            {

            TH0=(65536-50000)/256; //恢復定時器 0 初值

            TL0=(65536-50000)%256;

            if(++i==2)


            {

            i=0;

            Second_Counts++; //50ms*2=0.1s 轉(zhuǎn)換狀態(tài)

            P0=DSY_CODE[Second_Counts/10];

            P2=DSY_CODE[Second_Counts%10];

            if(Second_Counts==100) Second_Counts=0; //滿 100(10s)后顯示 00

            }

            }

            單片機C語言程序設(shè)計:10s 的秒表

            c語言相關(guān)文章:c語言教程




            評論


            相關(guān)推薦

            技術(shù)專區(qū)

            關(guān)閉