单片机课程设计——交通灯控制系统设计_第1页
单片机课程设计——交通灯控制系统设计_第2页
单片机课程设计——交通灯控制系统设计_第3页
单片机课程设计——交通灯控制系统设计_第4页
单片机课程设计——交通灯控制系统设计_第5页
免费预览已结束,剩余24页可下载查看

下载本文档

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

文档简介

1、单片机课程设计报告交通灯控制系统设计摘要本设计是针对交通灯系统的设计,由单片机AT89c51 (实物用AT89s52)、键盘、LED显 示、交通灯演示系统组成。单片机是把微型计算机的各功能部件集成在一块芯片中,构成的 一个完整的微型计算机。AT89C51单片机是MC-51中的子系列,是一组高性能兼容型单片机, AT89c51是一个低功耗高性能的CMOS 8位单片机,40个引脚,片内含4KB Flash ROV和128B RAM,它是一个全双工的串行通行口,既可以用常规编程,又可以在线编程。本设计中的数码管的选通采用的方法是动态显示,对每一位数码分时轮流通电显示,复 位电路采用上电+按钮电平复位

2、,时钟电路采用内部时钟产生方式。对特殊情况的处理采用中 断处理方式,在中断处理程序中采用对管脚的状态查询扫描,已采取相应情况的处理。对设计方案进行电路硬件设计,并将已编程的程序载入调试,可以得到理想的实验效果。 系统包括人行道、左转、右转、以及基本的交通灯的功能.具体功能是假如A道和B道上均 有车辆要求通过时,A、B道轮流放行。A道放行25秒,B道放行20秒。一道有车而另一 道无车,交通灯控制系统能立即让有车道放行。有紧急车辆要求通过时,系统要能禁止普通 车辆通行,A、B道均为红灯,紧急车由K2开关模拟。绿灯转换为红灯时黄灯亮1秒钟。系 统除基本交通灯功能外,还具有倒计时、时间设置、紧急情况处

3、理、分时段调整信号灯的点 亮时间以及根据具体情况手动控制等功能。1 引言- 1 -交通灯的重要作用-1-该交通灯系统的特点-1-2系统总体方案及硬件设计-2-原理框图-2-设计功能-2-交通灯控制系统各部分硬件组成-2-复位部分-2-时钟电路部分-3-路口指示灯部分-3-显示部分-3元器件清单-4-3软件设计-5-交通灯控制系统软件流程图及程序分析-5-主程序流程图及程序模设计-5-INTO中断服务程序流程图及程序模设计-6-路口指示灯部分-7-显示部分-7-4. Proteus 软件仿真-8-5课程设计体会-9-参考文献-10-附1:源程序代码一13-附2:系统原理图201概述本设计是根据单

4、片使机原理就交通灯的系统作出的,由于车辆的增多,所以交通灯在现 代道路交通中起着越来越重要的作用。为了解决这些问题,我们更应该提高交通控制和管理 水平,合理使用现有交通设施,充分发挥其能力,提高交通效率,促进和谐交通的建立。1.1 交通灯的重要作用交通灯在城市交通中起着重要的作用,它与人们日常生活密切相关,是人们出行的安全 保障。如今随着人们生活水平的提高,对交通管制也提出了更高的要求,因此提供一个可靠、 安全、便捷的多功能交通灯控制系统有着现实的必要性。该设计在熟练掌握单片机原理及其 应用技术的使用方法基础上,综合应用单片机原理、微机原理、微机接口技术、proteus软件 等课程方面的知识,

5、设计一个采用AT89c51单片机控制的交通灯控制电路。能方便的对交通灯 进行控制,使交通更和谐。1.2 该交通灯系统的特点本系统结构简单,操作方便;可实现自动控制,具有一定的智能性;对优化城市交通具 有一定的意义。本设计将各任务进行细分包装,使各任务保持相对独立;能有效改善程序结 构,便于模块化处理,使程序的可读性、可维护性和可移植性都得到进一步的提高。系统总体方案及硬件设计2. 1原理框图根据设计功能及要求,我们可得系统的原理框图如图(1)所示。交通灯LED数码管单片机图(1)系统原理框图3. 2 设计功能1 .完成交通灯的基本功能,结合实际情况,控制红、黄、绿交通灯的亮和灭.其工作流 程是

6、:绿、黄、红分时间段开通,循环往复,计时电路以秒为单位作倒计时,计数为0时进 行切换,计时时间可由LED数码管显示(需符合交通规则);2 .红、黄、绿交通灯的亮和灭的时间可调节;3 .若有交通异常情况,可以通过按键处理目前的紧急状态;4 .采用LED数码管显示红或绿交通信号灯亮的剩余时间;5 .通过按键设定红和绿交通信号灯亮一次的总时间;6 .控制东西方向和南北方向的红、黄、绿交通灯的亮和灭;7 .夜间控制功能,按键进入夜间模式,黄灯闪亮;8 .控制系统的原理图和接线图采用PROTEL,PROTEUS等专用绘图软件绘制。2.3 交通灯控制系统各部分硬件组成2.3. 1 复位部分复位电路采用上电

7、+按钮电平复位是上电复位与按钮复位的组合,当振荡频率是6MHz时, 电容C取22 uf, R取IK。,Rs取200。左右。上电瞬间复位端(RST/Vpd)的电位与Vcc 相同,随着充电电路电流的减少,RST/Vpd的电位下降,最后为0V,当按钮按下后,电源Vcc 通过电阻R,施加在单片机复位端RST/Vpd上实现复位,电路连接图如图(2):复位电路(2)1 .3.2 时钟电路部分本系统采用内部时钟产生方式:在和两端跨接陶瓷谐振器,与内部反相器构成稳定的自 激振荡器采。晶振采用12MHz的振荡频率和两个30Pf瓷片电容Cl、C2,两个电阻对频率有 微调作用。其电路如图(3) :C2 .3DPF

8、-.:Ct : , WPF . iTEZTe-晶振.CRYSTALXTAL1XTAL2时钟电路(3)2 . 3.3 路口指示灯部分采用红黄绿三种颜色的发光二极管共12个分为4组代表路口的交通灯(电路图中用两组 示意).其中每两组控制一个路口,具体时序如表1:2. 3.4表1:灯色东西南北红灯54黄灯11绿灯34显示部分采用四位一体共阴数码管,分别显示南北和东西灯的剩余时间.片选部分和数码段显示部 分,分别接单片机管脚的P2 口和P0 口,具体的共阴数码管管脚分布位置见图(4).图(4)显示部分2.4 元器件清单 如表2:器件名称型号大小数量单片机AT89S521晶振12MHz1LED数码管四联

9、共阴1电解电容22uF1瓷片电容30pF2排阻170 Q1电阻470 Q1发光二极管红4黄4绿4开关按键式43软件设计1.1 交通灯控制系统软件流程图及程序分析1.1.1 主程序流程图及程序模设计该交通信号灯控制系统的四中工作状态如图(5)所示(南北方向的交通灯为例):(1)东西方向车道红灯亮,南北方向车道绿灯亮。表示东西方向车道上的车辆禁止通行, 南北方向车道允许通行。绿灯亮足规定的时间隔时,控制器发出状态信号,转到下一工作状 态。(2)东西方向车道红灯亮,南北方向车道黄灯闪亮。表示南北方向车道上未过停车线的 车辆停止通行,已过停车线的车辆继续通行,东西方向车道禁止通行。黄灯闪亮足规定时间

10、间隔时,控制器发出状态转换信号,转到下一工作状态。(3)东西方向车道绿灯亮,南北方向车道红灯亮。表示东西方向车道允许通行, 南北方向车道上的车辆禁止通行,绿灯亮足规定的时间间隔时,控制器发出状态转换信号, 转到下一工作状态。(4)东西方向车道黄灯闪亮,南北方向车道红灯亮。表示南北方向车道禁止通 行,东西方向车道上位过限停车线的车辆停止通行,已过停车线的车辆继续通行。黄灯闪亮 足规定的时间间隔时,控制器发出状态转换信号,系统又转换到第(1)种工作状态。1.1.2 INTO中断服务程序流程图及程序模设计INTO与K2连接,另一端与地连接。按下K2,东西南北四个方向全红,也就是说,东西南北 四个通道

11、都不能通车,这是紧急情况,但救护车等特殊车辆可以通过。K0与AT89C52的25 管脚相连。K1与相接,K3与相接,K2与相接。在按下K2的前提下,按 按下K0,如果3秒中之内没有按键,则交通灯恢复正常。图(6)中断服务流程图50ms中断计算方法(适用于 1Hz晶振):T0的计数初值:XO=M-计数值=M-Tc/TP=M-(TcXfosc)/122=65536-(50ms XlSMHz/12)=15536比15535=3CB0H其中单元存放3s钟控制标志位,单元存放1s控制标志位;单元存放秒控制标志位60H和61H单元分别存放产生1s和3s的中断次数,当它们单元中的值为零时,分别表示 1s和3

12、s到,对单元和4F. 0H单元进行置L62H单元用于产生秒由于采用工作模式1,所以每次中断后,一定在中断程序中重装记数初值.1.2 路口指示灯部分用P1端口作为输出端口,用到端口分别控制东西和南北两组灯的状态低电平点亮,具体 端口功能如下:控制东西红灯的亮灭控制东西绿灯的亮灭控制东西黄灯的亮灭控制南北红灯的亮灭控制南北绿灯的亮灭控制南北黄灯的亮灭具体的程序我们以点亮东西红灯东南北绿灯为例:MOV Pl, #OEEH其余部分根据硬件不同而修改#OEEH的值.3. 3显示部分四位一体共阴数码管的片选部分由到提供,码段部分由到控制.其中控制东西剩余时间的十位数的显示,控制东西剩余时间的个位数的显示,

13、控制南北剩 余时间的十位数的显示,控制南北剩余时间的个位数的显示.低电平选中.到控制分别控制点亮数码段的A段到H段,通过查共阴极数码段码表,将它们的数值送到 P0 口,与到口结合,可以显示不同方向不同位数的各个数值.例如,显示东西剩余时间的十位程序如下:MOV P2,#0FEH 选择十位程序MOV PO.A向P0 口送段码的程序4. Proteus软件仿真根据设计需要和上述框图,我们可得到交通灯控制系统各过程仿真 图如下图所示XTWmuR51PU 内a Pl 川 oPl TNAM与G w.oxrP2 gl K.lfMK2fMI P?W1 ra-VAij rasAi) P7 W 匕二,的日如 .

14、inD 的空旦I P55XWTa3 6k ,2EOSOH基本功能说明::(1)场系线具有交通灯的超本功能; :汝玳倭费时河的询书 M3JK2然急情况处理: :具有他讦时的功能:图(7)紧急情况时图(8)东西方向变黄灯,南北方向禁行:时仲电路:上飞:10M): :(、EC1:XFF -*TET)3r.时钟鬼路:| :G030?UIFTM1muR5T吧4F2EA1kZ7TK2 :,:KEI加 TdT,:基本功能说明,P16 Pl TPI0 Pl I riz PI 3 Pl 4RI.4k 3CP3OX2?加ri offla PI IW Pl X0 PI HNO PI 0 Pl MQ PI Q 口 5

15、Trz.i/Aii 力SH 修 rz.VAjj 段和014 P2.7/AJS因。&D P2 gD rjjiimi 叩,MTTp1“O 3E %WE n.r*o(法索线具有交曲灯的芨本功能:(力如肉:负身时同的丽节ir幻的魅转情况处理:,;:,(4)具有隹屏忖的功能图(9)南北方向通车,东西方向禁行复位电路c: - II,2依 P! 75 P2 MMI 咫*AQ ”幻影 P! C/4 7出恁RKQ Piimn ,3.须I F5MNH4HD量a铅青好该系经具有交通灯的基声防能:(2) K0K1负党付何的国节二的我急情晁处理:二:(43具有倒计时的功能图(io)南北方向禁行,东西方向通车5课程设计体

16、会该交通灯系统是以单片机89C52芯片为核心部件,实现了能根据实际车流量通过89C51 芯片设置及控制红、绿灯燃亮时间来进行交通控制。本次课程设计使我对单片机的工作原理有了更深刻的认识,例如对复位电路、晶振电路 的理解。我深刻的理解到单片机的价值在于灵活运用它的10端口以及其千变万化的程序。本 设计中我们用10端口驱动数码管以及引接外部开关。掌握了许多在以前学习中混淆不清的知 识点。仿真实验,不仅锻炼了自己的动手能力,而且真正作到了理论联系实际的重要性,体 会到了其中失败与成功的滋味,收益匪浅。同时在焊接单片机电路板时使我在制作上更加的 熟练,经过不断的试验二极管终于我的灯亮了,当我看到我亲手

17、制作的板子亮时,我的心中 非常激动。同时,我也认识到自己的知识不足,例如,有时不能正确认识、合理使用中断程序,这 将是我以后努力提高的方面。参考文献1.单片机原理与应用技术余发山主编中国矿大出版社20072.微型计算机控制技术赖寿宏主编机械工业出版社20023.单片机原理及应用丁元杰主编机械工业出版社20014.单片机中级教程张迎春主编北京航空航天出版社20045.基于单片机的交通信号控制系统欧伟民湖南大学学报(自然科学版)2002,(S2附1:源程序代码 ORG 0000HLJMP START ORG 0003H LJMP INTO ORG OOOBH LJMP TO ORG OO1BH L

18、JMP T1ORG01 OOHSTART: MOVSP,#30HMOV40H,#30MOV41H,#20MOV42H,#25MOV43H,#25;东西红灯时间;东西绿灯时间;南北红灯时间;南北绿灯时间;定时器初始化MOV TMOD, #11HMOV THO, #3CH MOV TLO, #OBOH MOV TH1, #3CH MOV TL1, #OBOH MOV 60H, #20 MOV 61H, #60MOV 62H, #10MOV 63H,#2CLR 4EHCLR 4FHCLR 4DHSETB EASETB EXO SETB ETO SETB ET1 SETB PT1 SETB TRODI

19、SPLAY1:MOVPl,#OEEHMOVR3,40HMOVR4,43HL00P1: M()(A,R3MOVB,#OAHDIV ABMOV DPTR,#TABMOVC A,A+DPTR;显示东西红灯与南北绿灯时间MOV P2,#0FEHMOV PO.ALCALL DELAY;东西道显示时间的十位MOV A, BMOVC A,A+DPTRMOV P2,#0FDHMOV PO,ALCALL DELAY;东西道显示时间的个位MOV A, R4MOV B, #OAHDIV ABMOV DPTR,#TABMOVC A,A+DPTRMOV P2,#0FBHMOV PO.ALCALL DELAY;南北显示时

20、间的十位MOV A, BMOVC A,A+DPTRMOV P2,#0F7HMOV PO,ALCALL DELAY;南北显示时间的个位JNB 4FH.LOOP1CLR 4FHDEC R3DEC R4CJNE R4,#OFFH,LOOP1kkkl:MOV Pl, #0DEH;南北绿灯灭黄灯亮L00P2:MOV A, R3MOV B, #OAHDIV ABMOV DPTR,#TABMOVC A,A+DPTRMOV P2,#0FEHMOV PO.A LCALL DELAY MOV P2, #OFBH MOV PO, A LCALL DELAY MOV A, BMOVC A,A+DPTRMOV P2,#

21、0FDHMOV PO,ALCALL DELAYMOV P2, #OF7HMOV PO, ALCALL DELAYJNB 4DH.LOOP2CLR 4DHDJNZ 63H,Kkk2MOV 63H,#2DEC R3CJNE R3,#0FFH,Kkk2LJMP Al、Kkk2控制黄灯闪亮Kkk2:MOV P1,#OFEH;南北绿灯灭黄灯也灭。kkklA2:MOV A, R3MOV B, #OAHDIV ABMOV DPTR,#TABMOVC A,A+DPTRMOV P2,#0FEHMOV PO,ALCALL DELAYMOV P2, #OFBHMOV PO, ALCALL DELAYMOV A, B

22、MOVC A,A+DPTRMOV P2,#0FDHMOV PO,ALCALL DELAYMOV P2, #0F7HMOV PO, ALCALL DELAYJNB 4DH.A2CLR 4DHDJNZ 63H,kkklMOV 63H,#2DEC R3CJNE R3,#0FFH,KkklAl:MOV Pl, #OF5H;东西红灯时间到,南北绿灯亮,南北红灯亮DISPLAY2:MOV R3, 41H;显示东西绿灯,南北红灯时间MOV R4, 42HLOOP3:MOV A, R3MOV B, #OAHDIV ABMOV DPTR,#TAB MOVC A,A+DPTR MOV P2,#0FEH MOV P

23、O,A LCALL DELAY MOV A, B MOVC A,A+DPTR MOV P2,#0FDH MOV PO,A LCALL DELAYMOV A, R4 MOV B, #OAH DIV AB MOV DPTR,#TAB MOVC A,A+DPTR MOV P2,#0FBH MOV PO.A LCALL DELAY MOV A, B MOVC A,A+DPTR MOV P2,#0F7H MOV PO.A LCALL DELAY JNB 4FH,L()()P3 CLR 4FH DEC R3 DEC R4CJNE R3,#OFFH,LOOP3 KKK5:MOV Pl, #0F3HLOOP4

24、: MOV A, R4 ;显示南北红灯,东西黄灯时间 MOV B, #OAH DIV AB MOV DPTR,nTAB MOVC A,A+DPTR MOV P2,#0FEH MOV PO.A LCALL DELAY MOV P2, #OFBH MOV PO, ALCALL DELAY MOV A, B MOVC A,A+DPTR MOV P2,#0FDH MOV PO.A LCALL DELAY MOV P2, #0F7H MOV PO, A LCALL DELAY JNB 4DH.LOOP4 CLR 4DH DJNZ 63H.KKK5 MOV 63H,#2 DEC R4 CJNE R4,#0

25、FFH,A7 LJMP DISPLAY1A7控制黄灯闪亮A7:MOV Pl, #0F7H;显示南北红灯,东西黄灯灭,KKK5 A8: MOV A, R4 MOV B, #OAH DIV ABMOV DPTR,#TAB MOVC A,A+DPTR MOV P2,#0FEH MOV PO.A LCALL DELAY MOV P2, #OFBH MOV PO, A LCALL DELAY MOV A, B MOVC A,A+DPTR MOV P2,#0FDH MOV PO.A LCALL DELAY MOV P2, #0F7H MOV PO, A LCALL DELAY JNB 4DH.A8 CLR

26、 4DH DJNZ 63H.KKK5MOV 63H,#2DEC R4CJNE R4,#0FFH,KKK5LJMP DISPLAY1;定时器中断;TO: PUSH ACCPUSH BPUSH PSWMOV TH0,#3CHMOV TLO,#OBOHDJNZ 62H,OVER100MOV 62H,#10SETB 4DHOVER100:DJNZ 60H.OVERMOV 60H,#20SETB 4FHOVER: POP PSWPOP BPOP ACCRET ITl: PUSH ACCPUSH BPUSH PSWMOV TH1,#3cHMOV TL1,#OBOHDJNZ 61H.0VER1MOV 61H

27、,#60SETB 4EH0VER1: POP PSWPOP BPOP ACCRET I; INTO 中断修改;INTO:PUSH ACCPUSH BPUSH PSWMOV A,PlPUSH ACCMOV Pl,#0F6H;东西南北道红灯皆亮CLR EXOCLR TROLCALL DELAY;按键消抖JB , OKLJMP DISPLAYSOK:LJMP 0VER2DISPLAYS:MOV R5, 4OH;东西红灯南北绿灯最大时间值的数码管显示 MOV R6, 43H MOV A, R5 MOV B, #OAH DIV AB MOV DPTR,#TAB MOVC A,A+DPTR MOV P2,

28、#0FEH MOV PO.A LCALL DELAY MOV A, BMOVC A,A+DPTRMOV P2,#0FDHMOV P0,ALCALL DELAYMOV A, R6 MOV B, #OAH DIV AB MOV DPTR,nTAB MOVC A,A+DPTR MOV P2,#0FBH MOV PO,A LCALL DELAY MOV A, B MOVC A,A+DPTR MOV P2,#0F7H MOV P0,A LCALL DELAYMOV A,P2ANL A.#70H;在没按下KO的情况下,根据KI、K3按下的情况对各道的红绿 灯亮的时间进行调节CJNE A,#70H,DES3

29、LJMP DISPLAYSDES3:LCALL DELAYCJNE A,#70H,DES4DES4:JNB ,DES7 JNB ,ADD1 JNB ,DEC1DES7:JNB ,DES7LJMP DISPLAYS ADD1:JNB ,ADD1INC 40H INC 43H LJMP DISPLAYS DECI:JNB ,DEC1DEC 40H DEC 43H LJMP DISPLAYSDISPLAYS:SETB TRIDISPLAY4:M()V R5, 41H;东西绿灯南北红灯最大时间值的数码管显示 MOV R6, 42H MOV A, R5 MOV B, #OAH DIV AB MOV DPTR.ftTAB MOVC A,A+DPTR MOV P2,#0FEH MOV PO.A LCALL DELAY MOV A, B MOVC A,A+DPTR MOV P2,#0FDH MOV PO.A LCALL DELAYMOV A, R6 MOV B, #OAH DIV AB MOV DPTR,#TAB MOVC A,A+DPTR MOV P2,#0FBH MOV PO.A LCALL DELAY MOV A

温馨提示

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

评论

0/150

提交评论