控制灯移动张顺地_第1页
控制灯移动张顺地_第2页
控制灯移动张顺地_第3页
控制灯移动张顺地_第4页
控制灯移动张顺地_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

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

文档简介

1、课程设计 说 明 书课程名称:单片机技术设计题目:多级外部中断控制灯移动 院(部):电子信息与电气工程学院学生姓名:张顺地 学 号: 201002030051专业班级: 通信工程2010级指导教师:范秋凤2013年 5 月 16 日课程设计任务书设计题目多级外部中断控制灯移动学生姓名张顺地所在院部电子信息与电气工程学院专业、年级、班通信工程2010级设计要求: 1、利用多级外部中断控制灯的移动 2、具有电源开关及指示灯,有复位按键 3、单片机P1端口接8只LED灯,复位后,8只灯闪烁 4、按下外部中断开关(外部中断输入信号)K1后,8只灯中的一个灯左右移动三次,之后恢复 闪烁;按下外部中断开关

2、K2(外部中断输入信号)后,8只灯中的两只左右移动四次,之后 恢复闪烁 5、注意多级中断的优先级,例如:若K2高优先级,K1低优先级。则,当按下K1使一只灯左 右移动过程中按下K2,立即开始两只灯移动,然后再继续没有完成的一只灯移动次数;若先 按下K2,在两只灯左右移动过程中按下K1,不会影响到两只灯的移动,直到完成规定的次数 学生应完成的工作: 1、认真理解课程设计书所要求的工作2、查找并收集相关书籍资料,并根据要求确定设计方案3、用DXP软件画出硬件原理图和用PROTEUS软件画出硬件连接图并仿真4、编写相应的程序,并烧录程序5、焊接电路板及调试,作出相应的修改 6、完成课程设计报告参考文

3、献阅读:1 张毅刚. 单片机原理及应用.北京:高等教育出版社,2010.52 杜尚丰. CAN总线测控技术及其应用.北京:电子工业出版社,2007.13 杜树春.单片机C语言和汇编语言混合编程实例详解.北京:北京航空航天大学出版社,2006.6工作计划: 5月6日 学习课程设计的基本要求和注意事项,查找相应的资料并确定设计方案 5月7. 8 日 确定硬件设计方案并绘制其设计图 5月9.10日 编写相应程序并在仿真软件上进行仿真 5月13日 领取元器件 5月14日 焊接电路板 5月15日 写入程序并验证 5月16日 完善设计的产品并书写课程设计报告 5月17日 交产品和课程设计报告任务下达日期:

4、2013 年5月 6 日 任务完成日期:2013 年5月 17 日指导教师(签名): 学生(签名): 多级外部中断控制灯移动摘 要:本课程设计是用单片机AT89S52、桥堆2W10、7805、晶振、发光二极管等元器件设计一个多级外部中断控制灯移动的系统。外部电路主要包括:电源电路、复位电路、时钟电路、二级外部中断电路以及发光二极管显示几个部分。本次课程设计是用汇编语言进行程序的汇编,然后将编好的程序转换成十六进制的程序写入PROTEUS软件并进行仿真,实现用两个外部中断控制实现八个发光二极管的闪烁和有规律的左右移动。该系统的两个外部中断有优先级区别,使灯在移动中不会出现混乱,并且能方便地调整灯

5、左右的移动,进行实时控制,具有广泛的实用价值。关键词:AT89S52;单片机;中断;优先级;汇编程序目 录1.设计背景11.1应用背景11.2依据背景12.设计方案12.1方案112.2方案212.3方案比较23. 方案实施23.1系统构成23.2硬件设计23.3软件设计53.4 系统仿真74. 结果与结论84.1系统测试结果84.2各部分浅析95. 收获与致谢96. 参考文献107. 附件101.设计背景1.1应用背景由于单片机具有集成度高、处理功能强、可靠性高、系统结构简单、价格低廉、易于使用等优点,在世界范围内已经得到广泛普及和应用。目前在工业控制、智能仪器仪表、家用电器、测控等领域,都

6、可以看到单片机的踪影。在我国,单片机的开发和使用技术发展迅速。近年来,单片机成为全国各高校相关专业的重要课程。实习是学以致用的重要途径之一。1.2依据背景中断可提高CPU的效率,可实现实时处理,满足实时控制要求。中断功能可及时处理故障,提高单片机的可靠性。单片机的中断系统能够实时的响应片内功能部件和外围设备发出的中断请求并及时进入中断服务子程序进行处理。2.设计方案2.1方案1本课程设计采用AT89S52单片机,P1口接8个发光二极管,12()、13()引脚接两只开关作为外部中断源,18(XTAL2)、19(XTAL1)引脚接时钟脉冲,30(/Vpp)接高电平单片机读取片内程序程序存储器中的程

7、序,此为硬件设计。软件部分采用汇编语言编程,在主程序中调用中断程序、循环程序和延时程序的嵌套。2.2方案2该方案的硬件部分与方案1相同,软件部分采用C语言进行编写。2.3方案比较采用汇编语言编程占用资源少,而且执行效率高,思路清晰,但是程序较繁琐。采用C语言编程程序较简短一些,但是编写比较难理解,占用资源多,中断优先级容易设置,方案一和方案二都能够达到实验要求。在两种编程语言对比后,结合自己的知识掌握情况,本设计决定采用方案一,使用汇编语言编程。3. 方案实施3.1系统构成本设计以AT89S52单片机为中心,外围电路有电源电路、时钟电路、复位电路、二级外部中断电路以及发光二极管显示电路五个部分

8、,原理图如附件7.1。3.2硬件设计各部分电路组成如下:电源电路桥堆是整流电路中常见的器件,它实际上就是将4只整流二极管封装在一起。桥堆有4根引脚,从它的内电路中可以看出,四只二极管构成桥式电路。7805三端稳压器件是最常用的线性降压型DC/DC转换器,内含过流和过载保护电路。用桥堆2W10和7805以及电容电阻与外界变压器相连为复位电路、二极管显示电路、中断电路和30引脚/Vpp提供+5伏电压。电源电路开关控制电源,发光二极管为电源指示灯,电源电路如图3.1所示,图3.1电源电路复位电路复位电路的基本功能是:系统上电时提供复位信号直至系统稳定后,撤销复位信号,在初始化程序中应安排一定的复位延

9、迟时间用来系统可靠复位。本设计采用了按键手动电平复位,复位电路左端引线接电源,右端引线接AT89S52的RST接口。其工作原理:VCC上电时,电容充电并且在10K电阻上出现电压使单片机复位;几个毫秒后,电容充满,电阻上电流降为0,电压也为0,使单片机进入工作状态。工作期间,按下按键,电容放电。松手,电容又充电,在2K电阻上出现电压,使得单片机复位。几个毫秒后,单片机进入工作状态。本实验中,当发光二极管在有规律性闪烁时。按下开关S1,就可以恢复到8个发光二极管闪烁,复位电路如图3.2所示,图3.2 复位电路中断电路AT89S52单片机的外部中断和为低电平有效,在按下按键K1或K2时,外部中断接收

10、低电平,发出中断请求,此时发光二极管按照程序循环闪烁。K2的优先级高于K1,中断电路如图3.3所示,图3.3中断电路时钟电路AT89S52单片机内部有一个用于构成振荡器的高增益反相放大器,该高增益反相放大器的输入端为芯片引脚19(XTAL1),输入端为引脚18(XTAL2),这两个引脚跨接石英晶体振荡器和微调电容,构成一个稳定的自激振荡器,为单片机提供时钟脉冲,晶振Y1采用11.05926MHz,属于内部时钟电路。根据书中所述及计算确定两个电容的值,C1、C2的值为30PF,时钟电路如图3.4所示,图3.4 时钟电路二极管显示电路AT89S52有四个双向8位并行I/O口,分别记作P0-P3。在

11、此设计中,P1口作为输出口使用,外电路无需接上拉电阻。八只二极管接到AT89S52的P1端口,在外部电平的驱动下,在程序的执行下,这8只二极管按照要求发光,每个发光二极管都要串联一个适当的限流电阻作为保护措施 ,二极管显示电路如图3.5所示,图3.5显示电路3.3软件设计本次课程设计采用汇编语言编程,在主程序中,先把累加器赋初值0FEH,可以点亮第一个灯。初始化后要进行累加器的取反,主程序调用中断子程序,此程序的主要部分是两个中断子程序和延时程序。中断要先设置优先级,在设计中我们将K1接作为低级中断,让一个工作寄存器循环向右移动一位,在执行三次循环之后返回,K2接作为高级中断,让相邻两个寄存器

12、依次向右移动两位,在执行四个循环后返回。两个中断子程序均要嵌套调用一个延时程序。在写完程序之后,要使用KEIL软件进行编译,程序主流程图如图3.6、子流程图如图3.7所示,判断有无按键按下YN开始当K1有键按下时调用0号中断循环程序当K2有键按下时调用1号中断循环程序8只灯闪烁设置优先级,的优先级高于初始化图3.6 主程序流程图中断0赋初值循环左移1次八次到?三次到?循环右移1次八次到?NNYYYN返 回中断1赋初值循环左移2次四次到?四次到?循环右移2次四次到?返 回NNNYYY图3.7子程序流程图3.4 系统仿真软件调试主要是利用proteus仿真软件完成电路的搭建,然后将编好的汇编语言程

13、序在keil程序转换软件上转换为十六进制的程序,再将其烧制进AT89S51芯片中,最后进行仿真,将仿真时发现设计中的错误及时改正,同时用keil软件对源程序进行修改,直到仿真结果与设计的一致为止,仿真图如图3.8所示,图3.8系统仿真图4. 结果与结论4.1系统测试结果变压器一边接入220V电源,开启总开关,指示灯亮,此时8只灯处于闪烁状态,按下K1,一只灯左右移三次,完成后闪烁;按下K2,两只灯左右移四次,完成后闪烁;按下K1使一只灯左右移过程中按下K2,立即开始两只灯左右移,完成后再继续完成没有完成的一只灯的移动,最后8灯恢复闪烁。反之先按K2,灯移动没完成时按下K1则并不影响其移动,直至

14、完成规定次数。系统功能良好,按照程序设计的要求正常工作,LED灯完成显示中断和移动过程。该设计实现了外部中断对灯移动的控制,在许多LED显示中都有应用。在实际的产品中,程序和电路更加复杂,显示功能也更加强大。若是对该系统加以修整,可以制作电子显示屏、流水灯等,应用前景很广泛。4.2各部分浅析硬件部分主要注重各个模块与单片机的位置协调,尽可能少的产生交叉线,各模块间距适中,各模块的电路在实现功能的情况下尽量减少元器件的使用,使整个硬件系统尽量简单,这样看起来简洁易懂。设计软件时我选择用汇编语言进行程序编写,汇编语言占用资源少,思路清晰,执行效率高,但是也有缺点,其程序比较繁琐,可能是我的设计水平

15、有限,在中断子程序里如果适当改变一下使灯移动地快一点就更好了。在仿真软件上画仿真图时要尽量保持与原理图一致,这样便于观察和连接。在制板子的时候,由于我们用的是万用板,因此各个模块的谋篇布局很重要,这关乎到板子的简洁美观,当然作为我们用万能板做东西的次数不多,因此设计的板子还是有点不尽如人意。在焊接时,可以将元器件的引脚作为导线的一部分,这样就减少了跳线的使用,在板子的边缘有一圈铜线,可以作为地线使用。注意在时钟电路里晶振和电容要尽量贴近单片机布局,以尽量减少寄生电容,更好保证振荡器稳定,可靠工作。5. 收获与致谢通过此次课程设计,我更加深刻的理解了AT89S52单片机的相关知识。电源电路、中断

16、电路、时钟电路等的构成及其它们之间如何连接与工作。我在此次课程设计中主要负责单片机程序的编写,在用汇编语言编写程序时我查阅与参考了大量资料,然后画流程图、编程序,最后编出了并不完美的程序,并对汇编语言有了大概的了解。焊接电路时需要足够的耐心和细心,稍有疏忽就可能导致整个电路无法正常工作,我们经过多次调试电路查找错误,最后终于完成了本次设计课题,我们的电路可以正常工作。这两周的单片机课程设计实习很快要结束了,在这个过程中我深刻的认识到了自己的不足,也获得了很多难得的经验和知识。在本课程设计即将完成之际,我要对所有支持和帮助我的老师和同学表示衷心的感谢。我要特别感谢我的指导老师范老师,在这次课程设

17、计中,由于我们经验的匮乏,有许多想不到的地方,如果没有范老师的督促指导,想要完成这个设计是比较难的。当然,我还要感谢我的团队,是我们团队的合作才有了现在的结果,谢谢!6. 参考文献1 张毅刚. 单片机原理及应用.北京:高等教育出版社,20102 杜尚丰.CAN总线测控技术及其应用.北京:电子工业出版社,20073 杜树春.单片机C语言和汇编语言混合编程实例详解.北京:北京航空航天大学出版社,20064 张毅刚. 单片机原理及应用设计.北京:高等教育出版社,20085 张毅刚. 新编MCS-51单片机应用设计.哈尔滨:哈尔滨工业大学出版社,20037. 附件7.1 原理图如下:7.2 程序如下:

18、ORG 00HJMP MAINORG 0003HJMP TIN0ORG 0013HJMP TIN1ORG 0030HMAIN: MOV A,#0FFH MOV P1,A SETB IT0 SETB IT1 SETB EX1 SETB EX0 SETB PX1 SETB EAHERE: CPL A MOV P1,A CALL DELAY SJMP HERETIN0: PUSH ACC ;中断0入口 PUSH PSW MOV A,#0FEH ;初始化 MOV R2,#08H MOV R4,#03HLOOP1: MOV P1,A ;单灯左移四次 RL A CALL DELAY DJNZ R2,LOOP1 MOV R2,#08H LOOP2: RR A ;单灯右移四次 MOV P1,A CALL DELAY DJNZ R2,LOOP2 MOV R2,#08H DJNZ R4,LOOP1 ;循环三次 MOV R4,#03H POP PSW POP ACC RETITIN1: PUSH A

温馨提示

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

最新文档

评论

0/150

提交评论