交通灯控制系统的设计.docx
- 文档编号:28868305
- 上传时间:2023-07-20
- 格式:DOCX
- 页数:19
- 大小:931.54KB
交通灯控制系统的设计.docx
《交通灯控制系统的设计.docx》由会员分享,可在线阅读,更多相关《交通灯控制系统的设计.docx(19页珍藏版)》请在冰豆网上搜索。
交通灯控制系统的设计
学号:
课程设计
题目
交通灯控制系统的设计
学院
自动化学院
专业
电气工程及其自动化
班级
姓名
指导教师
2014
年
1
月
9
日
课程设计任务书
学生姓名:
专业班级:
电气1107
指导教师:
工作单位:
自动化学院
题目:
交通灯控制系统的设计
初始条件:
8086CPU、8255A并行通信接口、8253定时器/计数器接口(可选)、七段LED数码管接口、外围电路芯片及元器件。
要求完成的主要任务:
(包括课程设计工作量及其技术要求,以及说明书撰写等具体要求)
1.设有一个十字路口,1、3分别为南北方向,2、4分别为东西方向。
初始态为4个路口的红灯全亮。
2.交通灯亮灭规律:
(1)按下“开始”按钮,数码管清零后开始每秒刷新,延迟2秒后,1、3路口的绿灯亮,2、4路口的红灯亮,南北方向通车;
(2)南北通车60秒后,绿灯熄灭,期间LED数码管进行时间显示;
(3)1、3路口的黄灯开始闪烁5次(间隔1秒)后,期间LED数码管进行时间显示,1、3路口红灯亮,2、4路口的红灯灭、绿灯亮,东西方向开始通车;
(4)东西通车60秒后,2、4路口的绿灯熄灭,期间LED数码管进行时间显示
(5)黄灯闪烁5次(间隔1秒)后,期间LED数码管进行时间显示,再切换到1、3路口。
重复上述过程。
3.任意时刻按“停止”键,整个模拟过程结束。
4.撰写课程设计说明书。
内容包括:
摘要、目录、正文、参考文献、附录(程序清单)。
正文部分包括:
设计任务及要求、方案比较及论证、软件设计说明(软件思想,流程,源程序设计及说明等)、程序调试说明和结果分析、课程设计收获及心得体会。
时间安排:
12月26日-----12月28日查阅资料及方案设计
12月29日-----1月2日编程
1月3日-----1月7日调试程序
1月8日-----1月9日撰写课程设计报告
指导教师签名:
年月日
系主任(或责任教师)签名:
年月日
目录
摘 要 1
1.交通灯设计课题简介2
1.1交通的控制系统概述2
1.2设计要求及其目的2
1.3设计思想2
2.硬件电路元件介绍3
2.1核心芯片8086微型计算机3
2.2可编程并行接口82554
3.硬件电路设计7
3.1设计的总方案7
3.2LED显示电路设计8
3.3发光二极管组成的灯控电路设计8
3.4键盘电路设计9
4.软件设计..........................................................................................................10
4.1软件设计思路10
4.2流程图11
4.3程序清单12
5.课程设计心得体会15
参考文献15
本科生课程设计评定表
摘 要
城市交通控制系统是用于城市交通数据监测、交通信号灯控制与交通疏导的计算机综合管理系统,它是现代城市交通监控指挥系统中最重要的组成部分。
本系统是一个在PC机中用软件模拟交通灯控制电路的一个屏显系统,才用汇编语言在CRT显示环境下实现,界面简单明了,能够实现简单交通灯的模拟。
运用所学的微机原理和接口技术知识完成交通灯系统。
通过硬件与软件的结合,用我们刚刚学过的汇编语言编写程序模拟分析了现代城市交通控制与管理问题的现状,结合交通的实际情况阐述了交通灯控制系统的工作原理,给出了一种简单实用的交通灯控制系统的硬件、软件电路设计方案。
该系统适用于单主干道的十字路口,。
现假定其主干道为东西方向,次干道为南北方向。
可随意进行更改双向的通行时间,该功能能实现加中断控制和手动控制的方式进行,红绿灯切换时有闪烁功能以警示车辆和行人将进行红绿灯切换。
当有交通堵塞或紧急状况时可进行中断手动控制,使交通安全与交通流畅度得以保证。
关键词:
80868255数码管
1.交通灯设计课题简介
1.1交通的控制系统概述
十字道口的交通红绿灯控制是保证交通安全和道路畅通的关键。
当前,国内大多数城市正在采用“自动”红绿交通灯,它具有固定的“红灯—绿灯”转换间隔,并自动切换。
它们一般由“通行与禁止时间控制显示、红黄绿三色信号灯和方向指示灯”三部分组成。
本系统是由键盘、LED显示、交通灯演示系统组成。
系统包括基本的交通灯的功能。
系统除基本交通灯功能外,还具有倒计时、时间设置以及根据具体情况手动控制等功能。
1.2设计要求及其目的
通过实习进一步了解微型计算机的工作原理,熟悉微机基本输入、输出接口的组成及地址分析方法,了解各种接口芯片,熟悉试验机的软件与硬件系统的组成,掌握简单接口电路的设计原则,并完成有关接口程序的编制、运行和调试工作,实现任务书上的要求。
1.3设计思想
设计中使用了8088/8086和8255A可编程并行接口实现了,对南北、东西方向交通的分别计时、分别控制,设计采用定时加中断控制的方式进行,对两个方向车辆的通行时间分别计时,可随意进行更改双向的通行时间。
(1)交通灯采用红、黄、绿三色发光二极管构成交通灯亮灭规律;四个方向红灯亮(延时)南、北方向绿灯亮60秒;南、北方向绿灯灭,黄灯闪烁5次;南、北方向红灯灭,东、西方向的绿灯亮60秒,黄灯闪烁5次(延时),南、北方向绿灯亮60秒重复;
(2)用数码管倒计时显示时间;
(3)绘制电路原理图;
(4)根据要求编程。
2.硬件电路元件介绍
2.1核心芯片8086微型计算机
由于8255A与8086CPU是以低八位数据线相连接的,所以应该是8255A的A1、A0线分别与8086CPU的A2、A1线相连,而将8086的A0线作为选通信号。
如果是按8255A内部地址来看,则在图中它的地址是PA口地址即(CS+000H),PB口地址为(CS+001H),PC口地址为(CS+002H),命令控制口地址为(CS+003H),其中,CS为8255片选信号
的首地址;若是按8086CPU地址来看,则8255A的地址是PA口地址即(CS+000H),PB口地址为(CS+002H),PC口地址为(CS+004H),命令控制口地址为(CS+006H)。
当CS=0288H,则PA口地址为0288H,PB口地址为028AH,PC口地址为028CH,命令控制口地址为028EH。
下面,分析8086各个引脚的连接方法。
(1)
引脚:
通常用此引线产生片选信号,当为
=1,
=0编码时,在数据总线低8位和偶地址之间进行字节传送(
~
)。
(2)CLK(Clock)时钟信号(输入):
CLK为CPU和总线控制器提供基本的定时脉冲。
时钟周期是非对称的,当它为有效高电平的时间和时钟周期的比为33%时,提供最佳的内部定时。
由8284时钟发生器产生,8086CPU使用的时钟频率,因芯片型号不同,时钟频率不同。
这里采用5MHz。
(3)
(+5V),GND(地):
CPU所需电源
=+5V。
GND为地线。
(4)QS0ALE(AddressLatchEnable)地址锁存允许信号,输出高电平有效,作地址锁存器8282/8283的片选信号,在
地址周期状态,ALE有效,表示AB、DB上传送的是地址信息,将它锁存。
这是由于AB、DB分时复用所需要的,ALE信号线不能悬空。
如图所示,加入2片地址锁存器8282。
(5)RESET:
复位信号,输入,高电平有效。
8086接到复位信号后,停止现行操作,并初始化段寄存器DS,SS,ES,标志寄存器PSW,指令指针IP和指令队列,而使CS=FFFFH。
RESET信号至少保持四个周期以上的高电平,当它变为低电平时(一个下降沿),CPU执行重启过程,8086将从地址FFF0H开始执行指令。
通常FFFF0H单元开始的几个单元中存放一条JMP指令,将入口转到引导和装配程序中,从而实现对系统的初始化,引导监控程序或操作系统程序。
由于出现突然断电或其它情况时,8086可能正在执行交通灯程序,现有的地址丢失,应按下RESET键重新开始。
另外,应将8255A与8086的RESET线相连,保持同步。
(6)MN/
(Minimun/Maximun):
最小、最大工作模式选择信号,输入。
此时MN/
接+5V,构成单处理器系统,系统控制信号由CPU提供。
2.2可编程并行接口8255
8255A是一个40引脚的双列直插式集成电路芯片按功能可把8255A分为三个逻辑电路部分,即:
口电路、总线接口电路和控制逻辑电路。
(1)口电路
8255A共有三个8位口,其中A口和B口是单纯的数据口,供数
与读写有关的控制信号有:
CS—片选信号(低电平有效)、RD—读信号(低电平据I/O使用。
而C口则既可以作数据口,又可以作控制口使用,用于实现A口和B口的控制功能。
数据传送中A口所需的控制信号由C口高位部分(PC7~PC4)提供,因此把A口和C口高位部分合在一起称之为A组;同样理由把B口和C口低位部分(PC3~PC0)合在一起称之为B组。
(2)总线接口电路
总线接口电路用于实现8255A和单片微机的信号连接。
其中包括:
(a)数据总线缓冲器
数据总线缓冲器为8位双向三态缓冲器,可直接和80C51的数据线相连,与I/O操作有关的数据、控制字和状态信息都是通过该缓冲器进行传送。
(b)读/写控制逻辑
WR—写信号(低电平有效)、A0、A1—端口选择信号。
8255A共有四个可寻址的端口(即A口、B口、C口和控制寄存器),用二位地址编码即可实现选择。
(c)控制逻辑电路
控制逻辑电路包括A组控制和B组控制,合在一起构成8位控制寄存器,用于存放各口的工作方式控制字,8255A工作方式及数据I/O操作。
(3)8255A的工作方式
8255A内部结构如图2-1
图2-18255A内部结构图
8255的端口介绍
·A口:
是一个独立的8位I/O口,它的内部有对数据输入/输出的锁存功能。
·B口:
也是一个独立的8位I/O口,仅对输出数据的锁存功能。
·C口:
可以看作是一个独立的8位I/O口;也可看作是两个独立的4位I/O口。
也是仅对输出数据进行锁存。
这三个端口均可看作是I/O口,但它们的结构和功能也稍有不同。
·A组和B组的控制电路
这是两组根据CPU命令控制8255A工作方式的电路,这些控制电路内部设有控制寄存器,可以根据CPU送来的编程命令来控制8255A的工作方式,也可以根据编程命令来对C口的指定位进行置/复位的操作。
A组控制电路用来控制A口及C口的高4位;
B组控制电路用来控制B口及C口的低4位。
·数据总线缓冲器
8位的双向的三态缓冲器。
作为8255A与系统总线连接的界面,输入/输出的数据,CPU的编程命令以及外设通过8255A传送的工作状态等信息,都是通过它来传输的。
·读/写控制逻辑
读/写控制逻辑电路负责管理8255A的数据传输过程。
它接收片选信号
及系统读信号
、写信号
、复位信号RESET,还有来自系统地址总线的口地址选择信号A0和A1。
3.硬件电路设计
3.1设计的总方案
本课题的设计可通过实验平台上的一些功能模块电路组成,由于各模块电路内部已经连接,用户在使用时只要设计模块间电路的连接,因此,硬件电路的设计及实现相对简单。
硬件电路由R-S触发器电路、发光二极管模块、8255可编程并行接口模块和紧急中断模块8259组成。
实验的对应接线方框图如图3-1:
图3-1实验接线方框图
3.2LED显示电路设计
LED显示电路图如图3-2:
图3-2 LED显示电路图
3.3发光二极管组成的灯控电路设计
发光二极管组成的灯控电路图如图3-3:
图3-3灯控电路图
3.4键盘电路设计
键盘控制电路图如图3-4:
图3-4键盘控制电路图
.
4.软件设计
4.1软件设计思路
运用8088与8255相连,然后通过LED进行交通灯倒计时的显示,8255可编程并行接口实现了,采用C端口控制,对南北、东西方向交通的分别计时、分别控制,城市十字交叉路口红绿灯控制系统主要负责控制东西走向和南北走向的红绿灯的状态和转换顺序,关键是各个状态之间的转换和进行适当的时间延时,正是基于以上考虑,在设计过程中,采用共阳极74HC164驱动的LED显示电路设计,灯亮灭的情况刚好与芯片8255A的C端口输出情况相反,即若输出为1时,相应灯时灭的,即若输出为0时,相应的灯是亮的,在实验中,用高三位控制南北方向的绿、黄、红,而用低三位控制东西方向的绿、黄、红。
例如:
MOVAL,01100101B,D7,D6,D5分别控制南北的绿,黄,红灯,而D2,D1,D0分别控制东西方向的绿,黄,红灯,因此就是南北绿灯亮,东西黄灯亮。
4.2流程图
交通灯显示程序流程图如图4-1:
图4-1交通灯显示程序流程图
4.3程序清单
一、灯控和延时程序
CODESEGMENT
ASSUMECS:
CODE
C8255EQU0202H;8255的C端口地址
K8255EQU0203H;8255的控制口地址
org1000H
START:
MOVAL,80H
MOVDX,K8255
OUTDX,AL
MOVDX,C8255
LOOP1:
MOVAL,66H;东西绿,南北红灯
OUTDX,AL
CALLDELAY1;调用长延时
MOVCX,5;东西黄灯闪烁,南北红灯
LOOP2:
MOVAL,0A6H;黄灯亮
OUTDX,AL
CALLSDELAY;调用短延时
MOVAL,0E6H;黄灯灭
OUTDX,AL
CALLSDELAY;短延时
LOOPLOOP2
MOVAL,0C3H;东西红,南北绿
OUTDX,AL
CALLDELAY1;长延时
MOVCX,5;东西红灯,南北黄灯闪烁
LOOP3:
MOVAL,0C5H;黄灯亮
OUTDX,AL
CALLSDELAY;短延时
MOVAL,0C7H
OUTDX,AL
CALLSDELAY
LOOPLOOP3
JMPLOOP1;循环
DELAY1PROC;60延时子程序
PUSHCX
MOVCX,40
DEL1:
CALLSDELAY
LOOPDEL1
POPCX
RET
DELAY1ENDP
;1S延时程序
SDELAYPROC;定义一个近过程
PUSHBX;保护BX原内容
PUSHCX;保护cx内容
MOVBL,100;外循环次数
NEXT:
MOVCX,8334;内循环次数10ms计时
W10MS:
LOOPW10MS;判断cx是否为0则循环
DECBL;减循环次数
JNZNEXT;判断bx是否为0,进行下次循环
POPCX;恢复cx内容
POPBX;恢复bx内容
RET;过程返回
DELAYENDP;结束
CODEENDS
ENDSTART
二、键盘扫描程序
KEY_SCAN:
;识别键盘按键有无的子程序
MOVP1,#0F0H;置列线扫描为0,行扫描为1
MOVA,P1;读出P1口
ANLA,#0F0H;取出高四位
MOVB,A;高四位存到B
MOVP1,#0FH;置列线扫描为1,行扫描为0
MOVA,P1;读出P1口
ANLA,#OFH;取出低四位
ORLA,B;高四位与低四位逻辑或运算
CJNEA,#0FFH,KEY_IN1;如果为0FF为没有按下
RET;
KEY_IN1:
;识别具体按键子程序
MOVB,A;按键特征码暂存在B
MOVDPTR,#KEYTABLE;
MOVR3,#0FFH;
KEY_IN2:
;
INCR3;顺序码+1
MOVA,R3;
MOVCA,@A+DPTR;查表
CJNEA,B,KEY_IN3;比较,如果相同则找到按键特征码
MOVA.R3;找到特征码后,取出顺序码
MOV30H,A;存入30H
RET;
KEY_IN3:
;
CJNEA,#00H,KEY_IN2;没结束,继续查询
RET;00H为结束码
KEY_TABLE:
DB0EEH,0EDH,0EBH,0E7H,0DEH;0,1,2,3,4顺序码
DB0DDH,0DBH,0D7H,0BEH,0BDH;5,6,7,8,9顺序码
DB0BBH,0B7H,07EH,O7BH,077H;A,B,C,D,E,F顺序码
DB00H;结束码
5.课程设计心得体会
微机的应用已渗透到生活中的方方面面,利用微机,以前难以实现的东西轻而易举地成为现实。
然而,作为工科学生,要了解微机的内部结构、系统构成、指令系统、输入输出接口、存储器和接口的扩展等等。
任何一个计算机系统都是一个复杂的整体,学习计算机原理是要涉及到整体的每一部分。
讨论某一部分原理时有要涉及到其它部分的工作原理。
这样一来,不仅不能在短时间内较深入理解计算机的工作原理,而且也很难孤立地理解某一部分的工作原理。
所以,在循序渐进的课堂教学过程中,我总是处于“学习了一些新知识,弄清楚一些原来保留的问题,又出现了一些新问题”的循环中,知道课程结束时,才把保留的问题基本搞清楚。
此次实习可以说是获益匪浅。
通过查阅了很多资料,了解了许多汇编程序的思想,扩展了自己的视野,还用到了微机原理实验课上学到的知识,不再仅仅局限于书本中几条简短的程序,而且更重要的是明白写程序的态度:
仔细谨慎,精益求精。
在系统加电调试中,针对一些问题,熟练掌握了根据原理分步测试,将错误之处缩小的最小范围内。
通过该课程设计,掌握了什么是编译程序,编译程序工作的基本过程及其各阶段的基本任务,熟悉了编译程序总流程框图,了解了编译程序的生成过程、构造工具及其相关的技术对课本上的知识有了更深的理解。
而且在设计中,把死板的课本知识变得生动有趣,把学过的计算机编译原理的知识强化,把课堂上学的知识通过自己设计的程序表示出来,加深了对理论知识的理解。
以前对与计算机操作系统的认识是模糊的,概念上的,现在通过自己动手做实验,从实践上认识了操作系统是如何处理命令的,如何协调计算机内部各个部件运行,对计算机编译原理的认识更加深刻。
参考文献
[1]贾金玲.《微机原理与接口技术》.重庆大学出版社,2004年
[2]蔡启先.《汇编语言程序设计实验指导》.编著清华大学出版社,2003年
[3]彭虎.《微机原理与接口技术》.电子工业出版社,2008年
[4]张坤《汇编语言实验教程》.清华大学出版社,2004年
[5]卜艳萍,周伟.《汇编语言程序设计教程》.清华大学出版社,2006年
本科生课程设计成绩评定表
姓名
性别
专业、班级
课程设计题目:
交通灯控制系统的设计
课程设计答辩或质疑记录:
成绩评定依据:
评定项目
评分成绩
1.选题合理、目的明确(10分)
2.设计方案正确、具有可行性、创新性(20分)
3.设计结果(例如:
系统设计程序、仿真程序)(20分)
4.态度认真、学习刻苦、遵守纪律(15分)
5.设计报告的规范化、参考文献充分(不少于5篇)(10分)
6.答辩(25分)
总分
最终评定成绩(以优、良、中、及格、不及格评定)
指导教师签字:
年月日
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 交通灯 控制系统 设计