|
給51黑電子論壇的朋友們分享一個用51單片機做的籃球和乒乓球比賽用的計分器的proteus仿真設計,下面是仿真原理圖:
所有資料下載:
籃球比賽計時器.zip
(161.75 KB, 下載次數: 97)
2016-9-27 12:18 上傳
點擊文件名下載附件
比賽計分器的源程序(主程序)如下:
- #include"main.h"
- #include"delay.h"
- #include"keypad.h"
- #include"display.h"
- void main()
- {
- INT0_Initial();
- Time0_Initial();
- delay_ms(10);
- LED = 0;
- while(1)
- {
- switch(key_value)
- {
- case 12:
- {
- num1 ++;key_value = 0;
- flag1 = 0;
- if(num1>255)
- {
- num1 = 0;
- }
- break;
- }
- case 13:
- {
- num1 --;key_value = 0;
- flag1 = 0;
- if(num1>255)
- {
- num1 = 255;
- }
- break;
- }
- case 14:
- {
- num2 ++;key_value = 0;
- flag1 = 0;
- if(num2>255)
- {
- num2 = 0;
- }
- break;
- }
- case 15:
- {
- num2 --;key_value = 0;
- flag1 = 0;
- if(num2>255)
- {
- num2 = 255;
- }
- break;
- }
- case 1:
- {
- TR0 = 1;
- key_value = 0;
- break;
- }
- case 2:
- {
- num1 = 0;num2 = 0;
- num = 4;
- secs = 0;minutes = 12;
- m_secs = 24;
- key_value = 0;
- TR0 = 1;
- break;
- }
- case 3:
- {
- TR0 = 0;
- key_value = 0;
- break;
- }
- default:
- {
- break;
- }
- }
- HEXTOBCD();
- delay_us(10);
- Display(table);
- delay_us(10);
- }
- }
復制代碼 |
|