抢答器的设计智能仪器课程设计.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
课程设计 姓名: 学号: 班级: 目录 设计题目……………………………………………………………2 功能说明……………………………………………………………2 系统设计……………………………………………………………2 相关知识……………………………………………………………2 元器件清单…………………………………………………………2 硬件设计和软件设计………………………………………………3 总电路图与程序……………………………………………………7 设计心得…………………………………………………………16 设计题目 抢答器的设计 功能说明 抢答器可同时供8名选手或8个代表队比赛,每名选手或代表队使用一个按钮,8个按钮分别用1-8号表示。 设置系统复位和抢答开始控制开关,该开关由主持人控制。 抢答器具有定时抢答功能,且一次抢答的时间有主持人设定(如30s)。当主持人启动“开始”键后,显示器显示抢答时间倒计时,同时扬声器发出短暂的提示声响,声响持续的时间为0.5s左右。 参赛选手在设定的时间内进行抢答,抢答有效,显示器上显示选手的编号和限答的时间倒计时,并保持到主持人将系统复位为止。 可以通过按键操作修改答题限制时间和抢答限制时间。 如果抢答时间已到,无人抢答,本次抢答无效,系统复位。 系统设计 本系统采用80C51单片机作为控制器,主要由电源电路、时钟电路、复位电路、选手按键电路、数码显示电路、声音提示电路组成。 相关知识 (1)80C51单片机工作原理 (2)复位电路工作原理及电路设计 (3)时钟电路工作原理及电路设计 (4)按键电路的设计 (5)蜂鸣器驱动电路的设计 (6)数码显示的原理及应用 (7)优先锁存程序的设计及调试方法 元器件清单 控制器 单片机80C51 时钟电路 晶体振荡器12MHz,电容30pF 复位电路 电解电容22Uf/10V,电阻1k欧 声音提示电路 晶体管2N5088,喇叭0.5W/8欧,电阻100欧, 电阻3.3欧 选手按键 按键SW-PB 主持人按键 按键SW-PB 数码显示 LED数码管,四联共阴,排阻8千欧*8 硬件设计和软件设计 复位模块 图1.复位模块电路图 while(!Key_stop); while(1) //在显示选手回答倒计时时只有在stop按键按下时,才可按复位键 { display(num,Answer_time);//显示选手编号和回答倒计时 } if(Key_restart==0) { delay(10); if(Key_restart==0)//热复位键,从头开始下一轮 { beep(); goto Top; } } 时钟模块 图2.时钟模块电路图 void init()//初始化函数 { EA=1;//开总中断; TMOD=0x11;//定时器工作方式1,16位定时计数器 TH0=(65536-50000)/256;//50us TL0=(65536-50000)%256; ET0=1;//开定时器0中断(暂时不启动定时器) TH1=(65536-50000)/256;//50us TL1=(65536-50000)%256; ET1=1;//开定时器0中断(暂时不启动定时器) EX0=1;//启动外中断0 EX1=1;//启动外中断1 P1=0x00;//读P1口的数据要先置1准备 count_0=0;//定时器中的计数清零 count_1=0; } 声音提示模块 图3.声音提示模块电路图 void beep() { laba=1; delay(100); laba=0; } void beep_last() { laba=1; delay(500); laba=0; } 数码显示模块 图4.显示模块电路图 void displaySet(uchar Settime) { Settime--; P2=0xfd;//1011 1111 P0=table[Settime%10];//时间的个位 delay(10); P2=0xfd;//1011 1111 P0=0x00;//消余辉 delay(10); P2=0xfe;// 0111 1111 P0=table[Settime/10];//时间的十位 delay(10); P2=0xfe;//0111 1111 P0=0x00;//消余辉 delay(10); } void display(uchar num,uchar time)//显示数字的函数 { P2=0xfe; P0=table[num]; delay(10); P2=0xfe;//0111 1111 P

文档评论(0)

mx597651661 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档