如图所示为篮球比赛计时记分电路的Proteus仿真图。该仿真使用ATmega128作为控制核心、LGM12864作为计时记分器的显示装置、矩阵键盘作为输入设备实现篮球比赛的计时记分功能。

ATmega128是ATMEL公司的 8位系列单片机的最高配置的一款单片机,稳定性极高,被广泛的应用在了汽车电车管理、门禁系统、遥控器、智能家居、以及计量电表等领域。Atmega128A是AVR8位微处理器芯片,采用先进的RISC结构,采用AVR内核,拥有16MHz工作频率,工作电压为2.7-5.5V。

仿真运行后会利用LGM12864显示比赛时间、两队分数及比赛的小节数等。显示部分采用中文显示。

按下开始按键后比赛时间会开始进行倒计时。在此期间可以对A队和B队的比赛分数进行修改。

按下暂停后比赛时间停止倒计时,此时可以按下设定按钮对比赛时间进行修改。设定按钮按下后对应的修改位置会进行闪烁提示。设定按钮分别可以修改比赛时间的分钟和秒钟,修改完秒数据后,再次按下设定按钮,就可以退出设定模式。复位按键可以比赛设计和比赛分数进行复位。

程序使用ICCAVR7.22进行开发。部分程序代码如下:

void main(void)
{uint key_store=0x01;DDRC=0x0f;                                   //PC口上拉电阻使能PORTC=0xf0;      DDRB=0xff;                                    //PB口上拉电阻使能PORTB=0xff;  system_init();                              //系统初始化,设置IO口属性delay_nms(100);                             //延时100ms//************************************************************LCDchushihua();                               //液晶显示器初始化LCDQingPing();                                //液晶显示器清屏DDRB|=0x20 ;                              Display();                                  //显示初始化函数timer1_init();                             //定时器初始化TIMSK=0x04;                                    //定时器中断设置SEI();                                     //开中断Display_Score(scorea,scoreb);              //显示初始分数vision_tab();                               //显示比赛小节数       beer0();            while(1){if(update==1)                        //如果更新标志位{update = 0 ;                 //清除标志位if(time_fen==0&byte_tab==4)      //如果比赛省最后一分钟,且为最后一节{Display_Number(time_miao,cnt); //进行快速倒计时}else{Display_Number(time_fen,time_miao);            //其他情况下显示正常时间倒计时}//delay_nms(100);                                //延时100ms//Display_Number(time_fen,time_miao,byte_tab);}keyboardscan();                                 //键盘扫描,看是否有按键按下if(key!=0xff&flag==0)                              //如果有按键按下,则显示该按键键值0~15{    flag = 1 ;switch(key)                                //根据按键对比赛分数、比赛时间进行调整{case 1 : if(start==1){if(scoreb<200)scoreb=scoreb+1;else scoreb = 0 ;} Display_Score(scorea,scoreb);break ;//B队分数+1case 2 : if(start==1){if(scoreb<200)scoreb=scoreb+2;else scoreb = 0 ;} Display_Score(scorea,scoreb);break ;//B队分数+2case 3 : if(start==1){if(scoreb<200)scoreb=scoreb+3;else scoreb = 0 ;} Display_Score(scorea,scoreb);break ;//B队分数+3case 4 : if(start==0){                                //对时间进行加调整if(mode==1){if(time_fen<59) time_fen++;else time_fen = 0 ;}else if(mode==2){if(time_miao<59) time_miao++;else time_miao = 0 ;}}break ;//case 5 : if(start==1){if(scorea<200)scorea=scorea+1;else scorea = 0 ;}Display_Score(scorea,scoreb); break ;//A队分数+1case 6 : if(start==1){if(scorea<200)scorea=scorea+2;else scorea = 0 ;}Display_Score(scorea,scoreb); break ;//A队分数+2case 7 : if(start==1){if(scorea<200)scorea=scorea+3;else scorea = 0 ;}Display_Score(scorea,scoreb); break; //A队分数+3case 8 : if(start==0){if(mode==1){if(time_fen>0) time_fen--;else time_fen = 59 ;}else if(mode==2){if(time_miao>0) time_miao--;else time_miao = 59 ;} }break ; //时间进行减调整case 9 : start = 1 ;mode=0; break ;//开始按键case 10 : if(start!=1){beer0();start = 0 ; time_miao=0;time_fen=2;byte_tab=1;scorea=0;scoreb=0;}Display_Score(scorea,scoreb);vision_tab();break ;//复位按键,只有在暂停状态下可进行复位操作case 0 : start = 0 ;break ;//暂停按键case 11 : if(start==0){if(mode<2)mode++;else mode = 0 ;}break ;//模式选择,在暂停模式下才能对时间进行调整}}else if(key==0xff){flag = 0 ;}}
}

【闲鱼】https://m.tb.cn/h.UdSkzRt?tk=PVee2yrTOME CZ0001 「我在闲鱼发布了【基于ATmega128的篮球比赛记时记分器。该仿真采用ATe】」
点击链接直接打开

篮球比赛计时记分电路Proteus仿真说明相关推荐

  1. 基于STM32单片机的篮球计时记分器proteus仿真原理图PCB

    功能: 0.本系统采用STC89C52作为单片机 1.LCD1602液晶实时显示比赛剩余时间,球队分数 2.默认计时器为4节,每节10分钟,每节比赛结束,蜂鸣器报警 3.按键功能介绍: '1'键--加 ...

  2. HTML 篮球比赛计时记分器

    效果图 程序较短,为方便使用,html,css,js,写在了一起,很多东西写着才添加 <!DOCTYPE html> <html lang="en"> &l ...

  3. 计算机控制篮球,【精品课程设计】计算机控制技术弱电课程之篮球比赛计时计分器doc.doc...

    [精品课程设计]计算机控制技术弱电课程之篮球比赛计时计分器doc.doc 课程设计 题目 篮球赛计时计分器 二级学院 电子信息与自动化 专 业 电气工程及其自动化 班 级 学生姓名 学号 指导教师 考 ...

  4. 滑雪计时设备|滑雪比赛记分系统|滑雪比赛计时记分

    滑雪计时设备|滑雪比赛记分系统|滑雪比赛计时记分 Microgate滑雪赛事计时系统经过了近三十年的研发和经验积累,已形成一套完整的专业滑雪计时系统.在全世界各大国际赛场上广泛使用,一直为国际雪联FI ...

  5. 基于51单片机控制的篮球比赛计时、计分系统设计与仿真(含设计图和C语言程序源码)

    1. 设计任务: 2. 设计说明 2.1 需求分析 2.1.1 计分系统: 2.1.2 计时系统: 2.2 原理分析 2.3 总体设计 2.4 软硬件设计 2.4.1 硬件设计 2.4.2 软件设计 ...

  6. 单片机c语言篮球比分_基于单片机的篮球比赛计时计分器的设计

    摘 要:本系统是采用单片机AT89C51作为本设计的核心原件.利用7段共阴LED作为显示器件.在此设计中共接入了2个7段共阴LED显示器,用于记录得分和比赛时间,显示范围可以达到0到99分,基本满足赛 ...

  7. proteus四人抢答器_74HC147+373+4511数字四路抢答器电路Proteus仿真设计与调试

    1. 设计内容及要求 2.1 设计思路 2.2设计思路框图 3 电路仿真 4. 实物测试结果及分析 4.1测试结果 4.2结果分析 5.总结 参考资料 附录: 元器件清单 元器引脚图 1. 设计内容及 ...

  8. 【Proteus仿真】51单片机过零检测触发控制光耦+可控硅调光电路

    [Proteus仿真]51单片机过零检测触发控制光耦+可控硅调光电路 Proteus仿真截图 可以进行仿真,但是没有预期的效果. 电路搭建注意事项 整流桥输出负极端一定要接地,不然运行仿真会报错. 程 ...

  9. 【Proteus仿真】555组成的多谐振荡器电路

    [Proteus仿真]555组成的多谐振荡器电路 Proteus仿真演示 多谐振荡器电路   多谐振荡器电路是一种矩形波产生电路(属于数字电路,三极管不工作在放大线性区).这种电路不需要外加触发信号便 ...

最新文章

  1. 又是找 Bug 的一天! | 每日趣闻
  2. 易邮邮箱服务器的安装和配置
  3. 微信企业号OAuth2.0授权-Java
  4. BEGINNING SHAREPOINT#174; 2013 DEVELOPMENT 第14章节--使用Office Services开发应用程序 Excel Services中新功能...
  5. RocketMQ事务消息的三种状态
  6. 第一冲刺阶段博客检查
  7. Android平台和java平台 DES加密解密互通程序及其不能互通的原因
  8. mysql数据库下的所有表字段
  9. Android手机安装谷歌服务框架
  10. 微信网页授权页面获取不到code
  11. 数据科学-Matplotlib(直方条形和散点作业)
  12. 怎样让机器有人类思维
  13. 通过redmon监控管理Redis服务器的安装配置教程
  14. 计算机课前导学结题报告,《导学──自悟》课题研究的结题报告
  15. 在线会议中人脸面部轮廓图像提取(三)——Dlib库人脸面部轮廓图像特征提取
  16. 变量、存储过程与函数
  17. js手机号中间四位_为什么手机号码会影响我们?一个适合自己的手机号码有多重要?...
  18. Ukulele 那些花儿
  19. ILSpy反编译工具
  20. 计算机组成原理习题——日常记录

热门文章

  1. 在STM32F407的BSP基础上将RT-Thread移植到STM32F303VCT6上
  2. Cax + Matter-js 物理引擎结合使用
  3. MFC实战篇——添加鼠标右键响应菜单
  4. 基于Arduino之智能小夜灯项目
  5. css3基础100问之切图神器cutterman是怎样下载和使用的?(15)
  6. 4438无线网络组网代码解析
  7. 【踩坑日记(一)】: Pyinstall 打包.py文件 生成exe可执行文件
  8. APC发布首款高性能植物跑鞋
  9. VBA中的数据类型转换
  10. 科大讯飞发布四川话语音识别技术,号称识别准确率超过85%