91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

資源簡介

采用51單片機,完成籃球比賽的計時和計分,給出了Proteus仿真硬件和Keil c開發的軟件。

資源截圖

代碼片段和文件信息

#include
#define?uchar?unsigned?char
#define?uint?unsigned?int

sbit?Score_Select=P2^6;
sbit?Time_Select=P2^7;
uchar?table[]={0x3f0x060x5b0x4f0x660x6d
0x7d0x070x7f0x6f0x800x400x000x76};//0-9數字,后面為“.?-?熄燈?H“
uchar?msec;
unsigned?char?key_down=0;//鍵按下和松開狀態指示,防止重復讀取鍵值

/*****50msec定時器0中斷*****/
void?T0_int()?interrupt?1
{
TH0=0x3c;? //50ms定時
TL0=0xB0;

msec++;
}
/*****延時子程序*****/
void?delay(uint?t)
{
for(;t>0;t--);
}

/*--------------------------------------------------------*/
/*4*4矩陣鍵盤鍵值掃描程序?????????????????????????????????*/
/*返回按鍵的數字值????????????????????????????????????????*/
/*--------------------------------------------------------*/
uchar?key_scan(void)
{
uchar?keykey_val;
P1=0xf0;//低位行線送低電平
key=P1;//讀取高位列線電平
if(key!=0xf0)//是否有鍵按下
{
if(key_down==0)//之前沒有按鍵按下
{
key_down=1;//置按鍵按下標志
delay(5000);?//延時去抖動5ms
key=P1;//再讀取高位列線電平
if(key!=0xf0)//確認有鍵按下
{
P1=0x0f;//高位列線拉低回送
key|=P1;//讀取低位行線電平并與原高位列電平組合得到鍵掃描碼
}
else
return?0xff;//按鍵干擾,返回無效按鍵鍵值
}
else
return?0xff;//按鍵按下未松開,返回無效按鍵鍵值
}
else
{
if(key_down==1) key_down=0;//鍵松開,清按鍵標志
return?0xff;//返回無效按鍵鍵值
}

switch(key)
{ //第一行按鍵
case?0xee:
key_val=1;
break;
case?0xde:
key_val=2;
break;
case?0xbe:
key_val=3;
break;
case?0x7e:
key_val=15;
break;
//第二行按鍵
case?0xed:
key_val=4;
break;
case?0xdd:
key_val=5;
break;
case?0xbd:
key_val=6;
break;
case?0x7d:
key_val=14;
break;
//第三行按鍵
case?0xeb:
key_val=7;
break;
case?0xdb:
key_val=8;
break;
case?0xbb:
key_val=9;
break;
case?0x7b:
key_val=13;
break;
//第四行按鍵
case?0xe7:
key_val=10;
break;
case?0xd7:
key_val=0;
break;
case?0xb7:
key_val=11;
break;
case?0x77:
key_val=12;
break;

default:
key_val=0xff;//無效按鍵鍵值
break;
}
return?key_val;
}

main()
{
uchar?secminutehour;
char?count_seccount_minutecount_hourcount_pause;
uchar?set_hourset_minuteset_secset_count;
long?set_count_timetemp;
int?temp1;
uchar?time_settime_set_bittime_disptime[8];
uchar?teamone_flash;
uchar?score_setinv;
int?score_addscore[2];
uchar?keyvalue;
uchar?i;

team=0;
inv=0;
score_set=0;
score_add=0;
score[0]=score[1]=0;

time_set=time_set_bit=time_disp=0;
time[0]=time[1]=0;
msec=0;
sec=50;
minute=59;
hour=23;

count_sec=count_minute=count_hour=count_pause=0;
set_hour=set_minute=set_sec=set_count=set_count_time=0;

IT0=1;
EX0=1;
TMOD=0x11;
TH0=0x3C;
TL0=0xB0;
ET0=1;
TR0=1;
EA=1;

while(1)
?? {
keyvalue=key_scan();
switch(keyvalue)
{
case?15://Time?Set
if(time_set==0){
time_set=1;//標志時鐘設置
i=2;
time[i++]=hour/10;
time[i++]=hour%10;
time[i++]=minute/10;
time[i++]=minute%10;
time[i++]=sec/10;
time[i++]=sec%

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----

?????文件?????121325??2013-06-19?17:23??計分器\Last?Loaded?score.DBK

?????文件??????15811??2013-06-20?02:11??計分器\score

?????文件???????8067??2013-06-20?02:11??計分器\score.c

?????文件?????121325??2013-06-20?02:15??計分器\score.DSN

?????文件???????7891??2013-06-20?02:11??計分器\score.hex

?????文件?????????27??2013-06-20?02:11??計分器\score.lnp

?????文件??????23783??2013-06-20?02:11??計分器\score.LST

?????文件??????20511??2013-06-20?02:11??計分器\score.M51

?????文件??????19281??2013-06-20?02:11??計分器\score.OBJ

?????文件????????352??2013-06-20?02:11??計分器\score.plg

?????文件????????790??2013-06-20?02:15??計分器\score.PWI

????.......?????56701??2013-06-20?02:11??計分器\score.uvopt

????.......?????13238??2013-06-19?17:50??計分器\score.uvproj

????.......?????56709??2013-06-20?02:09??計分器\score_uvopt.bak

????.......?????????0??2013-06-19?15:51??計分器\score_uvproj.bak

?????目錄??????????0??2013-06-20?02:17??計分器

-----------?---------??----------?-----??----

???????????????465811????????????????????16


評論

共有 條評論