单片机课程设计交通灯_第1页
单片机课程设计交通灯_第2页
单片机课程设计交通灯_第3页
单片机课程设计交通灯_第4页
单片机课程设计交通灯_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

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

文档简介

1、武汉理工大学单片机应用实践课程设计目录1. 概述11.1 设计背景11.2 设计任务12. 系统方案和总体设计22.1 AT89C52单片机简介22.2 AT89C52单片机的硬件结构22.2.1 主要性能参数32.2.2 定时器42.2.3 晶振特性42.3 系统硬件系统设计53. 软件设计82.1 主程序流程图83.2 子程序显示流程图93.3 Ptoteus仿真103.4 实物演示124. 课程设计体会13附录A15本科生课程设计成绩评定表161. 概述1.1 设计背景如今随着人们生活水平的提高,车辆越来越多,交通事故频繁发生。交通信号灯的出现,使交通得以有效管制,对于疏导交通流量,提高

2、道路通行能力,减少交通事故有明显效果。交通灯在城市交通中起着重要的作用,它与人们日常生活密切相关,是人们出行的安全保障。因此提供一个可靠、安全、便捷的多功能交通灯控制系统有着现实的必要性。为了解决这些问题,我们更应该提高交通控制和管理水平,合理使用现有交通设施,充分发挥其能力,提高交通效率,促进和谐交通的建立。近年来随着科技的飞速发展,单片机的应用正在不断地走向深入,同时带动传统控制检测日新月益更新。在实时检测和自动控制的单片机应用系统中,单片机往往是作为一个核心部件来使用,仅单片机方面知识是不够的,还应根据具体硬件结构,以及针对具体应用对象特点的软件结合,加以完善。本系统设计一个基于单片机的

3、交通灯控制系统。能方便的对交通灯进行控制,使交通更和谐。1.2 设计任务设计一个十字路口的红、黄、绿交通灯控制系统,对南北、东西来往的车辆进行控制。232. 系统方案和总体设计2.1 AT89C52单片机简介在众多的单片机系列中,AT89C52是一种低功耗、高性能CMOS8位微控制器,具有8K在系列可编程Flash存储器。使用Atmel公司高密度非易失性存储器技术制造,与工业80C51产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,也适用于常规编程。在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使得AT89C52为众多嵌入式控制应用系统提供高灵活、超高效的解决方案

4、。AT89C52具有以下标准功能:8K字节Flash,256字节RAM,32位I/O口线,3个16位定时器/计数器,一个响亮2级中断结构,全双工串行口,片内晶振及时钟电路。另外,AT89C52可降至0HZ静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。AT89C52单片机为很多嵌入式控制系统提供了一种灵活性高且廉价的方案。故此选用AT89C52单片机。2.2 AT89C52单片机的硬件结构AT89C52单片机的内部结构与MCS-

5、51系列单片机的构成基本相同。CPU是由运算器和控制器所构成的。运算器主要用来对操作数进行算术、逻辑运算和位操作的。控制器是单片机的指挥控制部件,主要任务的识别指令,并根据指令的性质控制单片机各功能部件,从而保证单片机各部分能自动而协调地工作。它的程序存储器为8K字节可重擦写Flash闪速存储器,闪烁存储器允许在线+5V电擦除、电写入或使用编程器对其重复编程。数据存储器比51系列的单片机相比大了许多为256字节RAM。AT89C52单片机的指令系统和引脚功能与MCS-51的完全兼容。图 1 AT89C52单片机的内部结构2.2.1 主要性能参数 8K字节可重擦写Flash闪速存储器,1000次

6、可擦写周期 全静态操作:0Hz-24MHz 三级加密程序存储器 256×8字节内部RAM 32个可编程I/O口线 3个16位定时/计数器 8个中断源 可编程串行UART通道 低功耗空闲和掉电模式图 2 AT89C52引脚图2.2.2 定时器1.定时器0和定时器1在AT89C52中,定时器0和定时器1都是16位加法计数结构,分别由TH0(地址8CH)和TL0(地址8AH)及TH1(地址8DH)和TL1(地址8BH)两个8位计数器组成。这4个计数器均属于专用寄存器之列。每个定时器/计数器都有定时和计数两种功能。2.计数功能所谓的计数功能是指对外部事件进行计数。外部事件的发生以输入脉冲表示

7、,因此计数功能的实质就是对外脉冲进行计数。MCS-51系列的芯片有T0(P3.4)和T1(P3.5)两个信号引脚,分别就是这两个计数器的计数输入端。外部输入的脉冲在负跳变时有效,进行计数器加1。计数方式下,单片机在每个机器周期的S5P2拍节对外部计数脉冲进行采样。如果前一个机器周期采样为高电平,后一个机器周期采样为低电平,即为一个有效计数脉冲。在下一个机器周期的S3P1进行计数。可见采样计数脉冲是在2个机器周期进行的。鉴于此,计数脉冲的频率不能高于振荡脉冲的频率不能高于振荡脉冲频率的1/24。3.定时功能定时器也是通过计数器的计数来实现的,不过此时的计数脉冲来自单片机的内部,即每个机器周期产生

8、一个计数脉冲。也就是每个机器周期计数加1。由于一个机器周期等于12个振荡脉冲周期,因此计数频率为振荡频率的1/12。如果单片机采用12MHz晶体,则计数频率为1MHz。即每微秒计数器加1。这样不但可以根据计数值计算出定时时间,也可以反过来按定时时间的要求计算出计数器的预置值。2.2.3 晶振特性AT89C52单片机有一个用于构成内部振荡器的反相放大器,XTAL1和XTAL2分别是放大器的输入、输出端。石英晶体和陶瓷谐振器都可以用来一起构成自激振荡器。从外部时钟远驱动器件的话,XTAL2可以不接,而从XTAL1接入。由于外部时钟信号经过二分频触发后作为外部时钟电路输入的,所以对外部时钟信号的占空

9、比没有其它要求,最长低电平持续时间和最少高电平持续时间等还是要符合要求的。石英晶振 C1,C2=30PF+-10PF陶瓷谐振器 C1,C2=40PF+-10PF2.3 系统硬件系统设计(1)时钟电路设计图 3 时钟电路如图所示,采用内部时钟产生方式,在XTAL1和XTAL2两端跨接晶体或陶瓷振荡器,与内部反相器构成稳定的自击荡器。其发出的时钟脉冲直接送入片内定时控制部件。(2)复位电路设计如图所示,采用上电+按钮电平复位方式,当按下按钮时,RST管脚高电平触发。为保证复位可靠,RC时间常数应大于两个机器周期。图 4 复位电路(3)灯控制电路设计图 5 灯控制电路如图所示,交通灯状态显示电路由东

10、西南北四个方向各三个LED灯组成,分别显示四个方向上红、黄、绿三个状态,用以指示十字路口各方向车辆的行驶。通过软件编程,可使路口交通变化情况为:南北方向车道和东西方向车道两条交叉道路上的车辆交替运行,绿灯通行时间为25秒,黄灯闪烁5秒,红灯停止30秒。(4)倒计时显示电路图 6 倒计时显示电路由两个共阳数码管来实现倒计时。两个数码管显示变化的绿灯,黄灯的倒计时。3. 软件设计2.1 主程序流程图图 7 主程序流程图用p1口的八个引脚控制交通灯闪烁P1.01.2分别代表东西路口的红黄绿灯P1.31.5分别代表南北路口的红黄绿灯1.开始时东西红灯亮,南北绿灯亮(延时25s)2.然后东西红灯亮,南北

11、黄灯闪烁5次(亮灭一秒)3.然后东西绿灯亮,南北红灯亮(延时25s)4.然后东西黄灯闪烁5次(亮灭一秒)5.返回的第一步继续循环3.2 子程序显示流程图图 8 子程序显示流程图3.3 Ptoteus仿真仿真步骤:(1)根据电路图选择器件连接电路(2)双击AT89S52装入源程序编译生成的HEX文件(3)单击运行按钮运行仿真(4)根据仿真情况与程序实现任务对比,对于不能实现的任务修改并调试程序,重新装载重新运行调试仿真,直到能完全实现所要求的功能为止(5)进一步改进和简化程序在进行调试仿真图 9 25秒倒计时图 10 5秒倒计时结果分析:根据仿真结果,可得知仿真初始为p1.0(即东西向)红灯亮,

12、p1.3(即南北向)绿灯亮,同时进行25秒倒计时;倒计时结束后p1.3(即南北向)黄灯闪烁,并进行5秒倒计时;倒计时结束后p1.0(即东西向)绿灯亮,p1.3(即南北向)红灯亮,并进行25秒倒计时;依次循环;本次课程设计成功。3.4 实物演示图 11 实物演示结果实物结果分析:初始东西向红灯亮,南北向绿灯亮,15秒后南北向黄灯亮一秒,之后东西向绿灯亮,南北向红灯亮,实物设计成功。4. 课程设计体会通过这次单片机课程设计,才深刻体会到自己实际操作能力的匮乏。从刚开始老师对单片机的整体介绍及其应用前景,对单片机产生了浓厚的兴趣,并利用自己的课余时间学习有关单片机的基本知识。但空有理路知识,却无半点

13、的实际操作经验。从电路图的分析到实际电路元件的识别、焊接,再到后期的程序设计以及系统调试,初步掌握了运用单片机系统设计特定功能的设计步骤,也对单片机有了更深的体会。了解和掌握了一些简单的编程思想,对单片机各管脚的功能,I/O口的使用条件都有了更深的理解。特别对protues软件画电路图及仿真的过程,我几乎是从零开始学习并使用的。说到这里,得感谢小组里同学的指导,同时也幸好大家都很繁忙,让我有更多的独立探索学习和思考的空间,将这些东西变成自己的。这次课程设计的任务是通过单片机的I/O口来控制交通灯,主要完成两大项任务,第一就是硬件连接图;第二是编写相应的程序来实现硬件功能。看似简单,实际上需要过

14、硬的知识作为基础,平时看看书考试那样的过程,是难以完成这样的任务的。这次设计过程中,遇到了很多棘手的问题,很多东西,动起手来束手无策,大多都只得先通过查阅资料或者参考别人做类似课题,才能自己动手设计画图,编程调试。过程中还错误不少,就这个程序吧,我写了改,改了写,花了很长时间。还有就是protues软件仿真涉及整个过程,虽然并不太难,但是我是通过这次才真正弄明白的。通过这次课程设计,关于单片机的知识深入了解了更多,但更多是让我知道了知识的欠缺,很多环节,都慢慢翻书或者查找资料才能完成。让我明白,在以后的学习中,应更注重知识的应用,更注重实质的掌握。当然这次课程设计,提高了知识的应用能力和和实践

15、能力,同时提高了独立思考独立完成任务的能力,当然同组之间,遇到了实在没办法解决的问题,也相互的咨询和讨论,加强了大家的合作精神和团结能力。这对以后的学习和工作都有重要意义。这次的课程设计让我把单片机的理论知识运用的实践中,实现了理论与实践的相结合,从中更懂得了理论是实践的基础,实践更能检验理论的真实性,让我受益匪浅。参考文献1 高惠芳单片机原理与应用技术M北京:科学出版社,2010.42 胡汉才单片机原理及其接口技术M北京:清华大学出版社,20043 吴飞青单片机原理与应用实践指导M北京:机械工业出版社,2009.24 李群芳,肖看单片微型计算机与接口技术M北京:电子工业出版社,20125 谭

16、浩强.单片机课程设计M北京:清华大学出版社,1989附录AORG 0000HAJMP STATE1ORG 0030HSTATE1:MOV P1,#11011110B ;东西向红灯亮,南北向绿灯亮 MOV R7,#25 ;延时显示25秒 ACALL DISPSTATE2:SETB P1.5 ;南北向黄灯闪烁 MOV R7,#05 ;延时显示5秒 ACALL DISP1STATE3:MOV P1,#11110011B ;东西向绿灯亮,南北向红灯亮 MOV R7,#25 ;延时显示25秒 ACALL DISP STATE4: SETB P1.2 ;东西向黄灯闪烁 MOV R7,#05 ;延时显示5秒

17、 ACALL DISP1 LJMP STATE1DISP: MOV 40H,R7 ;第一、三步延时显示NEXT: MOV A,40H MOV B,#10 DIV AB MOV DPTR,#TABLE MOVC A,A+DPTR MOV P0,A MOV A,B MOVC A,A+DPTR MOV P2,A ACALL DELAY1s DEC 40H MOV A,40H CJNE A,#00,NEXTDELAY1s:MOV R3,#10 MOV TMOD,#01HLOOP:MOV TH0,#3CH MOV TL0,#0B0H SETB TR0LOOP1:JBC TF0,LOOP2 SJMP LO

18、OP1LOOP2:CLR TR0 DJNZ R3,LOOP RETDISP1: MOV 40H,R7 ;第二步延时显示NEXT1: MOV A,40H MOV B,#10 DIV AB MOV DPTR,#TABLE MOVC A,A+DPTR MOV P0,A MOV A,B MOVC A,A+DPTR MOV P2,A CLR P1.4 LCALL DELAYbs SETB P1.4 LCALL DELAYbs DEC 40H MOV A,40H CJNE A,#00,NEXT1DELAYbs:MOV R3,#5 MOV TMOD,#01HLOOP0:MOV TH0,#3CH MOV TL0,#0B0H SETB TR0LOOP10:JBC TF0,LOOP2 SJMP LOOP1DISP2: MOV 40H,R7 ;第四步延时显示程序NEXT2: MOV A,40H MOV B,#10 DIV AB MOV DPTR,#TABLE MOVC A,A+DPTR MOV P0,A MOV A,B MOVC A,A+DPTR MOV P2,A CLR P1.1 LCALL DELAYbs SETB P1.1 LC

温馨提示

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

最新文档

评论

0/150

提交评论