基于ATmega16L单片机的六路抢答器设计_第1页
基于ATmega16L单片机的六路抢答器设计_第2页
基于ATmega16L单片机的六路抢答器设计_第3页
基于ATmega16L单片机的六路抢答器设计_第4页
基于ATmega16L单片机的六路抢答器设计_第5页
已阅读5页,还剩16页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

题目基于ATMEGA16L单片机的抢答器设计1引言32抢答器系统的功能33抢答器的硬件系统34抢答器的软件系统45源程序116结束语19参考文献202基于ATMEGA16L单片机的六路抢答器设计摘要介绍了一种以ATMEGA16L单片机为核心的八路数字抢答器系统,分别从硬件和软件两方面阐述了该控制系统的设计方法,并经过调试和运行使该系统达到预期目标,具有反应快、功能齐全、实用性强的特点。关键词抢答器单片机ATMEGA16LEIGHTROUTESCALLINGIMPLEMENTBASEDONATMEGA16LSINGLECHIPCONTROLLERABSTRACTAKINDOFEIGHTROUTESDIGITALCALLINGIMPLEMENTISINTRODUCEDINTHETHESIS,ANDTHEATMEGA16LSINGLECHIPCONTROLLERISITSHARDCORE1ALSO,THEDESIGNMETHODOFTHECONTROLSYSTEMWASEXPOUNDEDFROMASPECTSOFTHESOFTWAREANDTHEHARDWARE1ANDAFTERDEBUGGINGANDRUNNING,THESYSTEMREACHEDTHEEXPECTEDTARGET,WHICHHAVEMANYADVANTAGESSUCHASFASTREACTION,ALLREADYFUNCTIONANDGOODPRACTICABILITY1。KEYWORDSCALLINGIMPLEMENTSINGLECHIPCONTROLLERATMEGA3引言抢答器是一种广泛应用于企事业单位和商业部门,为各种知识竞赛、文娱活动提供公正客观快速裁决的一种常用电子设备,也是一种逐渐成型的电子产品,但市面上所售抢答器价格一般较贵且多为小规模集成电路构成,其性能单一,工作起来不够理想。因此,提高抢答器的性能,使其具有更强的功能,使用可靠方便已为抢答器发展的一个方向。随着集成技术和计算机技术的发展,单片机作为其一个分支亦于20世纪80年代以来获得了飞速发展,各种新品不涌现,使单片机的应用更加深入,灵活性也大大增强。本文介绍一种以ATMEGA单片机为核心的八路抢答器系统,它充分利用了单片机系统的优点,具有结构简单、功能强大、可靠性好、实用性强的特点。2抢答器系统的功能本抢答系统可实现以下功能1抢答功能通过六路按键配合程序来实现抢答功能。当主持人按下抢答键开始抢答后,此时任一路按下按钮均闭锁其它各路,由程序对键盘译码并显示最先按下抢答键的路数及其当前时间。2抢答限时主持人按下抢答键后,设置5秒为抢答时间此时间可在199秒之间修改。若5秒内无人抢答,倒计时为0时发出报警,说明该抢答题目作废。此时闭锁所有抢答按键,只有当主持人再次按下抢答键开始下一次抢答方可抢答。3答题限时当主持人按下开始答题按钮时,启动倒计时此倒计时时间可在199秒之间修改,若答题时间过长,倒计时为0时发出报警,说明答题时间到,显示返回当前台数及其分数为下一步计分作出准备。4设定功能按下设定键后,可按顺序设置抢答限时时间,答题限时时间和默认计分分值。5其它可附加功能如果采用蜂鸣器可实现声音报警。3抢答器的硬件系统本抢答器的硬件系统包括以下几个部分1抢答按钮和各功能键07八个按键在抢答时27为抢答键,0和1一个开始抢答键、一个开始答题键。各键分布电路图如图1所示。4D71463D5124D31029D1807E6RW5S4VS1D2VE3LCD1LM016LPA0/ADC0401/139PA2/ADC283/337PA4/ADC465/535PA6/ADC64PB0/XCK/T011/T12PB2/IN2/AIN033/OC0/I14PB4/S55/MOSI6PB6/I77/SCK87/73REST9XTAL11322PC0/SCL21/DA3PC2/TCK243/MS5PC4/TDO265/I7PC6/TOSC1287/29PD0/RXD141/T5PD2/IN0163/IT17PD4/OCB185/1A9PD6/ICP207/O21AVC30REF2U1ATMEGA16VR单片机K1K2K3K4K5K6UPKEYMAINKEY5VR11KD1LEDR21K2LED5V1602液晶显示模块C110UFLS1SOUNDERR31KD3LEDR41K4LEDR51KD5LEDR61K6LEDR71K7LEDR81K8LED图1抢答器的硬件系统2显示电路显示电路可由LED或LCD来实现。此处选用LCD方式,由LCD显示器来实现,其亮度好,节能,使用简单方便。3声光电路这里的声音电路是指实现报警的电路,发光电路由发光二极管来实现。4电源电路电源采用市电经整流稳压来获得,其具体电路如图2所示。图2电源电路4抢答器的软件系统本抢答器的软件系统主要包括以下几个部分51主程序主程序的功能主要是完成内部各寄存单元的初始化,对LCD接口电路的初始化,内部定时器的初始化,中断的初始化及调用显示程序对初始状态的显示以及对外部信号的等待处理,也就是说完成前期的准备工作等待随时对外部信号进行响应。2对开始抢答信号的处理当主持人按下开始抢答键后开始抢答,程序时间部分采用定时中断方式进行处理。在中断处理程序中完成相应操作,修改计时单元的数据并使红色指示灯亮。3键盘扫描子程序在程序中采用读端口对键盘进行扫描。键盘扫描程序在确定键值后保存等待后续处理。/按键扫描函数UCHARGET_KEYVOIDUCHARKEY,A0IFREADKEY0/如果读按键不为0,有键按下KEYREADKEY/先保存按键值/DELAY_NMS1/延时消抖IFREADKEYKEY/如果键值相等有效按键AKEYRETURNA4键值处理子程序此子程序根据键盘扫描所取得的键值作出相应处理。在抢答时,只有数字键代表相应抢答分组K1K7按下有效,其它键按下无效并且一旦抢答成功,只有按开始答题键有效,其它键均无效。开始答题键按下给出相应信号指示。在抢答前按下“MAINKEY”键1S后可进行抢答限时时间、答题限时时间值的设置。5显示子程序此程序完成所有数据的动态显示。LCDHV10/LCD1602显示驱动DEFINELCD_EN_PORTPORTB/以下2个要设为同一个口DEFINELCD_EN_DDRDDRBDEFINELCD_RS_PORTPORTB/以下2个要设为同一个口DEFINELCD_RS_DDRDDRBDEFINELCD_DATA_PORTPORTB/以下3个要设为同一个口DEFINELCD_DATA_DDRDDRB/一定要用高4位DEFINELCD_DATA_PINPINBDEFINELCD_RS17|COMMAND/低四位移到高四位LCD_DATA_PORT/清高四位LCD_DATA_PORT|COMMAND/写低四位LCD_EN_WRITEVOIDLCD_WRITE_DATAUNSIGNEDCHARDATA/写数据UNSIGNEDCHARTEMPDATADATA/低四位移到高四位LCD_DATA_PORT/清高四位LCD_DATA_PORT|DATA/写低四位LCD_EN_WRITE8VOIDLCD_SET_XYUNSIGNEDCHARX,UNSIGNEDCHARY/写地址函数UNSIGNEDCHARADDRESSIFY0ADDRESS0X80XELSEADDRESS0XC0XLCD_WRITE_COMMANDADDRESSVOIDLCD_WRITE_STRINGUNSIGNEDCHARX,UNSIGNEDCHARY,UNSIGNEDCHARS/列X015,行Y0,1LCD_SET_XYX,Y/写地址WHILES/写显示字符LCD_WRITE_DATASSVOIDLCD_WRITE_CHARUNSIGNEDCHARX,UNSIGNEDCHARY,UNSIGNEDCHARDATA/列X015,行Y0,1LCD_SET_XYX,Y/写地址LCD_WRITE_DATADATAVOIDDELAY_1USVOID/1US延时函数ASM“NOP“VOIDDELAY_NUSUNSIGNEDINTN/NUS延时函数UNSIGNEDINTI0FORI0IINCLUDEINCLUDE“LCDH“DEFINELEDPORTC/定义LED显示端口DEFINEREADKEYPINA|0X80/定义按键端口DEFINEON_BEEPPORTDELSETCCR1B0X00/停止定时器LCD_WRITE_STRING9,1,“OVER“SOUND160,4/计时到响4长声/定时器T2初始化VOIDTIMER2_INITVOID14TCCR20X00/停止定时器ASSR0X00/异步时钟模式TCNT20X0C/初始值OCR20X0B/匹配值TIMSK|0X40/中断允许/T2溢出中断服务程序PRAGMAINTERRUPT_HANDLERTIMER2_OVF_ISR5VOIDTIMER2_OVF_ISRVOIDTCNT20X0CLED1LM/LED流动闪亮TCOUNTIFTCOUNT0SHOW_KEYKEYTCOUNT4NMIAOLCD_WRITE_STRING12,0,FORMATNMIAO,“00“IFNMIAO0START_FLAG0/清启动标志NMIAO15TCCR20X00/停止定时器LED0X00LCD_WRITE_STRING12,0,“LOST“I0SOUND160,4/计时到响4长声IFFLAG0/正向流动LMIFLM5FLAG1ELSE/反向流动LMIFLM0FLAG0SOUND15,1/响一短声15/按键扫描函数UCHARGET_KEYVOIDUCHARKEY,A0IFREADKEY0/如果读按键不为0,有键按下KEYREADKEY/先保存按键值/DELAY_NMS1/延时消抖IFREADKEYKEY/如果键值相等有效按键AKEYRETURNAVOIDSHOW_KEYUNSIGNEDCHARI/显示键值IKEYSWITCHICASE0X00LCD_WRITE_CHAR2,1,BREAKCASE0X01LCD_WRITE_CHAR2,1,1BREAKCASE0X02LCD_WRITE_CHAR2,1,2BREAKCASE0X04LCD_WRITE_CHAR2,1,3BREAKCASE0X08LCD_WRITE_CHAR2,1,4BREAKCASE0X10LCD_WRITE_CHAR2,1,5BREAKCASE0X20LCD_WRITE_CHAR2,1,6BREAK/DEFAULTLCD_WRITE_STRING2,1,“H“/BREAKVOIDSHOW_ERRUNSIGNEDCHARIIKEYSWITCHI16CASE0X01LCD_WRITE_STRING0,1,“1ERROR“BREAKCASE0X02LCD_WRITE_STRING0,1,“2ERROR“BREAKCASE0X04LCD_WRITE_STRING0,1,“3ERROR“BREAKCASE0X08LCD_WRITE_STRING0,1,“4ERROR“BREAKCASE0X10LCD_WRITE_STRING0,1,“5ERROR“BREAKCASE0X20LCD_WRITE_STRING0,1,“6ERROR“BREAKVOIDINIT_DEVICESVOIDCLI/禁止所有中断MCUCR0X00MCUCSR0X80/禁止JTAGGICR0X00PORT_INITTIMER1_INITTIMER2_INITLCD_INITSEI/开全局中断/主函数VOIDMAINVOIDUCHARAINIT_DEVICES/在这继续添加你的代码LCD_WRITE_STRING0,0,“QIUJIEFUZHIZUO“SOUND150,1/响/DELAY_MS50LCD_WRITE_STRING0,1,“XUEHAO05D2319“DELAY_NMS500LCD_WRITE_COMMAND0X01/清屏DELAY_NMS100LCD_WRITE_STRING0,1,“BRESSK1K6KEY“DELAY_NMS20017LCD_WRITE_COMMAND0X01/清屏DELAY_NMS100LCD_WRITE_STRING0,0,“TESTKEY“DELAY_NMS100DOLEDLEDDELAY_MS50KEYGET_KEYIFKEY0SHOW_KEYKEYSOUND15,1/响一短声WHILEUPKEYLCD_WRITE_STRING0,0,“TESTOVER“DELAY_NMS100LCD_WRITE_COMMAND0X01/清屏DELAY_NMS100LCD_WRITE_STRING0,0,“WAITING“WHILE1KEYGET_KEY/读按键IFMAINKEY/按下开始抢答DELAY_MS10IFMAINKEY/LCD_WRITE_COMMAND0X01/清屏MAIN_KEY1START_FLAG1/启动标志置1DELAY_MS50LCD_WRITE_STRING0,0,“READY“DOKEYGET_KEY/读按键IFKEY0/有键按下LEDLED|0X7FSHOW_ERRKEYSOUND110,2/违规按键响2短声DOWHILEMAINKEY/等待裁判键按下退出DELAY_MS30IFMAINKEY/长按1秒调整倒计时18DELAY_MS1000IFMAINKEYEMIAOEMIAO5IFEMIAO0EMIAO95EEPROMWRITE0X22,EMIAO/写到EEPROMLCD_WRITE_STRING9,1,FORMATEMIAO,“00“EMIAOEEPROMREAD0X22/读EEPROM倒计时IFEMIAO0XFFEMI

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论