久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费
標題:
單片機籃球計時器Proteus仿真程序
[打印本頁]
作者:
fangggeee
時間:
2024-11-17 19:56
標題:
單片機籃球計時器Proteus仿真程序
51hei.gif
(83.78 KB, 下載次數: 0)
下載附件
2024-11-20 23:16 上傳
單片機源程序如下:
#include<reg52.h>
#include<absacc.h>
#define uchar unsigned char
#define uint unsigned int
sbit A8=P2^0;
sbit A9=P2^1;
sbit A10=P2^2;
sbit A11=P2^3;
sfr P00=0x80;
uchar code wei_1[]={0X01,0X02,0X04,0X08,0X10,0X20,0X40,0X80};
uchar code table[]={0X3F,0X06,0X5B,0X4F,0X66,0X6D,0X7D,0X07,0X7F,0X6F,0x77,0x7c,0x39,0x5e,0x79,0x71,0X00,0X40};
uchar minute=12; //分
uchar second=0; //秒
uchar key_status=0; //按鍵狀態值
uchar scoreA=0; //A隊得分
uchar scoreB=0; //B隊得分
uchar count1=20; //記錄定時器時間
uchar match=1; //比賽節數
uchar rule_time=24; //記錄24秒規則
uchar rule_flag=0; //記錄24秒規則是否啟用
/*
初始化IO口
*/
void IO_init(){
A8=0;
A9=0;
}
/*
初始化時間
*/
void time_init(){
TMOD = 0x01;
TH0 = (65536-50000)/256;
TL0 = (65536-50000)%256;
EA = 1;
ET0 = 1;
}
/*
延時函數
*/
void delay_ms(uint z){
uint i;
uchar j;
for(i=0;i<z;i++){
for(j=0;j<100;j++);
}
}
/*
計時函數
*/
void T0_Time() interrupt 1 using 1{
if (count1-- == 0)
{
second--;
rule_time--;
count1 = 20;
}
TH0 = (65536-50000)/256;
TL0 = (65536-50000)%256;
}
/*
時間顯示函數
*/
void time_display(uchar w2,uchar d2){
uchar shi1,ge1;
shi1=d2/10;
ge1=d2%10;
P00=wei_1[w2];
A10=1;
A10=0;
P00=table[shi1];;
A8=1;
A8=0;
delay_ms(5);
P00=0;
A10=1;
A10=0;
A8=1;
A8=0;
P00=wei_1[w2+1];
A10=1;
A10=0;
P00=table[ge1];
A8=1;
A8=0;
delay_ms(5);
P00=0;
A10=1;
A10=0;
A8=1;
A8=0;
}
/*
分數顯示函數
*/
void score_dispaly(uchar w2,uchar d2){
uchar qian2,shi2,ge2;
qian2=d2/100;
shi2=d2%100/10;
ge2=d2%100%10;
P00=wei_1[w2];
A9=1;
A9=0;
P00=table[qian2];;
A8=1;
A8=0;
delay_ms(10);
P00=0;
A9=1;
A9=0;
A8=1;
A8=0;
P00=wei_1[w2+1];
A9=1;
A9=0;
P00=table[shi2];
A8=1;
A8=0;
delay_ms(10);
P00=0;
A9=1;
A9=0;
A8=1;
A8=0;
P00=wei_1[w2+2];
A9=1;
A9=0;
P00=table[ge2];
A8=1;
A8=0;
delay_ms(10);
P00=0;
A9=1;
A9=0;
A8=1;
A8=0;
}
/*
鍵盤輸入函數
*/
void key(){
static uchar key_new = 0, key_l,temp;
key_status = 0;
P1 = 0x0f;
if((P1 & 0x0f) != 0x0f)
{
delay_ms(1);
if(((P1 & 0x0f) != 0x0f) && (key_new == 1))
{
key_new = 0;
/*
矩陣鍵盤掃描
*/
key_l = (P1 | 0xf0);
P1 = key_l;
switch(P1)
{
/*
開始計時/比賽繼續
*/
case 0x7e:
TR0=1;
rule_flag=1;
time_display(6,rule_time);
break;
/*
暫停比賽
*/
case 0x7d:
TR0=0;
break;
/*
加分,同時24秒清零和總計時器停止計時
*/
case 0xee:
TR0=0;
scoreA +=3;
rule_time=24;
rule_flag=0;
break;
case 0xed:
TR0=0;
scoreA +=2;
rule_time=24;
rule_flag=0;
break;
case 0xeb:
TR0=0;
scoreA +=1;
rule_time=24;
rule_flag=0;
break;
case 0xde:
TR0=0;
scoreB +=3;
rule_time=24;
rule_flag=0;
break;
case 0xdd:
TR0=0;
scoreB +=2;
rule_time=24;
rule_flag=0;
break;
case 0xdb:
TR0=0;
scoreB +=1;
rule_time=24;
rule_flag=0;
break;
/*
增加比賽節數,同時24秒復位和總計時器復位
*/
case 0xbd:
match++;
minute=12;
second=0;
TR0=0;
rule_time=24;
rule_flag=0;
break;
/*
手動24秒復位
*/
case 0xbe:
if(TR0==1){
rule_time=0;
rule_flag=0;
}else{
rule_flag=0;
}
break;
}
}
}
else
{
key_new = 1;
}
}
void main()
{
IO_init();
time_init();
while(1){
key();
if(second==0){
/*
判斷某節比賽是否結束
*/
if(minute==0){
/*
判斷是否為最后一節比賽
*/
if(match<4){
/*
計時系統恢復為默認值,比賽節數加一
*/
second=60;
minute=11;
match++;
rule_time=24;
rule_flag=0;
}
TR0=0;
}
/*
比賽分鐘數減一
*/
else {
second=60;
minute--;
}
}
/*
24秒結束,計時器暫停和24秒復位
*/
if(rule_time<=0){
TR0=0;
rule_time=24;
}
/*
顯示
*/
time_display(0,minute);
time_display(2,second);
time_display(4,match);
time_display(6,rule_time);
score_dispaly(1,scoreA);
score_dispaly(5,scoreB);
}
}
復制代碼
所有資料51hei附件下載:
籃球計時器.7z
(70.69 KB, 下載次數: 0)
2024-11-20 23:17 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
歡迎光臨 (http://m.zg4o1577.cn/bbs/)
Powered by Discuz! X3.1
主站蜘蛛池模板:
国产精品一区在线播放
|
www.黄色网
|
国产91精品在线观看
|
91欧美
|
亚洲专区在线
|
九九精品在线观看
|
日韩一级片在线观看
|
日本中文字幕一区
|
好吊妞这里只有精品
|
欧美日韩在线观看视频
|
亚洲精品成人
|
久久性生活视频
|
视频一区中文字幕
|
久久视频在线
|
完全免费av
|
一区二区三区视频在线观看
|
国产成人+综合亚洲+天堂
|
影音先锋中文字幕在线
|
亚洲国产片
|
在线观看免费黄色
|
在线性视频
|
国产一区二区三区在线
|
一级黄色性生活片
|
午夜av片
|
国产精品看片
|
中文字幕偷拍
|
亚洲区视频
|
国产成人99久久亚洲综合精品
|
国产视频一二区
|
国产福利久久
|
91禁蘑菇在线看
|
刘玥大战28公分黑人
|
成年人免费看视频
|
人人射人人干
|
久久综合一区
|
黄网站免费大全入口
|
精品福利一区
|
在线视频日韩
|
男人天堂亚洲
|
夜晚福利视频
|
久久久天堂国产精品女人
|