《交通灯控制系统》 .doc

上传人:仙人指路1688 文档编号:3933058 上传时间:2023-03-28 格式:DOC 页数:17 大小:1.76MB
返回 下载 相关 举报
《交通灯控制系统》 .doc_第1页
第1页 / 共17页
《交通灯控制系统》 .doc_第2页
第2页 / 共17页
《交通灯控制系统》 .doc_第3页
第3页 / 共17页
《交通灯控制系统》 .doc_第4页
第4页 / 共17页
《交通灯控制系统》 .doc_第5页
第5页 / 共17页
点击查看更多>>
资源描述

《《交通灯控制系统》 .doc》由会员分享,可在线阅读,更多相关《《交通灯控制系统》 .doc(17页珍藏版)》请在三一办公上搜索。

1、交 通 灯 控 制 系 统课程设计报告题 目:交通灯控制系统专 业:电子信息工程年 级:10级学 号:100406125学生姓名:张颖联系电话:18710973991完成日期:2013年7月 8日摘 要 利用元件MCS-51单片机,四组红、黄、绿共十二个LED灯 ,东西路和南北路各两个7段数码管,三个开关等,进行设计。单片机是以应用为中心,以程序语言编写为基础的微型计算机系统,用它实现交通灯控制极为方便。经测试和仿真,所设计系统达到交通灯控制系统的要求,交通灯信号通过P1口输出,显示时间通过P0口和P2口输出至数码管。本系统设计周期短、可靠性高、实用性强、操作简单、维护方便、扩展功能强, 具有

2、控制方便、灵活的优点。关键词:单片机;交通灯;定时/计数器;中断;数码管显示 AbstractBy using MCS - 51 single chip microcomputer, four groups of red, yellow, green, a total of 12 LED lights, what road and north-south road each two seven segment digital tube, three switches, etc., to carry on the design. Single-chip microcomputer is used

3、 as the center, on the basis of the programming language to write the microcomputer system, and use it to achieve traffic light control is extremely convenient. After the test and simulation, the designed system to achieve the requirement of the traffic light control system, traffic signal output, t

4、hrough the P1 port display time by P0 mouth and P2 output to digital tube. This system design cycle is short, high reliability, strong practicability, simple operation, convenient maintenance, strong extended functionality. Possesses the advantages of easy control, flexible. Key words: single chip m

5、icrocomputer; The traffic light; Timer/counter; Interrupt; Digital tube display目录摘 要2Abstract21.设计要求及方案选取41.1设计要求42.理论分析与设计52.1方案比较、设计与论证52.2总体设计思路53.交通灯控制系统电路设计63.1 芯片选择63.2硬件设计仿真电路图73.3软件设计思路及流程图74.设计程序84.1交通灯控制系统设计程序85.系统测试145.1调试所用的基本仪器清单145.2.调试结果145.3测试结果分析166.设计总结与展望167参考文献17 1.设计要求及方案选取1.1设计

6、要求单片机是以应用为中心,以程序语言编写为基础的微型计算机系统。它一般主要由以下几部分组成:中央处理器CPU、存储器、定时/计数器、I/O接口等。因为它是所有的电路集成在一片芯片上的单片微型计算机,因此简称单片机。它可以单独实现简单的控制,所以也称为微型控制器。(1)交通灯控制系统基本要求:要求交通信号灯控制逻辑如下:假设一个十字路口为东西南北走向。开始为四个路口的红灯全部亮之后,东西路口的绿灯亮,南北路口的红灯亮,东西路口方向通车,延时一段时间后 (50秒) ,东西路口的绿灯,闪烁若干次后(3 秒),东西路口的绿灯熄灭,同时东西路口的黄灯亮,延时一段时间后(2 秒),东西路口的红灯亮,南北路

7、口的绿灯亮,南北路口方向通车,延时一段时间后(30 秒),南北路口的绿灯闪烁若干次后(3 秒),南北路口的绿灯熄灭,同时南北路口的黄灯亮,延时一段时间后(2秒),再切换到东西路口的绿灯亮,南北路口的红灯亮,之后重复以上过程。若有急救车到达时,两向交通信号为全红,以便让急救车通过。假定急救车通过路口时间为10秒,急救车通过后,交通灯恢复中断前状态。以按键为中断申请,表示有急救车通过 。(2)扩展功能(选作):1.东西和南北车道,有一道有车而另一道无车时,交通灯控制系统应该立即让有车车道放行。2.交通灯的时间可以设定(即红灯和绿灯亮的时间长短可控)。2.理论分析与设计2.1方案比较、设计与论证 2

8、.1.1 显示界面方案 2.1.1.1倒计时显示 该系统要求完成倒计时的功能。因只需显示数字,基于上述原因,我们考虑完全采用数码管显示,四个路口分别采用两个一位阴极数码管即可。 2.1.1.2 状态灯显示 该系统要求完成状态灯显示的功能。求于简单,我们把各个路口的红灯、黄灯和绿灯分别根据设计要求来点亮,也就是说,东西南北四个路口需三个状态灯,一个通行的绿灯,一个禁行的红灯和一个等待的黄灯。 2.1.1.3 输入方案 该系统要求能可控改变东西与南北的通行时间,用定时/计数器即可实现。紧急情况处理,我们采用中断方法,在外部中断P32口上连接一个开关K8,分别开闭,即可实现紧急情况处理。该方案的优点

9、是:使用灵活,可提供中断服务,合理利用了AT89C51的中断口功能。 2.1.2 交通灯显示的理论分析 2.1.2.1 倒计时显示的理论分析 利用定时器中断,设置 TH0=TH1(65536-50000)/256,即每0.05秒中断一次。每到第20次中断即过了20*0.05秒1秒时,使时间的计数值减1,便实现了倒计时的功能。 2.1.2.2 状态灯显示的理论分析 绿灯闪烁可以利用定时器中断。每到第10次中断即过了10*0.05秒0.5秒时,使绿灯标志位反置,即可让绿灯1秒闪烁一次。再以此循环即可让绿灯闪3秒。 2.2总体设计思路主控器(51单片机) 车辆检测倒计时间显示交通灯控制 在十字路口的

10、四组红、黄、绿交通灯中,东西道上的两组同色灯相联在一起,南北道上的同色灯相联在一起,受MCS-51的P1.5P1.0口控制,实验时由发光二级管代替。实验的开关K1、K2用来代替实际中的传感器,与P1.6、P1.7口相联,作为有无车辆的传感器输入线,急救车请求通过的信号也由人工控制以中断方式输入单片机,实验时用开关K8来代替急救车中断信号。3.交通灯控制系统电路设计3.1 芯片选择 INT0响应 N “繁忙”键按下 N “特殊”键按下 N “正常”键按下 返回 关中断 开中断 正常模式设置 Y 繁忙模式设置 Y 特殊模式设置 Y AT89C51是美国ATMEL公司生产的低电压,高性能CMOS 8

11、位单片机,有40个引脚,32个外部双向输入/输出(I/O)端口,同时内含2个外中断口,3个16位可编程定时计数器,2个全双工串行通信口,2个读写口线,片内含8k bytes的可反复擦写的Flash只读程序存储器和256 bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,与标准MCS-51指令系统及8051产品引脚兼容,片内置通用8位中央处理器(CPU)和Flash存储单元,可以按照常规方法对其进行编程,也可以在线编程。其将通用的微处理器和Flash存储器结合在一起,特别是可反复擦写的Flash存储器可有效地降低开发成本。 AT89C51芯片引脚图教

12、课本附录。 3.2硬件设计仿真电路图3.3软件设计思路及流程图(1)交通灯控制系统流程图:(2)让紧急车通过的中断服务流程图:4.设计程序4.1交通灯控制系统设计程序QD EQU 30H SRED BIT P1.0;定义IO端口 SYELLOW BIT P1.1 SGREEN BIT P1.2 ERED BIT P1.3 EYELLOW BIT P1.4 EGREEN BIT P1.5 ORG 0000H AJMP MAIN ORG 0003H AJMP JINJICHE ORG 0030HMAIN: MOV SP,#60H MOV TCON ,#01H MOV IE,#81H MOV TMO

13、D,#10H;设置定时器0,为方式1 MOV TH1,#3CH;置定时器的初始值,定时50msMOV TL1,#0B0HCLR TF1;清定时器0溢出标志SETB TR1 SETB IT0SETB EX0SETB EA START: MOV P0,#0 MOV P2,#0 LCALL NEXT0LCALL DELAY MOV R1,#20MOV R2,#51MOV QD,#50LCALL NEXT1LCALL DISPLAYLCALL WAIT0 MOV R3,#10 MOV R4,#4 MOV R5,#2 MOV QD,#3 LCALL NEXT2LCALL DISPLAY LCALL WA

14、IT5 MOV R1,#20 MOV R2,#3 MOV QD,#2 LCALL NEXT3 LCALL DISPLAY LCALL WAIT1 MOV R1,#20 MOV R2,#31MOV QD,#30LCALL NEXT4LCALL DISPLAY LCALL WAIT2 MOV R3,#10MOV R4,#4MOV QD,#3MOV R5,#2 LCALL NEXT5LCALL DISPLAYLCALL WAIT6MOV R1,#20MOV R2,#3MOV QD,#2LCALL NEXT6 LCALL DISPLAYLCALL WAIT3 LJMP STARTJINJICHE: P

15、USHACC PUSH PSW MOV R0,QD MOV R6,P1 LCALL NEXT0 MOV R1,#20MOV R2,#11MOV QD,#10LCALL DISPLAYLCALL WAIT4MOV P1,R6MOV QD,R0LCALL DISPLAYPOP PSWPOP ACC RETIWAIT0: JNB TF1,WAIT0;定时器50ms未到,则等待 CLR TF1;定时器50ms到了,;清定时器0溢出标志 MOV TH1,#3CH MOV TL1,#0B0H DJNZ R1,WAIT0;是否到1秒 MOV R1,#20 DEC QD;到1秒则秒值减1 LCALL DISP

16、LAYDJNZ R2,WAIT0;20秒是否倒计时减完,未完则返回RETWAIT1: JNB TF1,WAIT1;定时器50ms未到,则等待 CLR TF1;定时器50ms到了,;清定时器0溢出标志 MOV TH1,#3CHMOV TL1,#0B0H DJNZ R1,WAIT1;是否到1秒MOV R1,#20DEC QD;到1秒则秒值减1LCALL DISPLAYDJNZ R2,WAIT1;20秒是否倒计时减完,未完则返回RETWAIT2: JNB TF1,WAIT2;定时器50ms未到,则等待 CLR TF1;定时器50ms到了,;清定时器0溢出标志 MOV TH1,#3CHMOV TL1,

17、#0B0HDJNZ R1,WAIT2;是否到1秒MOV R1,#20 DEC QD;到1秒则秒值减1LCALL DISPLAY DJNZ R2,WAIT2;20秒是否倒计时减完,未完则返回RETWAIT3: JNB TF1,WAIT3;定时器50ms未到,则等待 CLR TF1;定时器50ms到了,;清定时器0溢出标志 MOV TH1,#3CHMOV TL1,#0B0HDJNZ R1,WAIT3;是否到1秒MOV R1,#20DEC QD;到1秒则秒值减1LCALL DISPLAYDJNZ R2,WAIT3;20秒是否倒计时减完,未完则返回RETWAIT4: JNB TF1,WAIT4;定时器

18、50ms未到,则等待 CLR TF1;定时器50ms到了,;清定时器0溢出标志 MOV TH1,#3CH MOV TL1,#0B0H DJNZ R1,WAIT4;是否到1秒 MOV R1,#20 DEC QD;到1秒则秒值减1 LCALL DISPLAY DJNZ R2,WAIT4;20秒是否倒计时减完,未完则返回 RET WAIT5: JNB TF1,WAIT5;定时器50ms未到,则等待 CLR TF1;定时器50ms到了,;清定时器0溢出标志 MOV TH1,#3CH MOV TL1,#0B0H DJNZ R3,WAIT5 CPL EGREEN MOV R3,#10DJNZ R5,WAI

19、T5 MOV R5,#2 DEC QD LCALL DISPLAY DJNZ R4,WAIT5 RET WAIT6: JNB TF1,WAIT6;定时器50ms未到,则等待 CLR TF1;定时器50ms到了,;清定时器0溢出标志 MOV TH1,#3CH MOV TL1,#0B0H DJNZ R3,WAIT6 CPL SGREENMOV R3,#10 DJNZ R5,WAIT6 MOV R5,#2 DEC QD LCALL DISPLAY DJNZ R4,WAIT6 RETNEXT0: CLR SRED;南北方向红灯亮,东西方向红灯亮 SETB EYELLOWSETB SGREENCLR E

20、RED SETB EGREENSETB EYELLOWRETNEXT1:CLR SRED;南北方向红灯亮,东西方向绿灯亮 SETB SGREENSETB SYELLOW SETB EREDCLR EGREENSETB EYELLOWRETNEXT2:CLR SRED ;南北方向红灯亮,东西方向绿灯闪 SETB SGREEN SETB SYELLOW SETB ERED CLR EGREEN SETB EYELLOW RETNEXT3: CLR SRED ;南北方向红灯亮,东西方向黄灯闪 SETB SGREEN SETB SYELLOW SETB ERED SETB EGREENCLR EYEL

21、LOW RETNEXT4: SETB SRED;南北方向绿灯亮,东西方向红灯亮 CLR SGREEN SETB SYELLOW CLR ERED SETB EGREEN SETB EYELLOW RETNEXT5:SETB SRED;南北方向绿灯闪,东西方向红灯亮 CLR SGREENSETB SYELLOWCLR EREDSETB EGREENSETB EYELLOWRET NEXT6: SETB SRED;南北方向黄灯闪,东西方向红灯亮 SETB SGREEN CLR SYELLOW CLR ERED SETB EGREEN SETB EYELLOWRETDELAY: MOV R6,#25

22、0L2:MOV R7,#250L1: NOP NOPDJNZ R7,L1DJNZ R6,L2 RETDISPLAY:MOV A,QD MOV B,#10DIV AB MOV DPTR,#TABLEMOVC A,A+DPTR MOV P0,A;显示十位 MOV A,B MOVC A,A+DPTR;显示个位 MOV P2,A RETTABLE : DB3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FHEND5.系统测试5.1调试所用的基本仪器清单(1)DVCC-52S或其他单片机试验系统一台(2)+5V直流稳压电源一台(3)Keil软件(4)Protues软件5.2.调

23、试结果5.3测试结果分析程序运行结果如下: 首先,四个方向全是红灯亮,然后南北段红灯亮、东西段绿灯亮计数50秒,计数时间到,绿灯闪三秒,东西段黄灯亮,南北段仍红灯亮,东西段黄灯延时2秒,东西路口的红灯亮,南北路口的绿灯亮,南北路口方向通车,延时一段时间后(30 秒),南北路口的绿灯闪烁若干次后(3 秒),南北路口的绿灯熄灭,同时南北路口的黄灯亮,延时一段时间后(2秒),再切换到东西路口的绿灯亮,南北路口的红灯亮, 若 按下开关K8,即INTO=0,计数10秒,让紧急车通过、执行完后,返回到中断前的状态,继续执行。仿真结果与要求的基本一致,只是有时数管显示略有延时,东西和南北有时差,但总体都一样

24、。 6.设计总结与展望6.1通过本次设计,我完成了一个有特定功能的交通灯控制系统。熟悉了MCS-51外部中断和I/O口的应用。运用单片机定时/计数功能进行计时,学会单片机实时控制系统的设计和调试方法,掌握多位LED显示问题的解决方法。6.2软件延时与定时器计时 , 软件延时,设计简单,使用方便,但是无法进行精确计时,无法在实际应用中进行使用,本次设计采用了定时器进行计时,每50ms产生一个脉冲信号,可以准确的计时并方便8段数码管进行显示。使用中断的好处 使用中断可以进行多样化设计,强化程序功能与执行效率。设计中程序每50ms请求一次中断,实现精确定时与数码管显示刷新,很灵活。6.3我更深入的了

25、解了单片机的特点和优势,尤其在本次课程设计中熟悉了MC51单片机的管脚功能特点以及I/O控制寄存器的设置方法。同时进一步熟悉了在keil4软件环境下程序的编译,以及PROTEUS仿真调试的方法。6.4在设计过程中,我通过向他人请教、讨论,查阅各方面资料,能不断地发现问题、解决问题,提高发现问题和解决问题的能力。因为本设计中硬件连接比较简单,也不需要外扩存储器等部分,接下来的学习中我还需要在熟悉一下这些拓展模块的连接及使用。通过完成此次单片机课程设计,我深刻意识到,在今后的学习中,更应多加练习才能够有更大的进步。7参考文献1.单片机原理与应用基础教程. 陈忠孝. 西北大学出版社2.LPC2106英文手册3.单片机原理及其接口技术学习辅导与实践教程.胡汉才.清华大学出版社4. 单片机课程设计实例教程.杨居义.清华大学出版社5. 百度百科

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号