|
99秒馬表設計 1. 實驗任務
(1. 開始時,顯示“00”,第1次按下SP1后就開始計時。
(2. 第2次按SP1后,計時停止。
(3. 第3次按SP1后,計時歸零。 2. 電路原理圖
99秒馬表設計a.png (95.48 KB, 下載次數: 45)
下載附件
2019-7-29 17:16 上傳
3. 系統板上硬件連線 (1. 把“單片機系統”區域中的P0.0/AD0-P0.7/AD7端口用8芯排線連接到“四路靜態數碼顯示模塊”區域中的任一個a-h端口上;要求:P0.0/AD0對應著a,P0.1/AD1對應著b,……,P0.7/AD7對應著h。 (2. 把“單片機系統”區域中的P2.0/A8-P2.7/A15端口用8芯排線連接到“四路靜態數碼顯示模塊”區域中的任一個a-h端口上;要求:P2.0/A8對應著a,P2.1/A9對應著b,……,P2.7/A15對應著h。 (3. 把“單片機系統“區域中的P3.5/T1用導線連接到”獨立式鍵盤“區域中的SP1端口上;
4. 程序框圖
99秒馬表設計1.png (7.94 KB, 下載次數: 57)
下載附件
1
2019-7-29 17:16 上傳
T0中斷服務程序框圖
99秒馬表設計3.png (6.08 KB, 下載次數: 50)
下載附件
3
2019-7-29 17:16 上傳
5. C語言源程序
#include <AT89X51.H>
unsigned char code dispcode[]={0x3f,0x06,0x5b,0x4f,
0x66,0x6d,0x7d,0x07,
0x7f,0x6f,0x77,0x7c,
0x39,0x5e,0x79,0x71,0x00};
unsigned char second;
unsigned char keycnt;
unsigned int tcnt;
void main(void)
{
unsigned char i,j;
TMOD=0x02;
ET0=1;
EA=1;
second=0;
P0=dispcode[second/10];
P2=dispcode[second%10];
while(1)
{
if(P3_5==0)
{
for(i=20;i>0;i--)
for(j=248;j>0;j--);
if(P3_5==0)
{
keycnt++;
mabiao.c.zip
(550 Bytes, 下載次數: 5)
2019-7-29 17:20 上傳
點擊文件名下載附件
源程序 下載積分: 黑幣 -5
|