文档详情

篮球24秒倒计时器.ppt

发布:2017-08-21约1.59千字共12页下载文档
文本预览下载声明
篮球24秒倒计时器 第四小组 组员:郭翔天 袁超 康毅 刘志伟 丁德奥 项目描述 随着信息时代的到来。电子技术在生活中发挥着越来越重要的作用,在篮球比赛中,规定了篮球员的持球时间不能超过24秒,否则将视为犯规。 项目计时规则 双方持球不得超过24秒,否则视为犯规。24秒重新计时 在24秒以内,如果有犯规或者进球,时间暂停。24秒重新计时 在24秒内,因教练布置战术等原因暂停,24秒重新计时 本设计是采用AT89C51单片机为核心的一个用 于赛场的篮球计时器。T0、T1中断计时,显 示部分为24秒倒计时,采用共阳极LED显示。 每次计时时间为24秒,并且具有启动暂停、启 动、复位等功能。显示范围为0-24.00。 开关具体功能: 初始状态下按K1开始计时,在计时显示时间状态下K1 暂停计时,按K2时间继续进行。 暂停状态下按下K1继续计时,若按下K2,保持停止 时状态,显示清零,回复到初始状态。 项目实施步骤 确定具体的技术指标 设计硬件电路图 设计软件程序 在PROTUES环境下仿真检查项目结果 硬件原理图的设计 计时状态 显示函数编写 void display(unsigned int i) { P2=0xfb; //只能数码管1 P0=a[i/1000]; //赋值 DP=1; //关闭小数点 delay_ms(5); //延时 P2=0xf7; //只能数码管2 P0=a[(i/100)%10]; //赋值 DP=0; //点亮小数点 delay_ms(5); //延时 P2=0xeF; //只能数码管3 P0=a[(i/10)%10]; //赋值 DP=1; //关闭小数点 delay_ms(5); //延时 P2=0xdF; //只能数码管3 P0=a[i%10]; //赋值 DP=1; //关闭小数点 delay_ms(5); //延时 } 定时中断函数流程设计 void time0()interrupt 0 { if(TR0==1) TR0=0; else TR0=1; } void time1()interrupt 2 { menu=2400; TR0=0; } void timer()interrupt 1 { static unsigned int i=0; i++; if(i==10) { i=0; if(menu==0) { menu=2400; TR0 = 0; } else menu--; } TH0=(65535-1000)/256; TL0=(65535-1000)%256; } 本项目相关知识 本项目选用共阳极数码管。共阳极数码管在应 用时将公共极COM接+5V,当某一字段的发光 二极管阴极为低电平时,向相应的字段就点 亮;当某一字段的发光二极管阳极为高电平 时,相应的字段就不亮。 共阳极发光二极管 心得体会 通过全组组员的共同努力,成功的完成了篮球24秒倒计时器的任务。在该项目中我们遇到了很多困难,但是我们通过查询资料、反复修改代码和设计方案,最终按成该项目 * * 显示实时时间 停止计时 状态3 显示实时时间 计时 状态1 00.00 停止计时 状态0 显示状态 计时状态 状态编号(menu)
显示全部
相似文档