<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

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

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

          作者: 時間:2013-08-03 來源:網絡 收藏

          /* 名稱: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; //按鍵次數(取值 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 中斷函數

          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 轉換狀態(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語言程序設計:10s 的秒表

          c語言相關文章:c語言教程




          評論


          相關推薦

          技術專區(qū)

          關閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();