P0,P2口分別接兩個八段數碼管,顯示秒的十個與個位,實現(xiàn)00~99的顯示,P3.7接按鍵,實現(xiàn)秒表的啟動,暫停與清零(長按則清零),用定時器方式實現(xiàn)準確的秒表計數。
單片機源程序如下:
- #include<reg51.h>//頭文件
- #include"button.h"//頭文件
- #include"interrupt.h"//頭文件
- #include"led.h"//頭文件
- #define uchar unsigned char//定義數據類型
- uchar led[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; //定義字模
- uchar count=0;//定義變量
- uchar judge=0;
- uchar i=0;
- long ling=0;
- void main()//主函數
- {
- TMOD=0x01;//設置定時器工作方式為2
- TH0=(65535-50000)/256;//給定時器高位賦初值,50ms
- TL0=(65535-50000)%256;//給定時器低位賦初值,50ms
- EA=1;//CPU全局中斷
- ET0=1;
- TR0=0;
- while(1)
- {
- button();//按鍵函數
- led_2();//數碼管顯示函數
- }
- }
復制代碼 全部資料51hei下載地址:
秒表.zip
(46.9 KB, 下載次數: 40)
2019-5-11 13:28 上傳
點擊文件名下載附件
|