1、单片机课程设计 交通灯 姓名:学院:专业:班级:学号: 第一章 绪论 伴随中国社会经济发展,城市化、城镇化进程加紧,道路交通堵塞问题日趋严重,怎样对交通进行合理管理和调度而尽可能降低堵车现象成为现在中国很多地方尤其是特大城市急需处理问题,显然交通灯在其中起着不可或缺作用。本文就控制交通灯方法进行了讨论,分析了多种方案性价比,并用软、硬件加以实现。以后,对六车道以上道路“十字交叉路口交通灯控制”进行了分析。最终,还对城市交通灯网控制进行了展望。期望能给相关政府部门部分参考,愈加好地改善我们城市交通。现今交通发展快速,车辆极具增加,马路不停扩宽,人行横道相对较少。在车流量较大地段即便有些人行横道,
2、行人也极难经过马路。行人自控指示灯系统能够有效改善这种情况。尤其是像北京这么大城市,经济飞速发展,车辆繁多,人口密集。缓解交通已成为当务之急.比如在我们新校区西门口(塔南路)就是这种情况,天天进出校门学生尤其多,大多还需要穿过这条繁忙高速公路,这为学校师生带来大大不便.该系统关键应用于交通领域,含有较高实用价值。该系统利用红灯,黄灯,绿灯来指挥车辆和行人,以达成车辆停止,行人通行目标,降低了交通拥挤现象,为行人节省了时间,即确保行人过马路时安全,也减轻了交管部门负担。本产品面对公共交通设施,并不重视经济收益,而是重视以后潜在发展,从而带动相关产业。用户能够完全掌握行人自控指示灯系统操作方法,和
3、各个按键作用科学技术突飞猛进直接把我们带进了信息化社会,计算机应用已普及到经济和社会生活各个领域.第二章 设计要求和任务第一节 目标和要求:1、试验要求: 编写程序,以89c52端口作为输出口,控制4个双色LED灯(可发红、绿、黄光),模拟十字路口交通灯管理。 2、试验目标: (1)学习I0口扩展方法;掌握89c52工作原理和编程方法,了解软件和硬件调试技术。 (2)学习模拟交通灯控制方法; (3)学习双色LED灯使用;第二节 设计任务和设计内容: (CPU均采取89c52)1. 软件延时实现模拟路口交通灯控制: (图1)试验效果: 软件延时控制AC路口红灯,BD路口绿灯亮60秒;然后AC路口
4、不变,BD路口绿灯闪5下,然后BD路口黄灯亮;再变为AC路口绿灯,BD红灯延时3秒;然后AC路口绿灯闪5下, 再黄灯亮,BD不变。再循环 。并将绿灯剩下时间显示在LED上 (该项编程可将其结果显示在计算机屏幕上替换)。初始化设置89c52为输出C口为输出清LEDBD,AC四个方向全为红短延时BD方向亮绿灯60秒AC方向亮红灯BD方向绿灯闪五次,AC方向灯不变BD方向为黄灯延时AC方向灯不变有键按下?有键按下?BD方向亮红灯并延时3秒,AC方向亮绿灯有键按下?有键按下?状态0状态1状态2状态3有键按下?BD方向灯不变,AC方向绿灯闪五次状态4BD方向灯不变,AC方向黄灯延时状态4返回DOS状态1
5、状态3状态4状态2循环 运行(图2 步骤图)2. 89c52定时器控制模拟交通灯: 试验效果: 软件延时控制AC路口红灯,BD路口绿灯亮50秒;其它要求和第1点中相同。 第三章 设计方案及评定论证 第一节 题意分析:即使题目是四个路口,其实这是用于人行横道处 交通灯,也可用于不许可拐弯主副街道交叉口处。 图1所表示,B、D方向是双向车道;A、C方向是人行横道。或将BD看作主街道,而AC看作副街道,也是能够。第二节 工作原理说明: 1.工作原理说明: 此方案是经过并行接口芯片89c52A和计算机硬件连接,和经过软件延时方法进行软件 编程,来实现十字路口交通灯模拟控制。图2(89c52A芯片)所表
6、示,1.主控制单片机主控单片机采取一片AT89C52。依据题目要求,充足利用了单片灵巧活控制优点,发挥其优势功效,采取单片机控制信号灯和数码管显示,提升了系统灵活性,设置方便。利用单片机产生时钟信号控制交通信号灯达成控制路口通行时间效果。AT89C52提供以下标准功效:8K字节Flash闪速存放器,256字节内部RAM,40个I/O口线,3个16位定时/计数器,一个6向量两极中止结构,一个全双工串行通信口,片内振荡器立即钟电路。同时,AT89C52可降至0Hz静态逻辑操作,并支持两种软件可选节电工作模式。空闲方法停止CPU工作,但许可RAM,定时/计数器,串行通信口及中止系统继续工作,掉电方法
7、保留RAM中内容,但振荡器停止工作并严禁其它全部部件工作直到下一个硬件复位。AT89C52单片机引脚配置图2所表示:(图2 89c52A芯片) 图22.LED显示器件工作原理 LED显示器件是经过发光二极管显示字段器件。在单片机控制系统中常见是由7段LED数码管,它显示块中有8个发光二极管,7个发光二极管组成字符“8”,1个发光二极管组成小数点,所以有些人称7段LED数码管为8段显示器。LED数码管管脚配置图3所表示。LED数码管有共阴极和共阳极两类,图4所表示。共阴极LED数码管发光二极管阴极共地,图4(a),当某个发光二极管阳极电压为高电平时,二极管发光;而共阳极LED数码管是发光二极管阳
8、极共接,图4(b),当某个二极管阴极电压为低电平时,二极管发光。图3 LED数码管管脚配置图 (a)共阴极 (b)共阳极 图4 两类LED数码管第三节、组装及调试 依据所设计电路原理图焊接电路板,并用万用表检测接线是否有错误。当焊接电路板正确时,应用伟福(WAVE)仿真器进行调试,检验该交通灯控制系统是否和设计思想一致,并测试程序运行结果正确性和各个按键功效是否符合预定要求。七、元器件列表名称型号数量电阻51023电阻5.1K7电容30PF/22PF2/1二极管12数码管4开关8三极管4晶振1第四章 软件支持和编程 第一节 程序设计 步骤图:图2所表示,有书上直到最终一步才有“是否有键按下?”
9、选择语句,而我认为应该是每个状态后全部有这么判定,这么便于处理特殊紧急情况,正如后面源程序中所表示。第二节 调试统计及结果分析: 调试结果图7所表示: 图(7) (1) 在上机调试中发觉,因为此软件延时时间均为估算时间,不是尤其正确,对于交通要求尤其高地方不宜采取。假如是放到一个大交通灯系统中,会影响到各个交通灯运行时间,可能整个系统对交通指挥调度会大大偏离理论计算,不能有效地预防和消除交通堵塞现象;(2) 当出现紧急情况,在特种车(如消防车、救护车)正要经过时,这种软件延时方法就不能完成;(3) 能够看到,此方案用了12个发光LED,若是六车道以上交通路口,就要36个灯,成本不合算不说,更是
10、让司机、行人眼花缭乱。(4) 这不是一个十字路口,不能拐弯。不过,能够看到以上方案通常性,只要将程序里数据排列或规律稍加修改就可应用到任何一个路口某一个方向上交通灯上了,这就是用软件实现好处,可移植性很强。第五章 总结 经过这一周课程设计,我确定一个方向-相关交通灯系统设计,我认真查阅资料,学习相关这方面知识,比如说要了解89c52芯片中各个引角功效,怎么样去使用89c52这个可编程并行接口芯片,怎么样用89c52这个地址锁存器来存放高位地址和低位地址和交通有哪些规则.在上学期理论学习基础上,又下了一次苦工夫,算是明白了设计一个系统过程;也让我体会到要想成功地设计某个东西,光学好专业知识是不够
11、,必需要系统知识,不管在哪方面全部要有个明白概念,只有这么才不至于在设计过程中摸不着头脑,知道去哪些是需要查资料,还有一点,我认为我在芯片编程方面,尤其是在初始化方面是我最大困难,或许是我汇编语言学得不够呛好,我只能借助参考资料,查每一条指令作用和功效,这么一来又巩固了我对汇编语言了解. 如此,我体会到学习理论知识当然关键,但在你学完了以后,你不在实践中利用你所学知识,我想学是白学了,过一段时间后,你可能什么全部记不起来了,或许在学心里只有一个概念,认为这个知识我曾经学得不错,我现在怎么想不起来了,一心想依靠书本;假如我们用实践来学习知识,你会努力地去搜索你想要需要东西,即使是过了一段时间后,
12、你也会记得你曾经对这点不明白认真地查阅过,你不会忘记!一句话,课程设计对我们很关键!.第六章 参考文件:余发山编著. 单片机原理及应用技术. 徐州:中国矿业大学出版社,.12蔡美琴,张为民编. MCS51系列单片机系统及其应用. 北京:高等教育出版社,1994陈奥初,窦振中编著. 单片机应用系统设计和实践. 北京:北京航空航天大学出版社,1991顾滨等编著. 单片微型计算机原理、开发及应用. 北京:高等教育出版社,.8(重印) 付程序: ORG 0000H LJMP MAIN ORG 0003H LJMP TIME1 ORG 000BH LJMP TIME2 ORG 0013H LJMP TS
13、H ORG 0030HMAIN:MOV SP,#40H MOV P2,#00H MOV P1,#0FFH MOV 20H,#08H MOV 21H,#02H MOV 22H,#00H MOV 23H,#12H MOV 24H,#02H MOV 25H,#00H CLR C MOV A,20H SUBB A,24H MOV 25H,A CLR C MOV A,23H SUBB A,21H MOV 22H,A MOV 26H,#00H MOV 27H,#00H MOV 28H,#00H MOV 29H,#00H MOV 2AH,#00H MOV 2BH,#00H MOV 2CH,#00H MOV
14、2DH,#00H MOV 2EH,#00H MOV 30H,#00H MOV 31H,#00H MOV 32H,#00H MOV 33H,#00H MOV TCON,#00H MOV IE,#87H MOV TMOD,#01H MOV TH0,#3CH MOV TL0,#0B0H MOV R7,#20 SETB TR0HHF0:MOV 26H,20H MOV 2BH,25H MOV P1,#9EHHHF1:ACALL DISP1 MOV A,2BH CJNE A,#0,HHF1 MOV 2AH,24H MOV P1,#0AEHHHF2:ACALL DISP2 MOV A,2AH CJNE A,
15、#0,HHF2 MOV 28H,22H MOV 29H,23H MOV P1,#0B3HHHF3:ACALL DISP3 MOV A,28H CJNE A,#0,HHF3 MOV 27H,21H MOV P1,#0B5HHHF4:ACALL DISP4 MOV A,27H CJNE A,#0,HHF4 LJMP HHF0DISP1:MOV A,2BH MOV B,#10 DIV AB MOV 30H,B MOV 31H,A MOV A,26H MOV B,#10 DIV AB MOV 32H,B MOV 33H,A ACALL DISP RETDISP2:MOV A,2AH MOV B,#10
16、 DIV AB MOV 30H,B MOV 31H,A MOV A,26H MOV B,#10 DIV AB MOV 32H,B MOV 33H,A ACALL DISP RETDISP3:MOV A,29H MOV B,#10 DIV AB MOV 30H,B MOV 31H,A MOV A,28H MOV B,#10 DIV AB MOV 32H,B MOV 33H,A ACALL DISP RETDISP4:MOV A,29H MOV B,#10 DIV AB MOV 30H,B MOV 31H,A MOV A,27H MOV B,#10 DIV AB MOV 32H,B MOV 33H
17、,A ACALL DISP RETDISP5:MOV 2BH,21H MOV 26H,20H ACALL DISP1 RETDISP6:MOV 2AH,24H MOV 26H,23H ACALL DISP2 RETDISP:MOV R2,#4 MOV R0,#30H MOV R3,#08HHHF5:MOV A,R3 MOV P2,A MOV DPTR,#TABLE MOV A,R0 MOVC A,A+DPTR MOV P0,A ACALL DELAY MOV A,R3 RR A MOV R3,A INC R0 DJNZ R2,HHF5 RETTABLE:DB 3FH,06H,5BH,4FH,6
18、6H DB 6DH,7DH,07H,7FH,6FHDELAY:MOV R4,#2FHHHF32:MOV R5,#0AH HHF6:DJNZ R5,HHF6 DJNZ R4,HHF32 RETTIME1:PUSH ACC PUSH PSW INC 2DH INC 2EHHHF33:JB P2.4,HHF15HHF16:JNB P2.4,HHF16 INC 2DHHHF15:JB P2.5,HHF17HHF18:JNB P2.5,HHF18 INC 2EHHHF17:MOV A,2DH CJNE A,#1,HHF19HHF23:ACALL DISP5 JB P2.6,HHF20HHF21:JNB
19、P2.6,HHF21 MOV A,2EH CJNE A,#1,HHF22 INC 20H SJMP HHF23HHF22:MOV 2EH,#00H INC 21H SJMP HHF23HHF20:JB P2.7,HHF24HHF25:JNB P2.7,HHF25 MOV A,2EH CJNE A,#1,HHF26 DEC 20H SJMP HHF23HHF26:MOV 2EH,#00H DEC 21H SJMP HHF23HHF19:MOV 2DH,#00H ACALL DISP6 JB P2.6,HHF27HHF28:JNB P2.6,HHF28 MOV A,2EH CJNE A,#1,HH
20、F29 INC 23H SJMP HHF19HHF29:MOV 2EH,#00H INC 24H SJMP HHF19HHF27:JB P2.7,HHF24HHF30:JNB P2.7,HHF30 MOV A,2EH CJNE A,#1,HHF31 DEC 23H SJMP HHF19HHF31:MOV 2EH,#00H DEC 24H SJMP HHF19HHF24:JB P1.7,HHF33HHF34:JNB P1.7,HHF34 CLR C MOV A,20H SUBB A,24H MOV 25H,A CLR C MOV A,23H SUBB A,21H MOV 22H,A MOV 26
21、H,20H MOV 27H,21H MOV 28H,22H MOV 29H,23H MOV 2AH,24H MOV 2BH,25H MOV 2DH,#00H MOV 2EH,#00H POP PSW POP ACC RETITIME2:PUSH ACC PUSH PSW MOV TH0,#3CH MOV TL0,#0B0H DJNZ R7,HHF7 MOV R7,#20 DEC 26H DEC 27H DEC 28H DEC 29H DEC 2AH DEC 2BHHHF7:POP PSW POP ACC RETI TSH:PUSH ACC PUSH PSW MOV P2,#00HHHF14:I
22、NC 2CH MOV A,2CH CJNE A,#1,HHF8 MOV P1,#0B3H SJMP HHF11HHF8:CJNE A,#2,HHF9 MOV P1,#0B6H SJMP HHF11HHF9:CJNE A,#3,HHF10 MOV P1,#9BHHHF10:MOV 2CH,#00HHHF11:JNB P3.3,HHF13 SJMP HHF12HHF13:JB P3.3,HHF14 SJMP HHF13HHF12:JB P1.7,HHF11HHF35:JNB P1.7,HHF35 MOV 2CH,#00H POP PSW POP ACC RETI END ORG 0000H LJM
23、P MAIN ORG 0003H LJMP TIME1 ORG 000BH LJMP TIME2 ORG 0013H LJMP TSH ORG 0030HMAIN:MOV SP,#40H MOV P2,#00H MOV P1,#0FFH MOV 20H,#08H MOV 21H,#02H MOV 22H,#00H MOV 23H,#12H MOV 24H,#02H MOV 25H,#00H CLR C MOV A,20H SUBB A,24H MOV 25H,A CLR C MOV A,23H SUBB A,21H MOV 22H,A MOV 26H,#00H MOV 27H,#00H MOV
24、 28H,#00H MOV 29H,#00H MOV 2AH,#00H MOV 2BH,#00H MOV 2CH,#00H MOV 2DH,#00H MOV 2EH,#00H MOV 30H,#00H MOV 31H,#00H MOV 32H,#00H MOV 33H,#00H MOV TCON,#00H MOV IE,#87H MOV TMOD,#01H MOV TH0,#3CH MOV TL0,#0B0H MOV R7,#20 SETB TR0HHF0:MOV 26H,20H MOV 2BH,25H MOV P1,#9EHHHF1:ACALL DISP1 MOV A,2BH CJNE A,
25、#0,HHF1 MOV 2AH,24H MOV P1,#0AEHHHF2:ACALL DISP2 MOV A,2AH CJNE A,#0,HHF2 MOV 28H,22H MOV 29H,23H MOV P1,#0B3HHHF3:ACALL DISP3 MOV A,28H CJNE A,#0,HHF3 MOV 27H,21H MOV P1,#0B5HHHF4:ACALL DISP4 MOV A,27H CJNE A,#0,HHF4 LJMP HHF0DISP1:MOV A,2BH MOV B,#10 DIV AB MOV 30H,B MOV 31H,A MOV A,26H MOV B,#10
26、DIV AB MOV 32H,B MOV 33H,A ACALL DISP RETDISP2:MOV A,2AH MOV B,#10 DIV AB MOV 30H,B MOV 31H,A MOV A,26H MOV B,#10 DIV AB MOV 32H,B MOV 33H,A ACALL DISP RETDISP3:MOV A,29H MOV B,#10 DIV AB MOV 30H,B MOV 31H,A MOV A,28H MOV B,#10 DIV AB MOV 32H,B MOV 33H,A ACALL DISP RETDISP4:MOV A,29H MOV B,#10 DIV A
27、B MOV 30H,B MOV 31H,A MOV A,27H MOV B,#10 DIV AB MOV 32H,B MOV 33H,A ACALL DISP RETDISP5:MOV 2BH,21H MOV 26H,20H ACALL DISP1 RETDISP6:MOV 2AH,24H MOV 26H,23H ACALL DISP2 RETDISP:MOV R2,#4 MOV R0,#30H MOV R3,#08HHHF5:MOV A,R3 MOV P2,A MOV DPTR,#TABLE MOV A,R0 MOVC A,A+DPTR MOV P0,A ACALL DELAY MOV A,
28、R3 RR A MOV R3,A INC R0 DJNZ R2,HHF5 RETTABLE:DB 3FH,06H,5BH,4FH,66H DB 6DH,7DH,07H,7FH,6FHDELAY:MOV R4,#2FHHHF32:MOV R5,#0AH HHF6:DJNZ R5,HHF6 DJNZ R4,HHF32 RETTIME1:PUSH ACC PUSH PSW INC 2DH INC 2EHHHF33:JB P2.4,HHF15HHF16:JNB P2.4,HHF16 INC 2DHHHF15:JB P2.5,HHF17HHF18:JNB P2.5,HHF18 INC 2EHHHF17:
29、MOV A,2DH CJNE A,#1,HHF19HHF23:ACALL DISP5 JB P2.6,HHF20HHF21:JNB P2.6,HHF21 MOV A,2EH CJNE A,#1,HHF22 INC 20H SJMP HHF23HHF22:MOV 2EH,#00H INC 21H SJMP HHF23HHF20:JB P2.7,HHF24HHF25:JNB P2.7,HHF25 MOV A,2EH CJNE A,#1,HHF26 DEC 20H SJMP HHF23HHF26:MOV 2EH,#00H DEC 21H SJMP HHF23HHF19:MOV 2DH,#00H AC
30、ALL DISP6 JB P2.6,HHF27HHF28:JNB P2.6,HHF28 MOV A,2EH CJNE A,#1,HHF29 INC 23H SJMP HHF19HHF29:MOV 2EH,#00H INC 24H SJMP HHF19HHF27:JB P2.7,HHF24HHF30:JNB P2.7,HHF30 MOV A,2EH CJNE A,#1,HHF31 DEC 23H SJMP HHF19HHF31:MOV 2EH,#00H DEC 24H SJMP HHF19HHF24:JB P1.7,HHF33HHF34:JNB P1.7,HHF34 CLR C MOV A,20
31、H SUBB A,24H MOV 25H,A CLR C MOV A,23H SUBB A,21H MOV 22H,A MOV 26H,20H MOV 27H,21H MOV 28H,22H MOV 29H,23H MOV 2AH,24H MOV 2BH,25H MOV 2DH,#00H MOV 2EH,#00H POP PSW POP ACC RETITIME2:PUSH ACC PUSH PSW MOV TH0,#3CH MOV TL0,#0B0H DJNZ R7,HHF7 MOV R7,#20 DEC 26H DEC 27H DEC 28H DEC 29H DEC 2AH DEC 2BH
32、HHF7:POP PSW POP ACC RETI TSH:PUSH ACC PUSH PSW MOV P2,#00HHHF14:INC 2CH MOV A,2CH CJNE A,#1,HHF8 MOV P1,#0B3H SJMP HHF11HHF8:CJNE A,#2,HHF9 MOV P1,#0B6H SJMP HHF11HHF9:CJNE A,#3,HHF10 MOV P1,#9BHHHF10:MOV 2CH,#00HHHF11:JNB P3.3,HHF13 SJMP HHF12HHF13:JB P3.3,HHF14 SJMP HHF13HHF12:JB P1.7,HHF11HHF35:JNB P1.7,HHF35 MOV 2CH,#00H POP PSW POP ACC RETI END付系统总图:
©2010-2024 宁波自信网络信息技术有限公司 版权所有
客服电话:4008-655-100 投诉/维权电话:4009-655-100