基于单片机的交通灯的课程设计(共22页).doc

上传人:飞****2 文档编号:13932337 上传时间:2022-05-02 格式:DOC 页数:22 大小:462.50KB
返回 下载 相关 举报
基于单片机的交通灯的课程设计(共22页).doc_第1页
第1页 / 共22页
基于单片机的交通灯的课程设计(共22页).doc_第2页
第2页 / 共22页
点击查看更多>>
资源描述

《基于单片机的交通灯的课程设计(共22页).doc》由会员分享,可在线阅读,更多相关《基于单片机的交通灯的课程设计(共22页).doc(22页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、精选优质文档-倾情为你奉上交通灯控制系统10级电气工程一班 齐志峰 指导老师:宋东亚 杨坤漓 单片机课程设计专心-专注-专业郑州华信学院课程设计任务书题 目: 交通灯控制系统 专 业: 电气工程及其自动化 姓 名: 齐志峰 学 号: 班 级: 电气工程一班 完 成 期 限: 2013年1月5日 指导教师签名: 课程负责人签名: 2012年11月20日主要任务:基于单片机的使用技术,利用中断系统来控制定时器的时间,实现交通灯控制,了解单片机中断系统,掌握中断系统的编写方式。基本要求:(1) 在通常情在一个十字路口的两条主干道上,分别装上一套红、黄、绿 3 种信号灯。(2) 况下,一条主干道为绿灯

2、,另一条主干道为红灯。(3) 采用定时器中断方式控制南北向、东西向交通灯,指示时间为25s,当时间为5s时绿灯亮,为3s时黄灯点亮,25s时间到,交通灯换向。亮灯规律:南北红灯亮20s,东西绿灯亮20s 南北红灯亮3s,东西绿灯闪3s南北红灯闪2s,东西黄灯亮2s南北绿灯亮20s,东西红灯亮20s南北绿灯闪3s,东西红灯亮3s南北黄灯亮2s,东西红灯闪2s郑州华信学院课程设计说明书 题 目:交通灯控制系统 姓 名: 齐志峰 院 (系): 机电工程学院 专业班级: 电气工程一班 学 号: 指导教师: 宋东亚 杨坤漓成 绩: 时间: 2012 年 11 月 17 日至 2012 年 12 月 22

3、 日主要任务:基于单片机的使用技术,利用中断系统来控制定时器的时间,实现交通灯控制,了解单片机中断系统,掌握中断系统的编写方式。基本要求:(4) 在通常情在一个十字路口的两条主干道上,分别装上一套红、黄、绿 3 种信号灯。(5) 况下,一条主干道为绿灯,另一条主干道为红灯。(6) 采用定时器中断方式控制南北向、东西向交通灯,指示时间为25s,当时间为5s时绿灯亮,为3s时黄灯点亮,25s时间到,交通灯换向。亮灯规律:南北红灯亮20s,东西绿灯亮20s 南北红灯亮3s,东西绿灯闪3s南北红灯闪2s,东西黄灯亮2s南北绿灯亮20s,东西红灯亮20s南北绿灯闪3s,东西红灯亮3s南北黄灯亮2s,东西

4、红灯闪2s目录 1 引言 1.1 背景 当今,红绿灯安装在个个道口上,已经成为疏导交通车辆最常见和最有效的手段。但这个技术在19世纪就已经出现了。1858年,在英国伦敦主要街头安装了以燃煤气为光源的红、蓝两色的机械般手势信号灯,用以指挥马车通行。这是世界上最早的交通信号灯。1868年,英国机械工程师纳伊特在伦敦威斯敏斯特区的会议大厦前的广场上,安装了世界上最早的煤气红绿灯。它由红绿两以旋转方式玻璃提灯组成,红色表示“停止”,绿色表示“注意”。1869年1月2日,煤气灯爆炸,是警察受伤,遂被取消!电气启动的红绿灯出现在美国,这种红绿灯由红黄绿三色圆形的投光器组成,1914年始装于纽约市5号大街的

5、一座高塔上。红灯亮表示“停止”,绿灯亮表示“通行”。 信号灯的出现,使得交通得以有效的管理,对于疏导交通流量、提高道路通行能力、减少交通事故有明显效果。1968年,联合国道路交通和道路标志信号协定对各种信号灯的含义作了规定。绿灯时通行信号灯,面对绿灯的车辆可以直行,左转弯和右转弯,除非两一种标志禁止某一种转向。左右转弯车辆必需让合法的正在路口内行驶的车辆和过人行横线的行人优先通行。红灯是禁行信号灯,面对红灯的车辆必需在交叉路口的停车线后停车。黄灯是警告信号,面对黄灯的车辆不能越过停车线,但车辆已经十分接近停车线而不能安全停车的可以进入交叉路口!1.2 交通灯的意义随着社会的进步发展,人来的消费

6、水平的不断的提高。小车也不断的增多,但是道路少,所以车辆行驶变得复杂。为了使车辆行驶变得方便,使交通更安全,采用单片机控制交通灯实现,而且便于管理,对人类社会有重大意义。2 设计方案2.1 设计思路 利用单片机实现交通灯的控制,该任务分以下几个方面: a 实现红、绿、黄灯的循环控制。要实现此功能需要表示三种不同颜色的LED灯分别接在P1个管脚,用软件实现。 b 用数码管显示倒计时。可以利用动态显示或静态显示,串行并出或者并行并出实现。 C 实现急通车。这需要人工实现,编程时利用到中断才能带到目的,只要有按钮按下,那么四个方向全部显示红灯,禁止以诶车辆通行。当情况解除,让时间回到只能隔断处继续进

7、行。2.2 总体设计框图 见图2-1:交通灯循环最小系统倒计时显示强通车控制3 总体设计及核心部件简介3.1总体设计图所有灯全点亮瞬间延迟入口置口地址关闭不相关灯东西路口绿灯亮,南北路口红灯亮,25s倒计时亮,延时20s南北红灯亮3s,东西绿灯闪3s南北红灯闪2s,东西黄灯亮2s南北路口绿灯亮,东西路口红灯亮,25s倒计时延时20s东西红灯亮3s,南北绿灯闪3s南北黄灯亮2s,东西红灯闪2s 3.2硬件设计3.2.1 89cs51单片机概述MCS-51单片机内部结构: 89CS51是MCS-51系列单片机的典型产品,我们以这一代表性的机 型进行系统的讲解。下图是80C51的基本结构: 89CS

8、51单片机包含中央处理器、程序存储器(ROM)、数据存储器(定时/计数器、并行接口、串行接口和中断系统等极大单元及数据总线、地址总线和控制总线等三大总线,现在分别加以说明。*中央处理器:8位CPU,含布尔处理器;时钟电路;总线控制逻辑。中央处理器(CPU)是整个单片机的核心部件,是8位数据宽度的处理器,能处理8位二进制数据或代码,CPU负责控制、指挥和调度整个单元系统的工作,完成运算和控制输入输出等操控。*数据存储器(RAM): 128KB数据存储器(RAM,可再扩64KB);特殊功能寄存器SFR。 89CS51内部有128个8位用户数及存储单元和128个寄存器单元,他们是统一编址的,专营寄存

9、器只能用于存放控制指令数据,用户只能访问,而不能用于存放用户数据,所以,用户能使用的RAM只有128个,可存放读写的数据,运算的中间结果或用户自定义的字型表。*程序存储器(ROM):4KB的程序存储器(ROM/EPROM/Flash,可扩至64KB); 89CS51共有4096个8位掩膜ROM,用于存放用户程序,原始数据或表格。 *定时/计数器(ROM): 89CS51有两个16位的可编程定时/计数器,一时想定时或计数产生中断用于控制程序转向。*并行输入输出(I/O)口: 89CS51共有4组8位I/O口(P0、P1、P2或P3),用于对外数据传输。*全双工串行号: 89CS51内置一个全双行

10、串行通信口,用于和其它设备间的串行数据传输,该串行口既可以用作异步通信收发器,也可以当同步移位器使用。*中断系统: 89CS51具备较完善的中断功能,有两个外中断、两个定时/计数器中断和一个串行中断,客满著不同的控制要求,并具有2级优先级别选择。*时钟电路: 89CS51内置最高频率高达12Hz的时钟电路,用于产生整个单片机运行的脉冲时序,但89CS51单片继续外置震荡电容。单片机的结构有两种类型,一种是程序存储器和数据存储器分开的形式,即哈佛(Harvard)结构,另一种是采用通用计算机广泛使用的程序存储器和数据存储器合二为一的结构,即普林斯顿(Princeton)结构。3.2.2 80C5

11、1单片机的时钟(1)振荡器和时钟电路 80C51内部有一个高增益反相放大器,用于构成振荡器,但要形成时钟脉冲,外部还需附加电路。80C51的时钟产生方法有以下两种。a 内部时钟方式 利用芯片内部的振荡器,然后在引脚XTALl和XTAL2两端跨接晶体振荡器(简称晶振),就构成了稳定的自激振荡器,发出的脉冲直接送入内部时钟电路。外接晶振时,Cl和C2的值通常选择为30pF左右;Cl、C2对频率有微调作用,晶振或陶瓷谐振器的频率范围可在1.2MHz12MHz之间选择。为了减小寄生电容,更好地保证振荡器稳定、可靠地工作,振荡器和电容应尽可能安装得和单片机引脚XTALl和XTAL2靠近。 80C51时钟

12、电路接线方法b 外部时钟方式 芯片类型接地接片外时钟脉输入端接片外时钟脉冲输入端悬空此方式是利用外部振荡脉冲接入XTALl或XTAL2。HMOS和CHMOS单片机外时钟信号接入方式不同。MCS-51系统的引脚说明: MCS-51系列单片机中的8031、8051及8751均采用40Pin封装的双列直接DIP结构,图二是它们的引脚配置,40个引脚中,正电源和底线两根,外置石英振荡器的时钟线两根,4组8位共32个I/O口,中断口线和P3口线复用。P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7RSTRXD/P3.0TXD/P3.1INT0/P3.2INT1/P3.3T0/P3.4Y1

13、/P3.5WR/P3.6RD/P3.7XTAL2XTAL1GNDPDIPVCCP0.0/AD0P0.1/AD1P0.2/AD2P0.3/AD3P0.4/AD4P0.5/AD5P0.6/AD6P0.7/AD7EA/VPPALE/PROGPESNP2.7/A15P2.6/A14P2.5/A13P2.4/A12P2.3/A11P2.2/A10P2.1/A9P2.0/A840393837363534333231302928272625242322211234567891011121314151617181920 8951的抚慰方式可以自动复位,也可以是手动复位,见下图。除此之外,RESET/Vpd还是

14、一复用脚,Vcc掉电其间,此脚可以接上没用电源,以保证单片机内部RAM的数据不丢失。3.2.3硬件电路设计及描述基于单片机设计的振荡电路和复位电路,加显示器件构成单片机系统,单片机通过P2.1P2.6端口及P3.0P3.1端口的第二功能进行数据和信息的传输交换从而实现对外电路的控制 由7405及LED灯构成的交通信号显示电路,由89C51送来信号,经7405分析处理将信号送入LED显示灯由八位移位寄存器74ls164及七段数码管构成的数字显示器件,由单片机输出信号经八位移位寄存器译码后送入数码显管,从而显示数字3.3软件设计3.3.1 程序流程图:如图所示。3.3.2 LED红绿灯显示 当P1

15、端口输出高电平,即P1各端口=1时,根据发光二极管的单向导电性可知,这是发光二极管熄灭;当P1个端口输出低电平,即P1各端口=0时,发光二极管亮。我们可以使用SETB指令使P1各端口输出高电平,使用CLR指令时P各端口输出低电平。至于循环需要软件控制,程序见附录。 4 仿真和调试4.1软件调试4.2硬件调试5 设计体会和总结 在学习单片机理论课时候就感觉到内容很多,知识点很杂,十分繁琐。在老师的讲解下,在通过自己的努力也更进一步了解了单片机的内部构造和工作原理,以及接外部电路的情况。当然光有理论知识那只是“纸上谈兵”,还需要实际动手去实践。真正把所学的用到日常生活中,理论联系实际,做出实物模型

16、。这次单片机实习,我选的是交通灯设计,通过这次设计我感觉到要想做成功,必须花时间多准备,查阅大量资料,认证分析每一步每一个模块要实现的功能,然后分步进行,最后正和一个整体。通过这次实习,我们要对所做的事情有耐性,在编程的时候会有困难,也可能变得不一定成功,所以要经过多次调试,分析,改正,反复去做。 在这次实习中,经历了多次失败的洗礼,我明白在以后学习和实践中,我要努力掌握知识,多动手,多思考,以免在以后的学习工作中犯同样的错误。6参考文献 【 1 】李全利 单片机原理及接口技术 第2版;高等教育出版社【 2 】王文杰 徐文斌 单片机使用技术 ;冶金工业出版社【 3 】THDPJ-1-2实验指导

17、书附录一:程序 SECOND1 EQU 30H ;东西路口计时寄存器SECOND2 EQU 31H ;南北路口计时寄存器DBUF EQU 40H ;显示码缓冲区1TEMP EQU 44H ;显示码缓冲区2LED_G1 BIT P2.1 ;东西路口绿灯LED_Y1 BIT P2.2 ;东西路口黄灯LED_R1 BIT P2.3 ;东西路口红灯LED_G2 BIT P2.4 ;南北路口绿灯LED_Y2 BIT P2.5 ;南北路口黄灯LED_R2 BIT P2.6 ;南北路口红灯 ORG 0000H LJMP START ORG 0100HSTART: MOV TMOD,#01H ;置T0为工作方

18、式1 MOV TH0,#3CH ;置T0定时初值50ms MOV TL0,#0B0H CLR TF0 SETB TR0 ;启动T0 CLR A MOV P1,A ;关闭不相关的LEDLOOP: MOV R2,#20 ;置1s计数初值,50ms*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定

19、时初值50ms MOV TL0,#0B0H DJNZ R2,WAIT1 ;判断1s到否?未到继续状态1 MOV R2,#20 ;置50ms计数初值 DEC SECOND1 ;东西路口显示时间减1s DEC SECOND2 ;南北路口显示时间减1s LCALL DISPLAY DJNZ R3,WAIT1 ;状态1维持20s MOV R2,#5 ;置50ms计数初值5*4=20 MOV R3,#3 ;绿灯闪烁3s MOV R4,#4 ;闪烁间隔200ms MOV SECOND1,#5 ;东西路口计时显示初值5s MOV SECOND2,#5 ;南北路口计时显示初值5s LCALL DISPLAY

20、WAIT2: LCALL STATE2 ;调用状态2 JNB TF0,WAIT2 ;查询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 ;置50ms计数初值 DEC SECOND1 ;东西路口显示时间减1s DEC SECOND2 ;南北路口显示时间减1s LCALL DISPLAY DJNZ R3,WAIT2

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

22、R2,#5 ;置100ms计数初值 DEC SECOND1 ;东西路口显示时间减1s DEC SECOND2 ;南北路口显示时间减1s LCALL DISPLAY DJNZ R3,WAIT3 ;状态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定

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

24、CALL STATE5 ;调用状态5 JNB TF0,WAIT5 ;查询100ms到否 CLR TF0 MOV TH0,#3CH ;恢复T0定时初值100ms MOV TL0,#0B0H DJNZ R4,WAIT5 ;判断200ms到否?未到继续状态5 CPL LED_G2 ;南北绿灯闪 MOV R4,#4 ;闪烁间隔200ms DJNZ R2,WAIT5 ;判断1s到否?未到继续状态5 MOV R2,#5 ;置100ms计数初值 DEC SECOND1 ;东西路口显示时间减1s DEC SECOND2 ;南北路口显示时间减1s LCALL DISPLAY DJNZ R3,WAIT5 ;状态5

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

26、00ms计数初值 DEC SECOND1 ;东西路口显示时间减1s DEC SECOND2 ;南北路口显示时间减1s LCALL DISPLAY DJNZ R3,WAIT6 ;状态6维持2s LJMP LOOP ;大循环STATE1: SETB LED_G1 ;状态1 CLR LED_Y1 ;东西路口绿灯亮 CLR LED_R1 CLR LED_G2 CLR LED_Y2 SETB LED_R2 ;南北路口红灯亮 RETSTATE2: CLR LED_Y1 ;状态2 CLR LED_R1 CLR LED_G2 CLR LED_Y2 SETB LED_R2 ;南北路口红灯亮 RET STATE3

27、: CLR LED_G1 ;状态3 CLR LED_R1 CLR LED_G2 CLR LED_Y2 SETB LED_Y1 ;东西路口绿灯亮 RETSTATE4: CLR LED_G1 ;状态4 CLR LED_Y1 SETB LED_R1 ;东西路口红灯亮 SETB LED_G2 ;南北路口绿灯亮 CLR LED_Y2 CLR LED_R2 RET STATE5: CLR LED_G1 ;状态5 CLR LED_Y1 SETB LED_R1 ;东西路口红灯亮 CLR LED_Y2 CLR LED_R2 RETSTATE6: CLR LED_G1 ;状态6 CLR LED_Y1 CLR LE

28、D_G2 CLR LED_R2 SETB LED_Y2 ;南北路口红灯亮 RET DISPLAY: MOV A,SECOND1 ;数码显示,东西路口计时寄存器 MOV B,#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,#4DP10: MOV DPTR,#LEDMAP MOV A,R

29、0 MOVC A,A+DPTR MOV R1,A INC R0 INC R1 DJNZ R7,DP10 MOV R0,#TEMP MOV R1,#4DP12: MOV R7,#8 MOV A,R0DP13: RLC A MOV P3.0,C CLR P3.1 SETB P3.1 DJNZ R7,DP13 INC R0 DJNZ R1,DP12 RETLEDMAP: DB 3FH,06H,5BH,4FH,66H,6DH;0,1,2,3,4,5 DB 7DH,07H,7FH,6FH,77H,7CH;6,7,8,9,A,B DB 58H,5EH,7BH,71H,0,40H ;C,D,E,F, ,- END 附录二:实验整体电路图 附录三:元器件表器件代码器件名称器件数量7SEG-COM-CAT-GRNCATHODE七段数码显管红绿各一个74LS164.IE八位移位寄存器4个7405反相器6个AT80C51单片机1个CAP电容2个CAP-ELEC极性电容1个RES电阻1个CRYSTAL晶振1个LED显示灯红黄绿各4个POWER/GROUND地/电源若干

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 教案示例

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁