篮球竞赛24秒计时器Word格式文档下载.docx
- 文档编号:16848906
- 上传时间:2022-11-26
- 格式:DOCX
- 页数:7
- 大小:450.67KB
篮球竞赛24秒计时器Word格式文档下载.docx
《篮球竞赛24秒计时器Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《篮球竞赛24秒计时器Word格式文档下载.docx(7页珍藏版)》请在冰豆网上搜索。
3.计时器为24s递减计时器,其计时间隔为1s。
4.计时器递减计时到零时,数码显示器不能灭灯,应发出报警信号。
二、实验原理
实验原理图见附录(图一)。
如图一所示:
单片机型号为AT89C51,P0口接左边的数码管,P2口接右边的数码管,设置了三个控制键,单片机引脚9接复位键,P3.2口接清零键,P3.3接启动键,P3.4接暂停/继续键。
P1.0口接一个LED,当计时结束时灯亮,作为报警信号。
仿真电路图见附录(图二,图三)。
PCB图见附录(图四)。
按下复位键,数码管显示“00”,其他功能如按键描述。
单片机的C语言见附录。
三、元器件清单
器件
规格
数量
单片机
AT89C51
1
7段数码管
共阴极
2
晶振
12MHz
按键开关
微型
4
电阻
220Ω
71KΩ
——
多功能板
焊锡丝、铁丝
——
若干
电容
24pF(CC)
210uF(CA)
四、电路的调试过程
实物图见附录(图五)。
我们按图四焊接电路,由图可见有多条跳线,我们用废弃的杜邦线代替或从元器件面过线。
完全焊完后接上+5V电源进行调试,我们发现P2口数码管较暗,P0口数码管正常。
测量后发现P2口数码管管脚电压过小,所以我们外加了+5V电压和保护电阻。
再次测试,两个数码管正常显示。
五、附录
图
(一)
图
(二)
图(三)
图(四)
图(五)
源程序:
#include<
reg51.h>
#defineucharunsignedchar
#defineuintunsignedint
//显示0到9
ucharDSY_CODE[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
ucharstart=0,count=0,clear=0;
Pause_Flag=0;
//ms延时
voidDelayMS(uintms)
{
uchart;
while(ms--)
{
for(t=0;
t<
120;
t++);
}
}
//s延时
voidDelayS(uchars)
while(s--)DelayMS(1000);
voidmain()
P0=0x3f;
//首先显示00
P1=0x00;
P2=0x3f;
TMOD=0x06;
//表示T0工作于计数器方式2
TH0=TL0=256-1;
//计数值为1
ET0=1;
//允许T0中断
EX0=1;
EX1=1;
//允许INTO,INT1中断
EA=1;
//开中断
IT0=1;
IT1=1;
//INT0,INT1下降沿触发
TR0=1;
//启动T0
while
(1)
if(start==1)
{
start=0;
while
(1)
{
if(clear==1)
{
P0=0x3f;
P2=0x3f;
clear=0;
break;
}
if(Pause_Flag==1)
continue;
else
if(count==0)
{
P1=0x01;
break;
}
DelayS
(1);
count--;
P0=DSY_CODE[count/10];
//显示计数器高位
P2=DSY_CODE[count%10];
//显示计数器低位
}
}
voidStart_Counter()interrupt2
count=24;
P0=0x5b;
//显示24s
P2=0x66;
DelayMS(10);
start=1;
Pause_Flag=0;
clear=0;
voidClear_Counter()interrupt0
clear=1;
start=0;
count=0;
voidPause_Counter()interrupt1
Pause_Flag=(Pause_Flag+1)%2;
//Key_Flay=1表示暂停,Key_Flag=0表示继续
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 篮球 竞赛 24 计时器