ImageVerifierCode 换一换
格式:DOCX , 页数:23 ,大小:207.50KB ,
资源ID:8313517      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/8313517.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(单片机课程设计报告交通灯.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

单片机课程设计报告交通灯.docx

1、单片机课程设计报告交通灯专 业:电气自动化专业学 号:姓 名:指导教师:时 间:2010年5月30日7月10日摘要在日常生活中,交通信号灯的使用,使交通得以有效管理,对于疏导交通流量、提高道路通行能力,减少交通事故有明显效果。交通灯控制系统由89C51单片机、键盘、LED显示、交通灯延时组成。系统除具有基本交通灯功能外,还具有时间设置、LED信息显示功能,使交通实现有效控制。本系统采用单片机AT89C51为中心器件来设计交通灯控制器,系统实用性强、操作简单、扩展性强。本设计就是采用单片机模拟十字路口交通灯的各种状态显示以及倒计时时间。本设计系统由单片机I/O口扩展系统、交通灯状态显示系统、LE

2、D数码显示系统、紧急情况中断系统、复位电路等几大部分组成。系统除基本的交通灯功能外,还具有倒计时、紧急情况处理等功能,较好的模拟实现了十字路口可能出现的状况。软件上采用89C51编程,主要编写了主程序,LED数码管显示程序,中断程序延时程序等。经过整机调试,实现了对十字路口交通灯的模拟。近年来随着科技的飞速发展,单片机的应用正在不断深入,同时带动传统控制检测技术日益更新。在实时检测和自动控制的单片机应用系统中,单片机往往作为一个核心部件来使用,仅单片机方面知识是不够的,还应根据具体硬件结构软硬件结合,加以完善。关键字:AT89C51 74LS164 LED 交通灯 程序目录一设计的目的和意义

3、1二设计的任务及步骤 1三内容要求 1四总方案设计 24.1 设计思路 24.2总体设计框图 34.3硬件设计 3五电路模块分析 55.1 LED循环说明 55. 2 倒计时显示电路 75.4急通车电路 9六 软件设计 96.1 程序流程图 96.2 LED红绿灯显示 116.3 倒计时显示 116.4 急通车控制 11七调试 11八总结 12附录一 13附录二 19九参考文献 20一设计的目的和意义训练正确的应用单片机,培养解决工业控制,工业检测等。二设计的任务及步骤十字路口的交通指挥信号灯控制要求如下:(1)信号灯受一个起动开关控制,当起动开关接通时,信号系统开始工作,且先南北红灯亮,东西

4、绿灯亮。当起动开关断开时,所有信号灯都熄灭。(2)南北绿灯和东西绿灯不能同时亮,如果同时亮时,应关闭信号灯系统,并报警。(3)南北红灯亮维持25S,在南北红灯亮的同时东西绿灯也亮,并维持20S。到20S时,东西绿灯闪烁,闪烁3S后熄灭。在东西绿灯熄灭时,东西红灯亮,并维持2S,到2S时东西黄灯熄灭,东西红灯亮。同时南北红灯熄灭,南北绿灯亮。(4)东西红灯亮维持30S,南北绿灯亮维持25S,然后闪烁3S,熄灭。同时南北黄灯亮,维持2S后熄灭,这是南北红灯亮,东西绿灯亮。(5)周而复始。三内容要求设计论文内容要正确,概念要清楚,完成任务书所规定的内容;附原理图及程序流程图,以及程序清单;文字要通顺

5、,书写要工整,设计图纸必须符合规范。在日常生活中,交通信号灯的使用,使交通得以有效管理,对于疏导交通流量、提高道路通行能力,减少交通事故有明显效果。如下图为十字路口的交通灯分布示意图。交通灯控制系统由89C51单片机、键盘、LED显示、交通灯延时组成。系统除具有基本交通灯功能外,还具有时间设置、LED信息显示功能,使交通实现有效控制。关键词:AT89C51 74LS164 LED 交通灯 程序。四总方案设计4.1 设计思路利用单片机实现交通灯的控制,该任务分以下几个方面:a 实现红、绿、黄灯的循环控制。要实现此功能需要表示三种不同颜色的LED灯分别接在P1个管脚,用软件实现。b 用数码管显示倒

6、计时。可以利用动态显示或静态显示,串行并出或者并行并出实现。C 实现急通车。这需要人工实现,编程时利用到中断才能带到目的,只要有按钮按下,那么四个方向全部显示红灯,禁止以诶车辆通行。当情况解除,让时间回到只能隔断处继续进行。4.2总体设计框图 见图一:4.3硬件设计89C51单片机的概述(1) MCS-51单片机内部结构: 图二为89C51单片机功能结构框图 89C51芯片内部集成了CPU、RAM、ROM定时/计数器和I/O口等各功能部件,并由内部总线把这些部件连接在一起。80C51单片机内部包含以下一些功能部件:a.一个8位CPU;b.一个片内振荡器和时钟电路;c.4KB ROM(80C51

7、有4KB掩膜ROM,87C51有4KB EPROM,80C31片内无ROM);d.128KBRAM;e.可寻址64KB的外ROM和外RAM控制电路;f.两个16位定时/计数器;g.21个特许功能寄存器;h.4个8位并行I/O口,共32条可编程I/O端线;i.一个可编程全双工串行口;j.5个中断源,可设置成2个优先级。 图二(89C51单片机功能结构框图)(2)MCS-51系统的引脚说明: MCS-51系列单片机中的8031、8051及8751均采用40Pin封装的双列直接DIP结构,图二是它们的引脚配置,40个引脚中,正电源和底线两根,外置石英振荡器的时钟线两根,4组8位共32个I/O口,中断

8、口线与P3口线复用。 图二(89C51引脚图) 89C51的复位方式可以自动复位,也可以是手动复位,见下图。除此之外,RESET/Vpd还是一复用脚,Vcc掉电其间,此脚可以接上没用电源,以保证单片机内部RAM的数据不丢失。 在编程时,EA/Vpp脚还需加上21V的编程电压。五电路模块分析5.1 LED循环说明 东西、南北两干道交于一个十字路口,各干道有一组红、绿、黄三色的指示灯,指挥车辆和行人的安丘按通行。红灯禁止通行,绿灯亮允许通行。黄灯亮提示人们注意红、绿灯的状态即将切换,且黄灯燃亮时间为东西,南北两干道的公共停车时间。25s3s2s25s3s2s东西通道红灯亮红灯亮红灯亮绿灯亮绿灯闪黄

9、灯亮南北通道绿灯亮绿灯闪黄灯亮红灯亮红灯亮红灯亮 上表说明东西路口哈珀能够灯亮,南北路口绿灯亮,同时开始25s倒计时。25s倒计时结束后开始5s倒计时,南北铝扣绿灯闪烁,计时至最后2s时,南北路口黄灯亮。完成一次这样的循环要30s。30s结束,南北路口红灯亮,东西路口绿灯亮,并重新30s倒计时,依次循环。电路图如图三所示。 图三(LED红绿灯显示)5. 2 倒计时显示电路(1)74LS164芯片 74LS164用于扩展并行输出口。用89CS51串行口外接164串入-并出移位寄存器扩展8位并行口。8位并行口的每位分别接到数码显示管的不同显示端。74LS164芯片管脚排列如下图,管脚1、2相连共同

10、接单片机管脚RXD,8管脚接单片机管脚TXD,9管脚接高电平,7管脚接地,14管脚接高电平,其他管脚依次接数码显示管管脚。图四(74LS164)(2)共阴极数码显示管这里列出了共阴和共阳数码管的管脚平排列和内部结构。数码管3、8管脚内部连在一起。如果是共阳极则将其接到高电平。如果是共阴极则将其接地。为了数码显示管的安全这里用三个二极管与其串联来降压。 图五(数码显示管)(3)倒计时显示电路如图六。利用两个74LS164芯片并联后,其1、2管脚至单片机RXD管脚8管脚至单片机TXD管脚。然后其他管脚依次接至数码管个管脚。对于数码管其3、8管脚经过三个串联的二极管接地。 图六(倒计时电路)5.4急

11、通车电路 利用单片机中断达到目的。利用一个手动按钮开关接至单片机外部中断0,同时在软件设计时将其设为最高优先级。当有按键按下,四方全为红灯,同时将终端位置的PSW、ACC进栈保护。当再按下按钮,将PSW、ACC出栈,回到原来的位置继续执行,电路图如下图。 图七(急通车电路)六 软件设计 6.1 程序流程图如图八所示。 图八(流程图) 6.2 LED红绿灯显示如图三所示,当P1端口输出高电平,即P1各端口=1时,根据发光二极管的单向导电性可知,这是发光二极管熄灭;当P1个端口输出低电平,即P1各端口=0时,发光二极管亮。我们可以使用SETB指令使P1各端口输出高电平,使用CLR指令时P各端口输出

12、低电平。至于循环需要软件控制,程序见附录。6.3 倒计时显示 此处采用LED静态显示方式,当显示器显示某个字符时,相应的段恒定的导通或截止,直到显示另个字符为止。89C51的串行口RXD和TXD为一个全双工串行通信口,但工作在方式0下可作同步移位寄存器,其数据由RXD端串行输出或输入;而同步移位时钟由TXD端串行输出,在同步时钟的作用下,实现由串行到并行的数据通信。在不需要使用串行通信的场合,利用串行口加外围芯片74LS164就可构成一个或多个并行输入输出口,用于串并转换或显示器LED驱动。此利用后者。6.4 急通车控制 将一按钮接到单片机外部中断0端口。另一端接地,通过在程序里设置外部中断0

13、为最高优先级。当检测到有按钮按下时,产生中断,停止刚才的程序,转向中断执行。在此过程必须利用PUSH、POP指令保护现场,这样当情况解除可以回到原来的地方继续执行。七调试我们拿着设计好的电路接线图和设计的程序去实验室调试,第一次就给了我们致命的打击,设计的功能仅仅实现了一个,只有红绿灯变化正常,倒计时也显示不出来,紧急停车也不能很好的返回。八总结做了几周的课程设计,让人感受颇深,有关于单片机知识的,但更多是团队和合作。我们小组一共6个人,人多,分工就显得很重要,在我们的集体的讨论之下,我得到了设计硬件电路和总体调试的任务,当时让我感到很有压力。因为我们平时接触的都是纯粹理论的东西,做实验也是雾

14、里看花,对硬件的认识是很缺乏的。一回来我就去图书馆查阅的大量的单片机和数字芯片的资料,由于资料比较分散,所以整理有用的资料就显得很重要,有些东西实在是不懂我就把资料带回来请教同学,让我受益匪浅。然后在硬件电路的设计中,由于要涉及软件设计的具体情况,又和组员共同讨论,最终确定了一个大家都可以接受的方案。当时感觉这下任务该完成了,没有想到的是在实际的调试中更是遇到了太多的麻烦。我们拿着设计好的电路接线图和设计的程序去实验室调试,第一次就给了我们致命的打击,设计的功能仅仅实现了一个,只有红绿灯变化正常,倒计时也显示不出来,紧急功能也不能很好的返回。虽然我们没有完全成功,但是我们已经努力了,所以我们很

15、高兴。很感谢学校和老师给我们安排了这次课程设计,让我真正感受到的是合作的重要,许多时候都是组员的讨论,老师的指导中的一句半句启发了我,就出现的让人欣喜的结果;理论知识同样很重要,有些问题都是由于基础知识掌握不好才出现的。课程设计是培养学生综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程.随着科学技术发展的日新日异,单片机已经成为当今计算机应用中空前活跃的领域, 在生活中可以说得是无处不在。因此作为二十一世纪的大学来说掌握单片机的开发技术是十分重要的。附录一 源程序代码 SECOND1 EQU 30H ;东西路口计时寄存器 SEC

16、OND2 EQU 31H ;南北路口计时寄存器 DBUF EQU 40H ;显示码缓冲1 TEMP EQU 44H ;显示码缓冲2 LED_G1 BIT P1.0 ;东西路口绿灯 LED_Y1 BIT P1.1 ;东西路口黄灯 LED_R1 BIT P1.2 ;东西路口红灯 LED_G2 BIT P1.5 ;南北路口绿灯 LED_Y2 BIT P1.6 ;南北路口黄灯 LED_R2 BIT P1.7 ;南北路口红灯 ORG 0000H LJMP START ORG 0003H LJMP INTO0 ORG 0100HSTART:MOV TMOD,#01H ;置T0工作方式1 MOV TH0,#

17、3CH MOV TL0,#0BH CLR TF0 SETB TR0 ;启动T0 SETB EX0SETB PX0 ;设置外中断0高优先级SETB EALOOP: MOV R2,#20 ;置1s计数初值 MOV R3,#20 ;红灯亮20S MOV SECOND1,#25 ;东西路口计时显示初值25s MOV SECOND2,#25 ;南北路口计时显示初值25s LCALL DISPLAY LCALL STATE1 ;调用状态1WAIT1:JNB TF0,WAIT1 ;查询50ms到否 CLR TF0 MOV TH0,#3CH ;恢复T0定时初值50ms MOV TL0,#0B0H DJNZ R

18、2,WAIT1 ;判断1s到否?未到继续状态1 MOV R2,#20 ;置50ms计数初值 DEC SECOND1 ;东西路口显示时间减1 DEC SECOND2 ;南北路口显示时间减1 LCALL DISPLAY DJNZ R3,WAIT1 ;状态1维持20s MOV R2,#5 ;置50ms计数初值 MOV R3,#3 ;绿灯闪烁3s MOV R4,#4 ;闪烁间隔200ms MOV SECOND1,#5 ;东西路口计时显示初值5s MOV SECOND2,#5 ;南北路口计时显示初值5s LCALL DISPLAYWAIT2:LCALL STATE2 ;调用状态2 JNB TF0,WAI

19、T2 ;查询50ms到否 CLR TF0 MOV TH0,#3CH ;恢复T0定时初值50ms MOV TL0,#0B0H DJNZ R4,WAIT2 ;判断200ms到否?未到继续状态2 CPL LED_G1 ;东西绿灯闪烁 MOV R4,#4 ;闪烁200ms DJNZ R2,WAIT2 ;判断1s到否?未到继续状态2 MOV R2,#5 ;置50ma计数初值 DEC SECOND1 ;东西路口显示时间减1 DEC SECOND2 ;南北路口显示时间减1 LCALL DISPLAYDJNZ R3,WAIT2 ;状态2维持3sMOV R2,#20 ;置50ms计数初值MOV R3,#2 ;黄

20、灯闪烁2sMOV SECOND1,#2 ;东西路口计时显示初值2sMOV SECOND2,#2 ;南北路口计时显示初值2sLCALL DISPLAY WAIT3:LCALL STATE3 ;调用状态3 JNB TF0,WAIT3 ;查询100ms到否 CLR TF0 MOV TH0,#3CH ;恢复T0定时初值100ms MOV TL0,#0B0H DJNZ R2,WAIT3 ;判断1s到否?未到继续状态3 MOV R2,#20 ;置100ms计数初值 DEC SECOND1 ;东西路口显示时间减1 DEC SECOND2 ;南北路口显示时间减1 LCALL DISPLAY DJNZ R3,W

21、AIT3 ;状态3维持2s MOV R2,#20 ;置50ms计数初值 MOV R3,#20 ;红灯闪烁20s MOV SECOND1,#25 ;东西路口计时显示初值25s MOV SECOND2,#25 ;南北路口计时显示初值25s LCALL DISPLAYWAIT4:LCALL STATE4 ;调用状态4 JNB TF0,WAIT4 ;查询100ms到否 CLR TF0 MOV TH0,#3CH ;恢复T0定时初值100ms MOV TL0,#0B0H DJNZ R2,WAIT4 ;判断1s到否?未到继续状态4 MOV R2,#20 ;置100ms计数初值 DEC SECOND1 ;东西

22、路口显示时间减1 DEC SECOND2 ;南北路口显示时间减1 LCALL DISPLAY DJNZ R3,WAIT4 ;状态4维持2s MOV R2,#5 ;置50ms计数初值 MOV R3,#4 ;红灯闪烁20s MOV R3,#3 ;绿灯闪烁3s MOV SECOND1,#25 ;东西路口计时显示初值5s MOV SECOND2,#25 ;南北路口计时显示初值25s LCALL DISPLAYWAIT5:LCALL STATE5 ;调用状态5 JNB TF0,WAIT5 ;查询100ms到否 CLR TF0 MOV TH0,#3CH ;恢复T0定时初值100ms MOV TL0,#0B

23、0H DJNZ R4,WAIT5 ;判断200ms到否?未到继续状态5 CPL LED_G2 ;南北绿灯闪烁 MOV R4,#4 ;闪烁200ms DJNZ R2,WAIT5 ;判断1s到否?未到继续状态5 MOV R2,#5 ;置100ms计数初值 DEC SECOND1 ; 东西路口显示时间减1 DEC SECOND2 ;南北路口显示时间减1 LCALL DISPLAY DJNZ R3,WAIT5 ;状态5维持3s MOV R2,#20 ;置50ms计数初值 MOV R3,#20 ;红灯闪烁2s MOV SECOND1,#25 ;东西路口计时显示初值5s MOV SECOND2,#25 ;

24、南北路口计时显示初值5s LCALL DISPLAYWAIT6:LCALL STATE6 ;调用状态4 JNB TF0,WAIT6 ; 查询100ms到否 CLR TF0 MOV TH0,#3CH ;恢复T0定时初值100ms MOV TL0,#0B0H DJNZ R2,WAIT6 ;判断1s到否?未到继续状态6 MOV R2,#20 ; 置100ms计数初值 DEC SECOND1 ;东西路口显示时间减1 DEC SECOND2 ;南北路口显示时间减1 LCALL DISPLAY DJNZ R3,WAIT6 ;状态6维持3s LJMP LOOP STATE1: ;状态1 SETB LED_G

25、1 ; 东西路口路灯亮 CLR LED_Y1 CLR LED_R1 CLR LED_G2 CLR LED_Y2 SETB LED_R2 ;南北路口红灯亮 RET STATE2: ; 状态2 CLR LED_Y1 CLR LED_R1 CLR LED_G2 CLR LED_Y2 SETB LED_R2 ;南北路口红灯亮 RET STATE3: ;状态3 CLR LED_G1 CLR LED_R1 CLR LED_G2 CLR LED_Y2 SETB LED_R2 ;南北路口红灯亮 SETB LED_Y1 ;东西路口黄灯亮 RET STATE4: ;状态4 CLR LED_G1 CLR LED_Y

26、1SETB LED_R1 ;东西路口红灯亮SETB LED_G2 ;南北路口绿灯亮 CLR LED_Y2 CLR LED_R2 RET STATE5: ;状态5 CLR LED_G1 CLR LED_R1 SETB LED_R1 ;东西路口红灯亮 CLR LED_Y2 CLR LED_R2 RET STATE6: ;状态6 CLR LED_G1 CLR LED_Y1 SETB LED_R1 ;东西路口红灯亮 CLR LED_G2 CLR LED_R2 SETB LED_Y2 ;南北路口黄灯亮 RET DISPLAY: ;数码显示 MOV A,SECOND1 ;东西路口计时寄存器 MOV B,#

27、10 DIV AB MOV DBUF+3,A MOV A,B MOV DBUF+2,A MOV A,SECOND2 ;南北路口计时寄存器 MOV B,#10 DIV AB MOV DBUF+1,A MOV A,B MOV DBUF,A MOV R0,#DBUF MOV R1,#TEMP MOV R7,#4 DP10:MOV DPTR,#TEMP MOV A,R0 MOVC A,A+DPTR MOV R1,A INC R0 INC R1 DJNZ R7,DP10 MOV R0,#TEMP MOV R1,#4 DP12:MOV R7,#8 MOV A,R0 DP13:RLC A MOV P3.0,

28、C CLR P3.1 SETB P3.1 DJNZ R7,DP13 INC R0 DJNZ R1,DP12 RET LENMAP:DB 3FH,06H,5BH,4FH,66H,6DH DB 7DH,07H,7FH,6FH ORG 0200HINTO0:PUSH PSW PUSH ACC SETB LED_R1 SETB LED_R2 CLR LED_G1 CLR LED_Y1 CLR LED_G2 CLR LED_Y2 POP PSW POP ACC RETIEND附录二九参考文献1 叶挺秀.应用电子学.杭州:浙江大学出版社,19942 朱承高.电工及电子技术手册.北京:高等教育出版社,19903 周润景.PEOTEUS在MCS-51&ARM7系统中的应用百例.北京:电子工业出版社,20064 李朝青.单片机原理及接口技术(第三版).北京:北京航空航天大学出版社,2005实训成绩评定书序号评定项目评定等级A(优)B(良)C(中)D(及格)E(不及格)1考勤2软件基本操作能力3基本编程能力4软件调试能力5硬件连接能力6独立思考独立解决问题能力7软硬件联调结果8平时表现9实训报告综合评定等级指导教师:柳铭2010年7月10日

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1