交通灯管理电路设计单片机课程设计大学论文.docx
- 文档编号:29733754
- 上传时间:2023-07-26
- 格式:DOCX
- 页数:19
- 大小:892.75KB
交通灯管理电路设计单片机课程设计大学论文.docx
《交通灯管理电路设计单片机课程设计大学论文.docx》由会员分享,可在线阅读,更多相关《交通灯管理电路设计单片机课程设计大学论文.docx(19页珍藏版)》请在冰豆网上搜索。
交通灯管理电路设计单片机课程设计大学论文
概述
随着我国社会经济的发展,城市化、城镇化进程的加快,道路交通堵塞问题日趋严重,如何对交通进行合理的管理和调度而尽可能减少堵车现象成为目前我国很多地方尤其是特大城市急需解决的问题,显然交通灯在其中起着不可缺少的作用。
当今,红绿灯安装在各个道口上,已经成为疏导交通车辆最常见和最有效的手段。
但这一技术在19世纪就已出现了。
1858年,在英国伦敦主要街头安装了以燃煤气为光源的红、蓝两色的机械扳手式信号灯,用以指挥马车通行。
这是世界上最早的交通信号灯。
1868年,英国机械工程师纳伊特在伦敦威斯敏斯特区的议会大厦前的广场上,安装了世界上最早的煤气红绿灯。
它由红绿两种旋转式方形玻璃提灯组成,红色表示“停止”,绿色表示“注意”。
1869年1月2日,煤气灯爆炸,使警察受伤,遂被取消。
电气启动的红绿灯出现在美国,这种红绿灯由红绿黄三色圆形的投光器组成,1914年开始安装于纽约市5号大街的一座高塔上。
红灯亮表示“停止”,绿灯亮表示“通行”。
1918年,又出现了带控制的红绿灯和红外线红绿灯。
带控制的红绿灯,一种是把压力探测器安在地下,车辆一接近红灯便变为绿灯;另一种是用扩音器来启动红绿灯,司机遇红灯时按一下嗽叭,就使红灯变为绿灯。
红外线红绿灯当行人踏上对压力敏感的路面时,它就能察觉到有人要过马路。
红外光束能把信号灯的红灯延长一段时间,推迟汽车放行,以免发生交通事故。
信号灯的出现,使交通得以有效管制,对于疏导交通流量、提高道路通行能力,减少交通事故有明显效果。
1968年,联合国《道路交通和道路标志信号协定》对各种信号灯的含义作了规定。
绿灯是通行信号,面对绿灯的车辆可以直行,左转弯和右转弯,除非另一种标志禁止某一种转向。
左右转弯车辆都必须让合法地正在路口内行驶的车辆和过人行横道的行人优先通行。
红灯是禁行信号,面对红灯的车辆必须在交叉路口的停车线后停车。
黄灯是警告信号,面对黄灯的车辆不能越过停车线,但车辆已十分接近停车线而不能安全停车时可以进入交叉路口。
我国机动车辆发展迅速,而城镇道路建设由于历史等各种原因相对滞后。
道路拥挤、阻塞现象及交通事故常有发生。
如何利用当今自动控制技术,有效地疏导交通,提高城镇交通路口的通行能力,提高车辆速度,减少交通事故是值得我们研究的新课题。
交通灯是城市交通中的重要指挥系统,它与人们日常生活密切相关。
随着人们生活水平的提高,对交通管制也提出了更高的要求,因此提供一个可靠、安全、便捷的多功能交通灯控制系统有着现实的必要性,本文介绍的交通灯控制系统除具有一般的红绿灯显示功能外,还具有倒计时功能,以方便人们的生活需求。
此系统的核心控制器是MCS-51系列单片机中的AT89C51。
本次设计对红绿灯显示系统、按键系统都采用Kell软件调试程序,并给出了调试过程及程序代码。
总体设计及核心器件介绍
总体设计
整个设计以AT89C51单片机为核心,由时钟电路,振荡电路,复位电路,LED数码管显示和交通灯组成。
如图2-1。
时钟电路
交通灯
AT89C51
振荡电路
LED
数
码
上电复位管
电路
图2-1硬件原理框图
AT89C51单片机
AT89C51是美国ATMEL公司推出的系列单片机,将多种功能的8位CPU与FPEROM(快闪可编程/擦除只读存储器)结合在一个芯片上,是一种低功耗、高性能的CMOS控制器,为很多嵌入式控制应用提供了非常灵活而又价格适宜的方案,其性价比远高于同类型芯片。
它与MCS-51指令系统兼容,片内FPERON允许为程序存储器在线重复编程,也可用常规的EPROM编程器编程,可循环写入/擦除1000次。
89C51内含4KB的FPEROM,一般的EEPROM的字节擦除时间和写入时间基本上均为10ms,对于任一个实时控制系统来说,这样长的时间是不可能在线修改程序的。
晶振电路
晶振电路原理图如2-2。
图2-2晶振模块原理图
选取原则:
传统做法,但能够实现所需,即最简单也最实用。
电容选取22μF,晶振为11.0592Hz。
复位电路
复位方式有多种,但本设计采用看门狗芯片X5045,接线图如图2-3所示。
图2-3复位电路原理图
在设定的定时时间内,89C51必须在CS/WDI引脚上产生一个由高到低的电平变化,以清内部定时器,即“喂狗”,否则X5045将产生一个复位信号。
LED数码管显示电路
在单片机应用系统中,数码管显示常用两种方法:
静态显示和动态扫描显示。
所谓静态显示,就是每一个显示器都要占用单独的具有锁存功能的I/O接口用于笔划段字形代码。
这样单片机只能把要显示的字形代码发送到接口电路,就不用管它了,直到要显示新的数据时,再发送新的字形码,因此,使用这种方法单片机中CPU的开销小,可以提供单独锁存的I/O接口电路很多。
所以本设计采用串行转换电路74LS164的静态显示电路。
其电路图如图2-4所示。
图2-4数码管显示静态驱动电路
第1章
硬件设计
引脚说明
MCS-51系列单片机的外型封装有两种方式,双列直插式封装(PDID)和方型封装(PLCC、MQFP)。
8051、8031、8751的40条引脚均采用双列直插式封装。
80C51BH、80C31BH也有采用方型封装的。
方型封装有44条引脚,但其中4条引脚是空脚。
在此我们只介绍双列直插式封装,如图3-1所示。
图3-1 MCS-51单片机引脚结构图
引脚功能说明如下:
(1)主电源引脚VCC和VSS
VCC——(40脚)接+5V电压;
VSS——(20脚)接地。
(2)时钟电路引脚XTAL1和XTAL2
XTAL1(19脚)片内振荡电路输入端,是外接晶体的一个引脚。
当采用外
部振荡器时,此引脚接地。
XTAL2(18脚)片内振荡电路输出端,是外接晶体的另一端。
当采用外部振
荡器时,此引脚接外部振荡源。
(3)控制信号引脚RST/VPD、ALE/PROG、PSEN和EA/VPP
RST/VPD(9脚)当振荡器运行时,在此脚上出现两个机器周期的高电平将
使单片机复位。
推荐在此引脚与VSS引脚之间连接一个约8.2k的下拉电阻,与
VCC引脚之间连接一个约10μF的电容,以保证可靠地复位。
VCC掉电期间,此引脚可接上备用电源,以保证内部RAM的数据不丢失。
当VCC主电源下掉到低于规定的电平,而VPD在其规定的电压范围(5±0.5V)内,VPD就向内部RAM提供备用电源。
ALE/PROG(30脚):
当访问外部存贮器时,ALE(允许地址锁存)的输出
用于锁存地址的低位字节。
即使不访问外部存储器,ALE端仍以不变的频率周期性地出现正脉冲信号,此频率为振荡器频率的1/6。
因此,它可用作对外输出的时钟,或用于定时目的。
然而要注意的是,每当访问外部数据存储器时,将跳过一个ALE脉冲。
ALE端可以驱动(吸收或输出电流)8个LS型的TTL输入电路。
对于EPROM单片机(如8751),在EPROM编程期间,此引脚用于输入编程脉冲(PROG功能)。
PSEN(29脚):
此脚的输出是外部程序存储器的读选通信号。
在从外部程
序存储器取指令(或常数)期间,每个机器周期两次PSEN有效。
但在此期间,每当访问外部数据存储器时,这两次有效的PSEN信号将不出现。
PSEN同样可以驱动(吸收或输出)8个LS型的TTL输入。
EA/VPP(31脚):
当EA端保持高电平时,访问内部程序存储器,但在PC(程序计数器)值超过0FFFH(对851/8751/80C51)或1FFFH(对8052)时,将 自动转向执行外部程序存储器内的程序。
当EA保持低电平时,则只访问外部程序存储器,不管是否有内部程序存储器。
对于常用的8031来说,无内部程序存储器,所以EA脚必须常接地,这样才能只选择外部程序存储器。
对于EPROM型的单片机(如8751),在EPROM编程期间,此引脚也用于施加21V的编程电源(VPP)。
(4)输入/输出(I/O)引脚P0、P1、P2、P3
P0口(39脚至32脚):
是双向8位三态I/O口,在外接存储器时,与地址总线的低8位及数据总线复用,能以吸收电流的方式驱动8个LS型的TTL负载。
P1口(1脚至8脚):
是准双向8位I/O口。
由于这种接口输出没有高阻状
态,输入也不能锁存,故不是真正的双向I/O口。
P1口能驱动(吸收或输出电流)4个LS型的TTL负载。
对8052、8032,P1.0引脚的第二功能为T2定时/计数器的外部输入,P1.1引脚的第二功能为T2EX捕捉、重装触发,即T2的外部控制端。
对EPROM编程和程序验证时,它接收低8位地址。
P2口(21脚至28脚):
是准双向8位I/O口。
在访问外部存储器时,它可以作为扩展电路高8位地址总线送出高8位地址。
在对EPROM编程和程序验证期间,它接收高8位地址。
P2可以驱动(吸收或输出电流)4个LS型的TTL负载。
P3口(10脚至17脚):
是准双向8位I/O口,在MCS-51中,这8个引脚还用于专门功能,是复用双功能口。
P3能驱动(吸收或输出电流)4个LS型的TTL负载。
作为第一功能使用时,就作为普通I/O口用,功能和操作方法与P1口相同。
外部总线
由于单片机本身硬件资源有限,在比较复杂的应用场合,其内部资源(如存储器、I/O口或中断源等)往往显得不足,甚至相差很远,这就需要进行外部扩展(尤其是低档的8031,它片内没有程序存储器,且只有P1口可供用户作I/O口,所以,一般情况下,也很难满足要求)。
为满足系统扩展要求,MCS-51单片机系统采用三总线结构,通过三总线和外部扩充部件相连。
三总线分别为地址总线、数据总线和控制总线。
(1)地址总线(AB):
地址总线宽为16位,因此,其外部存储器直接寻址为64K字节,16位地址总线由P0口经地址锁存器提供8位地址(A0至A7);P2口直接提供8位地址(A8至A15)。
(2)数据总线(DB):
数据总线宽度为8位,由P0提供。
(3)控制总线(CB):
由P3口的第二功能状态和4根独立控制线RESET、EA、ALE、PSEN组成。
交通灯电路
设计中采用发光二极管作为交通灯来使用,单片机的I/O接口直接和交通灯(发光二极管)连接。
在十字路口的四组红、黄、绿三色交通灯中,东西方向道路上的两组同色灯连接在一起,南北方向道路上的两组同色的灯也彼此连接在,受单片机P1.0-P1.5控制。
单片机的I/O接口与交通灯电路的具体连接方式为:
P1.0-P1.2分别接东西方向的红、黄、绿共6个放光二极管,P1.3-P1.5分别接南北方向的红、黄、绿共6个发光二极管。
12个发光二极管采用了共阳极的连接方式,因此I/O口输出低电平时,与之相连的发光二极管会亮,I/O口输出高电平时,相应的发光二极管会灭,如图3-2所示。
图3-2 交通灯电路
第2章软件设计
软件主程序流程图设计
开始
初始化,全部为黄灯并按
照初始化运行
东西红灯亮,南北绿灯亮
调用显示程序,将时间送显示
东西黄灯闪烁,南北黄灯闪烁
调用显示程序,将时间送显示
图4-1 主流程流程图
软件子程序流程图设计
开始
提取倒计时数据的十位数
获取十位数字型码并送到P0口
提取倒计时数据的个位数
获取个位数字码并送到P2口
调用延时子程序
返回
图4-2子程序流程图
第3章系统仿真及调试
Protues软件介绍
Proteus软件是Labcenter Electronics公司的一款电路设计与仿真软件,它包括ISIS、ARES等软件模块,ARES模块主要用来完成PCB的设计,而ISIS模块用来完成电路原理图的布图与仿真。
Proteus的软件仿真基于VSM技术,它与其他软件最大的不同也是最大的优势就在于它能仿真大量的单片机芯片,比如MCS-51系列、PIC系列等等,以及单片机外围电路,比如键盘、LED、LCD等等。
通过Proteus软件的使用我们能够轻易地获得一个功能齐全、实用方便的单片机实验室。
交通灯系统Protues仿真
图5-1程序仿真图
硬件调试
拿到电路板后,首先要检查加工质量,并确保没有任何方面的错误,如短路和断路,尤其要避免电源短路;元器件在安装前要逐一检查,用万用表测其数值,看是否与所用相同;完成焊接后,应先空载上电(芯片座上不插芯片),并检查各引脚的电位是否正确。
若一切正常,方可在断电的情况下将芯片插入,再次检查各引脚的电位及其逻辑关系。
将万用表的探针放到单片机接电源的引脚上检测一下,看是否符合要求。
软件调试问题及解决
软件程序的调试一般可以将重点放在分模块调试上,统调是最后一环。
软件调试可以采取离线调试和在线调试两种方式。
前者不需要硬件仿真器,可借助于软件仿真器即可;后者一般需要仿真系统的支持。
本次课题,Keil软件来调试程序,通过各个模块程序的单步或跟踪调试,使程序逐渐趋于正确,最后统调程序。
仿真部分采用Protus 6 professional软件,此软件功能强大且操作较为简单,可以很容易的实现各种系统的仿真。
首先打开Protus 6 professional软件,在元件库中找到要选用的所有元件,然后进行原理图的绘制;绘制好后再选择wave6000已经编译好的.hex文件,选择运行,观察显示结果,根据显示的结果和课题的要求再修改程序,再运行查,直到满足要求。
总结
作为一名应用物理专业的大二学生,我觉得做单片机课程设计是十分有意义的,而且是十分必要的在已度过的大学时间里,我们大多数接触的是专业课。
我们在课堂上掌握的仅仅是专业课的理论知识,如何去锻炼我们的实践能力?
如何把我们所学的专业基础课理论知识运用到实践中去呢?
我想做类似的课程设计就为我们提供了良好的实践平台。
这次单片机课程设计我们历时五天,时间虽然不算长,但经过这五天的实践和体验下来,我们综合那些理论知识来运用到设计和创新,那些原本感觉枯燥乏味的程序在这次课程设计后,我发现自己在一点一滴的努力中对单片机的兴趣也在逐渐增加。
此次课程设计软件与硬件相结合,考察了我们的学习与实践相结合的能力。
本来还以为编程会很简单的,等到实际操作起来才知道它的复杂性,没有想象中的那么得心应手,理解流程是有思维的前提。
其实本身程序的思维是正确的,只是步骤中有点小错误,所以导致整个程序的结果很乱,在仔细修改程序之后,终于一步步地达到效果了,这个过程让我对单片机有了更深一步的了解。
踉踉跄跄的忙碌了五天,我的单片机课程设计也终将告一段落。
设计仿真也基本达到预期的效果,但由于能力和时间的关系,总是觉得有很多不尽人意的地方。
但是当我看着自己的程序,自己成天相伴的系统能够健康的运行,真是莫大的幸福和欣慰。
我相信其中的酸甜苦辣最终都会化为甜美的甘泉。
总而言之,单片机课程设计对于我们有很大的帮助,我们从中受益匪浅。
参考文献
[1]钱建立,周晓军.智能快速充电器设计与制作[M].北京:
科学出版社,2001.
[2]NiggemannE.Highperformancenickel-metalhydridebatteryforelectricandhybridvehicles[Z].EVS215,Bruxelles,1998.
[3]FederDO.CharacteristicofNickelMetalHydridebattery[J].BatteriesIntentional,1994(18).
[4]刘美俊.基于AT89C2051单片机的智能充电器设计[J].电子质量,2004(7).
[5]SatoNoboru,YagiKazuhiko,SakuraiTakeshi.ControltechnologyofNi-MHbatteriesforelectricvehicles[Z].EVS215,Bruxelles,1998.
[6]张毅刚,彭喜源.MCS-51单片机应用设计[M].哈尔滨:
哈尔滨工业大学出版社,1997.
[7]电子之城:
TL431特性及应用[EB/OL].
[8]童诗白,华成英.模拟电子技术基础[M].北京:
高等教育出版社,2000.
[9]张国雄,金篆芷.测控电路[M].北京:
机械工业出版社,2000.
[10]阎石.数字电子技术基础[M].北京:
高等教育出版社,1998.
[11]电源网:
用普通单片机实现低成本A/D转换
(二)[EB/OL].
附录1主要源代码
主程序:
ORG 0000H
AJMP STAT
ORG 0100H
STAT:
SETB EA
SETB EX0
SETB IT0
SETB EX1
SETB IT1
MOV SP, #60H
MOV R0, #0EDH 初始化,东西南北均为黄灯
MOV P1, R0 显示5秒
MOV R7, #05
ACALL DISP 调显示子程序
A1:
MOV R0, #0DEH 东西红灯亮,南北绿灯亮
MOV P1, R0 显示25秒
MOV R7, #25
ACALL DISP 调显示子程序
SHANHD:
MOV R7, #5
HD:
MOV R0, #0EDH 点亮东西黄 灯,点亮南北黄灯
MOV P1 , R0
ACALL DISP 调显示子程序
MOV P1, #0FFH 熄灭黄灯黄灯
ACALL DISP
DJNZ R7, HD
A2:
MOV R0, #0F3H 东西绿灯亮,南北红灯亮 MOV P1, R0
MOV R7, #25 显示25秒
ACALL DISP 调显示子程序
SHANHD:
MOV R7, #5
H:
MOV R0, #0EDH 点亮东西黄灯,点亮南北黄灯
MOV P1 , R0 调显示子程序
ACALL DISP
MOV P1, #0FFH 熄灭黄灯所有黄灯
ACALL DISP
DJNZ R7, H
子程序,时间显示程序
DISP:
MOV 40H, R7
NEXT:
MOV A, 40H
MOV B, #10
DIV AB
MOV DPTR, #TABLE
MOVC A, @A+DPTR
MOV P0, A
MOV A, B
MOV A,@A+DPTR
MOV P2,A
ACAL DELY1S
DEC 40H
MOV A, 40H
CJNE A , #00, NEXT
DELY1S:
MOV R5,#100
D2:
MOV R6,#20
D1:
MOV R7,#248
DJNZ R7,$ DJNZ R6,D1
DJNZ R5,D2
RET
TABLE:
DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H
END
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 交通灯 管理 电路设计 单片机 课程设计 大学 论文