欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > DOC文档下载  

    单片机课程设计基于AT89C51单片机的抢答器设计.doc

    • 资源ID:4147557       资源大小:1.74MB        全文页数:21页
    • 资源格式: DOC        下载积分:8金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要8金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    单片机课程设计基于AT89C51单片机的抢答器设计.doc

      电子系单片机课程设计报告   题目:基于AT89C51单片机的抢答器设计   班 级 通信工程*班 指 导 教 师 * 设 计 成 员 * 一课程设计意义抢答器是一种应用非常广泛的设备,对于我们大家来说并不陌生。在各种竞赛、抢答场合中,它能迅速、客观地分辨出最先获得发言权的选手。随着科技的发展,现在的抢答器有着数字化,智能化的方向发展,并且要求操作简单,经济实用。因此,我们小组选择八路抢答器这一课题,利用单片机的功能来实现。在主持人按下开始键后,各位选手通过为其分配的按钮,来进行抢答,最先按键者获得回答权,能够准确、直观地判断出第一抢答者,体现了公平公正的原则。设计中介绍了单片机控制、数码显示八路抢答器的电路组成、设计思路及功能。通过参考文献以及资料的收集,为抢答活动提供了简单设计思路。抢答器的功能涵盖了抢答、计时及犯规组号抢答器具有自锁,复位等功能,操作简单,经济实用。二课程设计任务书1.功能要求基于AT89C511单片机设计制作一个抢答器,主要有如下功能:(1) 可同时供8个代表队参加比赛,编号为0、1、2、3、4、5、6、7,各用一个按钮;(2) 给节目主持人设置一个控制开关,用来控制系统的清零和抢答的开始;(3) 抢答器具有数据锁存功能、显示功能和声音提示功能。抢答开始后,若有选手按动按钮,编号立即锁存,并在LED数码管上显示选手的编号,同时灯亮且伴随声音提示。此外,要封锁输入电路,禁止其他选手抢答,最先抢答选手的编号一直保持到主持人将系统清零。2.设计要求基于AT89C51单片机抢答器由控制核心AT89C51、复位电路、电源电路、蜂鸣器电路、选手按键、主持人按键和数码显示电路等部分组成:(1)熟悉AT89S51单片机系统的使用方法;(2)掌握复位电路工作原理及设计;(3)掌握晶振电路工作原理及设计;(4)蜂鸣器电路的设计;(5)LED数码管的特性及使用;(6)按键电路的设计;(7)初步掌握AT89C51单片机编程方法;(8)初步掌握AT89C51系统的调试方法。指导教师:日 期:三、课程设计进度计划及检查情况记录表序号日期计划完成内容实际完成内容16月13日确定课题,搜集相关资料完成26月14日绘制电路图,完成硬件部分的设计完成36月15日编写软件部分的程序完成46月16日软件部分调试,设计报告整理完成56月17日答辩,完善课程设计报告完成6四、成绩评定与评语 该同学在老师的指导下进行了基于AT89C51单片机的抢答器设计与实现,设计题目有一定工作量,基本涵盖了课程的大部分基础知识。其间调试出过不少意想不到的问题,比如限时器的设计等问题,经过大量资料的查找解决了该困难,培养了独立解决问题的能力。经过该组同学的共同努力,同时,他们在电路设计、控制程序的开发等方面有了长足的进步。 该同学在本设计过程中能够发挥自己的主观能动性,积极地查找资料,设计电路,进行试验调试计。在进行课程设计时,能够比较积极地与老师沟通,在指导教师的指导下能够解决设计中遇到的问题。具有一定的团队组织能力。 从报告所附程序的情况及设计结果来看基本上满足了设计任务书的要求。所撰写的设计报告基本展示了其设计方案,大部分模块介绍的较为清楚,但个别模块介绍不够全面。工作严谨、踏实、有效完成了计划任务。指导教师: 日 期:课程设计的主动性与平时表现(20%)独立思考能力 与动手能力(40%)课程设计 完成情况(40%)课程设计成绩题目:基于AT89C51单片机的抢答器设计一 总体设计方案根据系统的功能与要求,选择AT89C51芯片。设计一个供8名选手参加的八路扫描式抢答器。每组设计一个抢答按钮供参加者使用。电路具有第一抢答信号的鉴别和锁定存储功能。在主持人将系统复位并发出抢答指令后,如果参赛者在第一时间按抢答开关,则按钮指示灯灯亮并用组别电路显示出抢答者的组别。同时扬声器发出声音。电路应具有自锁功能,使其他组不起作用。二设计内容1.MSC-51系列单片机介绍及硬件功能MSC-51系列单片机是英特尔公司于1980年起推出的第二代产品。与8084相比,8051的硬件结构和指令系统均有很大改进,可支持更大的存贮空间,扩充了更多的硬件功能I/O功能,速度提高了2- 5倍,可完成逻辑运算等。近年来推出的一些增强的MSC-51系统单片机,片内还集成了许多特殊功能单元,只需要加一些扩展电路及必要的通道接口即可构成各种计算机应用系统。因MSC-51系统单片机在智能仪表、智能接口、功能模块等领域得到了非常广泛的应用。我们这里用的单片机是MCS51系列的AT89C51作为控制系统,它外接了八个键盘,也就是它可以为八个人同时提供抢答。它的显示系统为两个数码显示管(共阳级接法);另外还有一个扬声器和八个发光二极管作为提示装置。当接通电源时,单片机将会对键盘进行扫描,当有按键按下时,单片机将会向数码显示关发出信号,于是数码显示管将显示按下键盘所对应的显示号(18)。同时,单片机还会将扬声器连接的接口设置为零(低电平),而扬声器的另一端接的是+5v 电压,从而将扬声器接通并发出报警声;单片机还会将按下的按键所对应的发光二极管的接口至低电平,而发光二极管用的是共阳极接法,从而点亮发光二极管。2.硬件电路图(1)抢答器部分电路(2)时序电路部分(3)复位电路部分(4)蜂鸣电路部分(5)电源电路部分3.程序流程图主程序流程图:开始 P1 口 全 置1 关 闭 显 示 个位送40H,十位送FFH 设定中断方式,下降沿有效 开 四 个 中 断 关 提 示 音 十位位码取低电平(即0送到p3.0口) 十位字符码送P0口 延 时 十位位码取高电平(即1送P3.0口) 个位位码取低电平(即0送P3.1口) 个位字符码送P0口 延 时 个位位码取高电平(即1送P3.1口) 延时程序流程图:开始20H送入R449H送R3(R3)1=0?(R4)1=0?返回NNYYINT1中断服务流程图:开始关闭中断30H送R7“0”字符码送R0(个位)“3字符码送R1(十位)T1计数,T0定时80H送TH083H送TH100H送TL1开启T0 T1,中断返回T0中断服务程序流程图:开始P3.4口置1延时两次P3.4口置0返回T1中断服务流程图:(R7)1送入R7开始调用显示程序R7送入A(A)=0?83H送TH1,00H送TL1计数器重置初值启动T1,T0返回关闭T1,T0,中断YN显示程序流程图:开始表的首地址送到DPTR(R7)送A,立即数10H送B秒数分解成十位,个位0AH送A十位值=0?取十位字符码送R1B 送入A取个位字符码送R0返回YN4.系统程序设计在主持人发布抢答命令之前设定抢答的时间,主持人发布抢答命令,按下S9按键后,程序开始打开,定时中断开始倒计时,然后调用键盘扫描子程序,编写键盘扫描程序。当扫描到有人按下了键,马上关闭T0,调用显示程序,并封锁键盘。P1.0-P1.7为八路抢答器的输入端口,数码管断选P0口,位选P2口,蜂鸣器输出为P3.6。主程序:BEEP BIT 00HORG 0000HLJMP MAIN ORG 0003H ;定义四个中断的入口地址 LJMP START0ORG 000BHLJMP START1ORG 0013HLJMP START2ORG 001BHLJMP START3ORG 0030HMAIN : MOV P1, #0FFH ;P1口全置1 SETB P3.0 ;串行输入端置1 SETB P3.1 ;串行输出端置1 CLR BEEP ;清零 MOV R0, #40H ;个位送“0” MOV R1, #0FFH ;十位全灭 MOV IP, #01H MOV IE, #8FHLOOP: CLR P3.6 ;串行输入端清零 MOV P0, R1 LCALL DEL ;延时 SETB P3.0 CLR P3.1 MOV P0, R0 LCALL DEL ;延时 SETB P3.1 ;串行输出端置1 SJMP LOOP延时部分程序:DEL: MOV R4, #20H ;立即数送R4DLY1: MOV R3, #49H ;立即数送R4DLY2: DJNZ R3, DLY2 ;(R3)1不为0,继续 DJNZ R4, DLY1 ;(R4)1不为0,继续 RET ;返回INT0中断服务程序:START0: CLR EA MOV A, P1ML0: CJNE A, #0FEH, ML1 ;1”字符码送P0口 MOV R0, 0F9H CLR P2.0 SJMP ML8ML1: CJNE A, #0FEH, ML2 ;2字符码送P0口 MOV R0, 0A4H CLR P2.1 SJMP ML8ML2: CJNE A, #0FBH, ML3 ;“3字符码送P0 MOV R0, 0B0H CLR P2.2 SJMP ML8ML3: CJNE A, #0F7H, ML4 ;“4字符码送P0 MOV R0, 99H CLR P2.3 SJMP ML8ML4: CJNE A, #0EFH, ML5 ;“5字符码送P0 MOV R0, 92H CLR P2.4 SJMP ML8ML5: CJNE A, #0DFH, ML6 ;“6字符码送P0 MOV R0, 82H CLR P2.5 SJMP ML8ML6: CJNE A, #0BFH, ML7 ;“7字符码送P0 MOV R0, F8H CLR P2.6 SJMP ML8ML7: CJNE A, #7FH, ML8 ;“8”字符码送P0 MOV R0, 80H SJMP ML8ML8: CLR P3.6 ;蜂鸣器响 RETINT1中断服务程序:START1: CLR EA ;关中断 MOV R7, #30 ;立即数30送R7 MOV R0, #0L0H MOV R1, #0B0H MOV TMOD, #42H MOV TH0, #80H ;80H送TH0 MOV TH1, #83H ;83H送TH1 MOV TL1, #00H SETB TR0 SETB TR1 SETB EA RETT0中断服务程序:START2: SETB P3.4 ;定时/计数器0外部信号输入端置1 NOP NOP CLR P3.4T1中断服务程序:STRAT3: DEC R7 ;秒减1 LCALL DISP ;调显示处理程序 MOV A, R7 ; (R7)送累加器A JZ ML10 CJNZ R7, #00H, ML10 MOV TH1, #83H ;将83H送到TH1 MOV TL1, #00H ;将00H送到TL1 SETB TR1 SETB TR0 SETB EA ;开中断 LJMP ML11ML10: CLR P3.6 ;蜂鸣器响 CLR TR0 ;关闭定时器T0 CLR TR1 ;关闭定时器T0 CLR EAML11: RET显示部分程序:DISP: MOV DPTR,#TAB MOV A,R7 ;(R7)送A,立即数10送B MOV B,#10 ;秒数分解成十位,个位 DIV AB CJNZ A,#00H,MLR MOV A,#0AHMLR:MOV A,A+DPTR MOV R0,A ;取个位字符码送R0 RETTAB:DB 00H,0F9H,0A4H,0B0H,99H DB 92H,82H,0F8H,80H,90H,0FFH5.调试与结果软件调试是通过对用户程序的汇编、连接、执行来发现程序中存在的语法错误与逻辑错误并加以排除纠正的过程。程序运行后编辑,查看是否有逻辑的错误。3号选手按抢答器后试验箱显示结果如下图所示:抢答后剩余时间显示如下图所示:三结论、建议及课程设计体会通过资料的收集和查询,我们对程序的流程图有一个基本的结构,结合找到的相关参考资料,以及自己对单片机知识的认识,利用Protel 99进行作图仿真,结合硬件完成了抢答器的设计。本次课程设计综合性比较强,不仅要求我们能够灵活的使用单片机的各种指令,熟练使用单片机设计抢答器,熟练编写顺序结构程序,循环结构程序以及分支结构程序,还要求对单片机的电路连接结构,对数码管管理芯片有明确清晰的了解与认识。从这次课程设计中我学到了很多,比如面对问题要保持冷静,特别是在程序的编写这一块,要找出程序的错误一定要有一个冷静的头脑,否则很难发现错误甚至是越改越错。另外我还认识到与他人合作的重要性,在设计中一个人掌握原理知识是远远不够的,必须让每个人都知道,否则一个人的错误,就有可能导致整个工作失败。尤其是我作为组长,更要有统筹规划,给组员分配好任务,团结协作是我们成功的一项非常重要的保证。并且,不懂的地方还要虚心向其他的同学学习。最后,还要感谢在这次课程设计中周秋茜老师提供的指导和帮助。四参考文献 1 胡汉才.单片机原理与接口技术.北京:清华大学出版社,19982 冯育长.单片机系统设计与实例指导.北京:西安电子科技大学出版社,20073 李光飞.单片机课程设计实例指导.北京:北京航天航空大学出版社,20044 赵辉. Protel 99电子线路CAD.北京:北京邮电大学出版社,2008附录1:完整源程序:BEEP BIT 00HORG 0000HLJMP MAIN ORG 0003H ;定义四个中断的入口地址 LJMP START0ORG 000BHLJMP START1ORG 0013HLJMP START2ORG 001BHLJMP START3ORG 0030HMAIN : MOV P1, #0FH ;P1口全置1 SETB P3.0 ;串行输入端置1 SETB P3.1 ;串行输出端置1 CLR BEEP ;清零 MOV R0, #40H ;个位送“0” MOV R1, #0FFH ;十位全灭 MOV IP, #01H MOV IE, #8FHLOOP: CLR P3.6 ;串行输入端清零 MOV P0, R1 LCALL DEL ;延时 SETB P3.0 CLR P3.1 MOV P0, R0 LCALL DEL ;延时 SETB P3.1 ;串行输出端置1 SJMP LOOPDEL: MOV R4, #20H ;立即数送R4DLY1: MOV R3, #49H ;立即数送R4DLY2: DJNZ R3, DLY2 ;(R3)1不为0,继续 DJNZ R4, DLY1 ;(R4)1不为0,继续 RET ;返回START0: CLR EA MOV A, P1ML0: CJNE A, #0FEH, ML1 ;1”字符码送P0口 MOV R0, 0F9H CLR P2.0 SJMP ML8ML1: CJNE A, #0FEH, ML2 ;2字符码送P0口 MOV R0, 0A4H CLR P2.1 SJMP ML8ML2: CJNE A, #0FBH, ML3 ;“3字符码送P0口 MOV R0, 0B0H CLR P2.2 SJMP ML8ML3: CJNE A, #0F7H, ML4 ;“4字符码送P0口 MOV R0, 99H CLR P2.3 SJMP ML8ML4: CJNE A, #0EFH, ML5 ;“5字符码送P0口 MOV R0, 92H CLR P2.4 SJMP ML8ML5: CJNE A, #0DFH, ML6 ;“6字符码送P0口 MOV R0, 82H CLR P2.5 SJMP ML8ML6: CJNE A, #0BFH, ML7 ;“7字符码送P0口 MOV R0, F8H CLR P2.6 SJMP ML8ML7: CJNE A, #7FH, ML8 ;“8”字符码送P0口 MOV R0, 80HML8: CLR P3.6 ;蜂鸣器响 RET ISTART1: CLR EA ;关中断 MOV R7, #30 ;立即数30送R7 MOV R0, #0L0H MOV R1, #0B0H MOV TMOD, #42H MOV TH0, #80H ;80H送TH0 MOV TH1, #83H ;83H送TH1 MOV TL1, #00H SETB TR0 SETB TR1 SETB EA RET ISTART2: SETB P3.4 ;定时/计数器0外部信号输入端置1 NOP NOP CLR P3.4 RET ISTRAT3: DEC R7 ;秒减1 LCALL DISP ;调显示处理程序 MOV A, R7 ; (R7)送累加器A JZ ML10 CJNZ R7, #00H, ML10 MOV TH1, #83H ;将83H送到TH1 MOV TL1, #00H ;将00H送到TL1 SETB TR1 SETB TR0 SETB EA ;开中断 LJMP ML11ML10: CLR P3.6 ;蜂鸣器响 CLR TR0 ;关闭定时器T0 CLR TR1 ;关闭定时器T0 CLR EAML11: RET IDISP: MOV DPTR,#TAB MOV A,R7 ;(R7)送A,立即数10送B MOV B,#10 ;秒数分解成十位,个位 DIV AB CJNZ A,#00H,MLR MOV A,#0AHMLR: MOV A,A+DPTR MOV R0,A ;取个位字符码送R0 RETTAB: DB 0FFH, 40H, 0FFH, 79H, 0FFH, 24H DB 0FFH, 30H, 0FFH, 19H, 0FFH, 12H DB 0FFH, 02H, 0FFH, 78H, 0FFH, 00H DB 0FFH, 10H, 0F9H, 40H, 0F9H, 79H DB 0F9H, 24H, 0F9H, 30H, 0F9H, 19H DB 0F9H, 12H, 0F9H, 02H, 0F9H, 18H DB 0F9H, 00H, 0F9H, 10H, 0A4H, 40H DB 0A4H, 79H, 0A4H, 24H, 0A4H, 30H DB 0A4H, 19H, 0A4H, 12H, 0A4H, 02H DB 0A4H, 78H, 0A4H, 00H, 0A4H, 10HEND. ;程序结束附录2:整体电路图

    注意事项

    本文(单片机课程设计基于AT89C51单片机的抢答器设计.doc)为本站会员(laozhun)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开