交通灯设计微机原理.docx
《交通灯设计微机原理.docx》由会员分享,可在线阅读,更多相关《交通灯设计微机原理.docx(14页珍藏版)》请在冰豆网上搜索。
![交通灯设计微机原理.docx](https://file1.bdocx.com/fileroot1/2022-12/6/82cf00e7-c368-433c-9716-f41ea3c9f9ad/82cf00e7-c368-433c-9716-f41ea3c9f9ad1.gif)
交通灯设计微机原理
引言
今天,红绿灯安装在各个道口上,已经成为疏导交通车辆最常见和最有效的手段。
但这一技术在19世纪就已出现了。
信号灯的出现,使交通得以有效管制,对于疏导交通流量、提高道路通行能力,减少交通事故有明显效果。
绿灯是通行信号,面对绿灯的车辆可以直行,左转弯和右转弯,除非另一种标志禁止某一种转向。
左右转弯车辆都必须让合法地正在路口内行驶的车辆和过人行横道的行人优先通行。
红灯是禁行信号,面对红灯的车辆必须在交叉路口的停车线后停车。
黄灯是警告信号,面对黄灯的车辆不能越过停车线,但车辆已十分接近停车线而不能安全停车时可以进入交叉路口。
随着经济的发展,交通运输中出现了一些传统方法难以解决的问题。
道路拥挤现象日趋严重,造成的经济损失越来越大,并一直保持大比例的增长。
由于生活水平的提高,人们对交通运输的安全性及服务水平提出了更高的要求。
在交通中管理引入单片机交通灯控制代替交管人员在交叉路口服务,有助于提高交通运输的安全性、提高交通管理的服务质量。
中国车辆数量不断增加,交通控制在未来的交通管理中起着越来越重要的作用。
智能交通灯的管理比重修一条马路无论在经济、交通运行速率上都有很好的效益、更加节约资源。
使交管人员有更多的精力投入到管理整个城市交通控制,带来更大的经济和社会效益,为创造美好的城市交通形象发挥更多的作用。
课程设计的目的和任务
通过实习进一步了解微型计算机的工作原理,熟悉微机基本输入、输出接口的组成及地址分析方法,了解各种接口芯片,熟悉实验机的软件与硬件系统的组成,掌握简单接口电路的设计原则,并完成有关接口程序的编制、运行和调试工作。
掌握微型计算机应用系统的硬、软件开发方法,输入/输出(I/O)接口技术,应用程序设计技术,并能结合专业设计简单实用的微型计算机应用系统。
针对课堂重点讲授内容使学生加深对微型计算机硬件原理的理解及提高汇编语言程序设计的能力,为以后的毕业设计搭建了微机系统应用平台,提高学开发创新能力。
课程设计的要求
1)设计电路并编写程序使6个灯按交通变化规律亮、灭或闪烁,且将时间显示在数码管上。
十字路口交通灯变化规律要求:
(1)南北路口的绿灯、东西路口的红灯同时亮30秒。
(2)南北路口的黄灯闪烁3次,同时东西路口的红灯继续亮。
(3)南北路口的红灯、东西路口的绿灯同时亮30秒。
(4)南北路口的红灯继续亮,同时东西路口的黄灯闪烁3次。
(5)转1重复。
按照所选课题内容完成设计任务;
2)认真编写程序,并进行程序调试,在实验机上运行,完成接口程序的设计;
3)完成设计报告。
设计思想
设有一个十字路口,1、3为南,北方向,2、4为东西方向,初始态为4个路口的红灯全亮。
之后,1、3路口的绿灯亮,2、4路口的红灯亮,1、3路口方向通车。
延迟30秒后,1、3路口的绿灯熄灭,而1,3路口的黄灯开始闪烁(1HZ)。
闪烁3次后,1、3路口的红灯亮,同时2、4路口的绿灯亮,2、4路口方向开始通车。
延迟30秒时间后,2、4路口的绿灯熄灭,而黄灯开始闪烁。
闪烁3次后,再切换到1、3路口方向。
之后,重复上述过程。
硬件设计
8255芯片
8255可编程并行接口芯片简介:
8255可编程并行接口芯片有三个输入输出端口,即A口、B口和C口,对应于引脚PA7~PA0、PB7~PB0和PC7~PC0。
其内部还有一个控制寄存器,即控制口。
通常A口、B口作为输入输出的数据端口。
C口作为控制或状态信息的端口,它在方式字的控制下,可以分成4位的端口,每个端口包含一个4位锁存器。
它们分别与端口A/B配合使用,可以用作控制信号输出或作为状态信号输入。
图6
(1)A口、B口和C口。
均为8位I/O数据口,但结构上略有差别。
三个端口都可以和外设相连,分别传送外设的输入/输出数据或控制信息。
(2)A、B组控制电路。
这是两组根据CPU的命令字控制8255工作方式的电路。
A组控制A口及C口的高4位,B组控制B口及C口的低4位。
(3)数据缓冲器。
这是一个双向三态8位的驱动口,用于和单片机的数据总线相连,传送数据或控制信息。
(4)读/写控制逻辑。
这部分电路接收MCS-51送来的读/写命令和选口地址,用于控制对8255的读/写。
(5)数据线(8条):
D0~D7为数据总线,用于传送CPU和8255之间的数据、命令和状态字。
(6)控制线和寻址线(6条)
RESET:
复位信号,输入高电平有效。
一般和单片机的复位相连,复位后,8255所有内部寄存器清0,所有口都为输入方式。
WR和RD:
读/写信号线,输入,低电平有效。
当为0时(必为1),所选的8255处于读状态,8255送出信息到CPU。
反之亦然。
(7)CS:
片选线,输入,低电平有效。
(8)A0、A1:
地址输入线。
当为0,芯片被选中时,这两位的4种组合00、01、10、11分别用于选择A、B、C口和控制寄存器。
(9)I/O口线(24条):
PA0~PA7、PB0~PB7、PC0~PC7为24条双向三态I/O总线,分别与A、B、C口相对应,用于8255和外设之间传送数据。
(10)电源线(2条):
VCC为+5V,GND为地线。
74LS373芯片
74LS373是一种带三态门的8D锁存器,其管脚示意图7如下示:
其中:
1D-8D为8个输入端。
1Q-8Q为8个输出端。
图7
LE为数据打入端:
当LE为“1”时,锁存器输出
状态同输入状态;当LE由“1”变“0”时,数据打入锁存器
OE为输出允许端:
当OE=0时,三态门打开;
当OE=1时,三态门关闭,输出高阻。
设计电路图
采用proteus7电路图绘制软件。
如下图:
程序流程图
N
Y
N
Y
N
显示原理
当定时器定时为1秒,时程序跳转到时间显示及信号灯显示子程序,它将依次显示信号灯时间,同时一直显示信号灯的颜色,这时在返回定时子程序定时一秒,在显示黄灯的下一个时间,这样依次把所有的灯色的时间显示完后在重新给时间计数器赋初值,重新进入循环。
8255PA口输出信号接信号灯:
由于发光二极管为共阳极接法,输出端口为低电平,对应的二极管发光,所以可以用置位方法点亮红,绿,黄发光二极管。
8255输出信号与数码管的连接:
LED灯的显示原理:
通过同名管脚上所加电平的高低来控制发光二极管是否点量而显示不同的字形如SP,g,f,e,d,c,b,a管角上加上7FH所以 SP上为0伏,不亮其余为TTL高电平,全亮则显示为8
采用共阴级连接:
其中PC0\PB0-a,
PC1\PB1-b,
PC2\PB2-c,
PC3\PB3-d,
PC4\PB4-e,
PC5\PB5-f,
PC6\PB6-g
PC7\PB7-SP接地
源代码及用8086软件运行
CONTROLEQU7FFFH
PORTAEQU7FFCH
ORG0
START:
MOVDPTR,#7FFFH
MOVA,#80H
MOVX@DPTR,A
MOVDPTR,#7FFCH
MOVA,#0FFH
MOVX@DPTR,A
LOOP:
MOVA,#21H
MOVDPTR,#7FFCH
MOVX@DPTR,A;东西红,南北绿
CALLDELAYLONG
MOVA,#11H
MOVDPTR,#7FFCH
MOVX@DPTR,A;三次闪烁
CALLDELAYSHORT
MOVA,#01H
MOVDPTR,#7FFCH
MOVX@DPTR,A
CALLDELAYSHORT
MOVA,#11H
MOVDPTR,#7FFCH
MOVX@DPTR,A
CALLDELAYSHORT
MOVA,#01H
MOVDPTR,#7FFCH
MOVX@DPTR,A
CALLDELAYSHORT
MOVA,#11H
MOVDPTR,#7FFCH
MOVX@DPTR,A
CALLDELAYSHORT
MOVA,#01H
MOVDPTR,#7FFCH
MOVX@DPTR,A
CALLDELAYSHORT
MOVA,#0CH
MOVDPTR,#7FFCH
MOVX@DPTR,A
CALLDELAYLONG
MOVA,#0AH
MOVDPTR,#7FFCH
MOVX@DPTR,A
CALLDELAYSHORT
MOVA,#08H
MOVDPTR,#7FFCH
MOVX@DPTR,A
CALLDELAYSHORT
MOVA,#0AH
MOVDPTR,#7FFCH
MOVX@DPTR,A
CALLDELAYSHORT
MOVA,#08H
MOVDPTR,#7FFCH
MOVX@DPTR,A
CALLDELAYSHORT
MOVA,#0AH
MOVDPTR,#7FFCH
MOVX@DPTR,A
CALLDELAYSHORT
MOVA,#08H
MOVDPTR,#7FFCH
MOVX@DPTR,A
CALLDELAYSHORT
AJMPLOOP
DELAYLONG:
MOVR7,#40
L1:
MOVR6,#200
L2:
MOVR5,#250
DJNZR5,$
DJNZR6,L2
DJNZR7,L1
RET
DELAYSHORT:
MOVR4,#200
L3:
MOVR3,#250
DJNZR3,$
DJNZR4,L3
RET
END
实验结果与分析
1.南北绿灯,东西红灯。
2.南北黄灯闪烁3次,东西红灯变绿。
仿真结果:
1、即东西方向的绿灯和南北方向的红灯同时点亮15秒钟;
2、15秒钟后,东西方向的黄灯闪烁3次,此时南北方向仍维持红灯点亮。
3、东西方向的黄灯闪烁3次,转为东西方向的红灯和南北方向的绿灯同时点亮15秒钟;
4、 15秒钟后,转为南北方向的黄灯闪烁3次,此时东西方向仍维持红灯点亮。
5、南北方向的黄灯闪烁3次,东西方向的绿灯和南北方向的红灯同时点亮 15秒钟。
如此循环重复。
课程设计总结及心得
通过2星期微机接口的课程设计,我对微机接口芯片有了更进一步的了解。
这次实验通过使用了AT89C51,74LS373及8255芯片实现了交通灯的控制。
由于这学期微机接口这门课学的不是扎实,所以在调试程序中出现了很多问题。
所以刚开始在做这个设计时,我们首先将以前做过的8255可编程的实验重新做了一遍,对这些芯片有了更进一步的理解。
然后通过网上查阅了很多资料和老师的指导,对整个课程设计也有了总体的轮廓,通过学过的知识以及做过的实验,最后有了圆满的结果。
通过本次课程设计我们学到了很多新的东西,极大地拓宽了知识面,锻炼了能力,综合素质得到较大提高,感到收获不小。
也发现了大量问题,有些在设计过程中已经解决,有些还要待今后慢慢学习,只要学习就会有更多的问题,有更多的难点,但也会有更多的收获。
通过这次微机原理的实习,我学到了很多平时在课堂上不能学到的东西。
对于这次选择的交通灯的设计,我最开始抱着的是不能实现的态度,但是在我,经过了三天终于有了一定的思路。
虽然在中途我遇到了机器有问题的难题,但是我还是成功的解决了种种困难,最终取得了成功。
通过这次课程设计,我加深了对8255芯片的工作方式的认识和使用方法,也对微机原理的理解更加的深刻了,对于实际动手能力的锻炼我也得到了很到的提高。
通过此次课程设计,结合所学的《微机原理与接口技术》这门课程的知识,对其应用之一——交通灯控制器进行设计与实现。
总体感觉收获比较多,因为可以将书本上的知识应用到实践当中。
刚开始的时候,翻阅了一些资料,还是没有什么头绪,后来在老师和同学的帮助下,终于找到了入口点,接下来的事情就相对的容易一些了。
首先,把握整个的设计的大概的流程,然后再对每一个分快进行设计,最后进行调试。
在设计的过程中,很重要的一点是要熟悉可编程并行通信接口芯片8255A的初始化及其端口的使用。
此次课程设计感觉收获很多,比如,翻阅资料提高了自学能力,和同学一起讨论汲取别人的长处。
在这次课程设计的整个过程中,做了一次全面、较规范的设计练习,全面地温习了以前所学过的知识,用理论联系实际并结合微机原理课程和解决实际问题,巩固、加深和扩展了有关接口设计方面的知识,加深了对8255A芯片的理解。
同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固,今后必须的在这些方面多加练习。
我非常感激老师对我的指导,才让我更快的完成了本次课程设计。
微型计算机技术及应用课程设计
——交通灯控制
学院:
物电学院
班级:
通信班
姓名:
xxx
学号:
xxxxxx
指导老师:
xxx