汇编语言设计交通灯控制系统.docx
- 文档编号:10442957
- 上传时间:2023-02-11
- 格式:DOCX
- 页数:16
- 大小:81.11KB
汇编语言设计交通灯控制系统.docx
《汇编语言设计交通灯控制系统.docx》由会员分享,可在线阅读,更多相关《汇编语言设计交通灯控制系统.docx(16页珍藏版)》请在冰豆网上搜索。
汇编语言设计交通灯控制系统
学院电子系微机实验课程设计任务书
课题名称
交通灯控制系统的设计
学生
系别
电子信息与电气工程系
专业班级
自动化2班
课题类型
工程技术型
课题意义、
基本要求、
意义:
1.运用所学的微机原理和接口技术知识完成交通灯系统
2.熟悉5233的工作模式
1.选用8086最小工作模式和适当的存储器及接口芯片,编程实现上述工作过程及要求。
用LED显示器显示绿灯延时时间。
2.用相应的发光二极管来代替交通灯,用发光二极管的亮灭显示交通灯的工作情况。
3.系统有启动按钮和停止按钮,按启动按钮后,系统从第一步开始循环,按停止按钮后,无论在那一步,应回到初始状态。
4.画出详细的硬件接线图(3号图)。
5.给出程序的设计思路,画出详细的程序流程框图(3号图)。
6.给出程序清单并加上必要的注释。
完成设计说明书(包括封面、目录、设计任务书、硬件设计思路、硬件原理图、软件设计思路、程序流程框图、程序清单、所用器件型号、总结体会、参考文献等)。
计划与进度要求
(按课程设计周计算)
第一周设计任务:
(1):
明确学习目标,通过讨论研究题目程序。
(2):
三人轮流分工,把问题简单化。
并对实验室的单片机进行熟悉和调试
(3):
对程序进行调试直到正确为止
第二周设计任务:
(4):
构思交通灯的计划书
(5):
上网收取资料,对比和参考后完成课程设计报告
主要参考文献及资料收集准备
1.《微机原理里与接口技术》(第2版)
虎、周佩玲、傅忠谦、编著电子工业
2.《汇编语言程序设计实验指导》
蔡启先,王智文,黄晓璐编著清华大学
3.《汇编语言程序设计》
晓明,白凤凤,雅红编著工业
国防4.《汇编语言实验教程》
坤编著清华大学
5.《汇编语言程序设计教程》(第二版)
卜艳萍,周伟编著清华大学
摘要
随着电子技术的发展,计算机在现代科学技术的发展中起着越来越重要的
作用。
多媒体技术、网络技术、智能信息处理技术、自适用控制技术、数据挖掘与处理技术等都离不开计算机。
本课程设计是基于微机原理与接口技术的简单应用。
运用所学的微机原理和接口技术知识完成交通灯系统。
通过硬件与软件的结合,用我们刚刚学过的汇编语言编写程序模拟分析了现代城市交通控制与管理问题的现状,结合交通的实际情况阐述了交通灯控制系统的工作原理,给出了一种简单实用的交通灯控制系统的硬件、软件电路设计方案。
该系统适用于单主干道的十字路口,。
现假定其主干道为东西方向,次干道为南北方向。
可随意进行更改双向的通行时间,该功能能实现加中断控制和手动控制的方式进行,红绿灯切换时有闪烁功能以警示车辆和行人将进行红绿灯切换。
当有交通堵塞或紧急状况时可进行中断手动控制,使交通安全与交通流畅度得以保证。
关键词:
延迟8255交通灯控制设计
Abstract
Withthedevelopmentofelectronictechnology,computersinthedevelopmentofmodernscienceandtechnologyplayanincreasinglyimportant
EffectMultimediatechnology,networktechnology,intelligentinformationprocessingtechnology,controltechnologyfromtheapplication
DataMiningandprocessingandsocannotdowithoutthecomputer.ThecoursedesignisbasedonMicrocomputerPrincipleandInterfaceTechnologyforsimpleapplications.
TheuseofthecomputerscienceprinciplesandtechnicalknowledgetocompletetheinterfacetrafficlightsystemThroughacombinationofhardwareandsoftware,
Wehavejustlearnedtousetheassemblylanguageprogramtosimulatetheconditionsofmodernurbantrafficcontrolandmanagementofthestatusquo,
Theactualsituationwithtrafficlightcontrolsystemdescribedworkingprinciple,
Asimpleandpracticalgiventhetrafficlightcontrolsystemhardware,softwareThesystemissuitableforasinglemainroadintersection,
.Itisassumedthatthedirectionoftheeast-westtrunkroad,secondaryroadsforthenorth-southdirection.Two-wayfreepassageoftimechanges
Thisfeaturecanachieveplusinterruptcontrolandmanualcontroloftheway,
Flashingtrafficlightswitchingfunctionsasawarningtovehiclesandpedestrianswillbetrafficlightsswitch.
Whenthereistrafficcongestionoranemergencymanualcontrolcanbeinterrupted,sothatthedegreeoftrafficsafetyandtrafficflowcanbeguaranteed.
Keywords:
DelayedTrafficLightControlDesign8255
第一部分引言.......................................
第二部分交通灯设计的简介......................
第三部分交通灯的设计案.......................
第四部分交通灯系统的安装与调试.................
第五部分程序流程图.................................
第六部分设计过程与总结...........................
第七部分附源程序..................................
第八部分参考文献资料..............................
第一部分引言
电子课程设计是电子技术学习中非常重要的一个环节,是将理论知识和实践能力相统一的一个环节,是真正锻炼学生能力的一个环节。
交通灯能保证行人过马路的安全,控制交通状况等优点受到人们的欢迎,在很多场合得到了广泛的应用。
交通灯是采用计算机通过编写汇编语言程序控制的。
红灯停,绿灯行的交通规则。
广泛用于十字路口,车站,码头等公共场所,成为人们出行生活中不可少的必需品,由于计算机技术的成熟与广泛应用,使得交通灯的功能多样化,远远超过老式交通灯,交通灯的数字化给人们生产生活带来了极大的方便,而且大扩展了交通灯的功能。
诸如闪烁警示、鸣笛警示,时间程序自动控制、倒计时显示,所有这些,都是以计算机为基础的。
还可以根据主、次干道的交通状况的不同任意设置各自的不同的通行时间。
或者给红绿色盲声音警示的人性化设计。
现在的交通灯系统很多都增加了智能控制环节,比如对闯红灯的车辆进行拍照。
当某方向红灯亮时,此时相应的传感器开始工作,当有车辆通过时,照相机就把车辆拍下。
要将交通灯系统产品化,应该根据客户不同的需求进行不同的设计,应该在程序中增加一些可以人为改变的参数,以便客户根据不同的需要随时调节交通灯。
因此,研究交通灯及扩大其应用,有着非常现实的意义。
第二部分交通灯设计的简介
十字道口的红绿灯是交通法规的无声命令,是司机和行人的行为准则。
十字道口的交通红绿灯控制是保证交通安全和道路畅通的关键。
当前,国大多数城市正在采用“自动”红绿交通灯,它具有固定的“红灯—绿灯”转换间隔,并自动切换。
它们一般由“通行与禁止时间控制显示、红黄绿三色信号灯和方向指示灯”三部分组成。
在交通灯的通行与禁止时间控制显示中,通常要么东西、南北两方向各50秒;要么根据交通规律,东西方向60秒,南北方向40秒,时间控制都是固定的。
交通灯的时间控制显示,以固定时间值预先“固化”在单片机中,每次只是以一定周期交替变化。
但是,实际上不同时刻的车辆流通状况是十分复杂的,是高度非线性的、随机的,还经常受认为因素的影响。
采用定时控制经常造成道路有效应用时间的浪费,出现绿灯方向车辆较少,红灯方向车辆积压。
它不顾当前道路上交通车辆数的实际情况变化,其最大的缺陷就在于当路况发生变化时,不能满足司机与路人的实际需要,轻者造成时间上的浪费,重者直接导致交通堵塞,导致城市交通效率的下降。
目前,有一种使用“模糊控制”技术控制交通灯的方法。
能够根据十字路口两个方向上车辆动态状况,自动判断红绿灯时间间隔,以保证最大车流量,减少道口的交通堵塞。
但是却不像定时控制,能用数字显示器显示当前灯色剩余时间,以便于驾驶员随时掌握自己的驾驶动作,及时停车或启动。
第三部分交通灯的设计方案
设计中使用了8259中断控制器、8255A可编程并行接口实现了,对南北、东西方向交通的分别计时、分别控制,设计采用定时加中断控制的方式进行,对两个方向车辆的通行时间分别计时,可随意进行更改双向的通行时间。
城市十字交叉路口红绿灯控制系统主要负责控制东西走向和南北走向的红绿灯的状态和转换顺序,关键是各个状态之间的转换和进行适当的时间延时,正是基于以上考虑,采用如下设计:
1.东西方向车辆放行60秒钟。
即东西方向绿灯和南北方向的红灯同时点亮1分钟;
2.1分钟后,东西方向的红(绿)灯闪烁5秒钟,以警示车辆将切换红绿灯。
此时南北方向仍维持红灯点亮。
3.东西方向的红(绿)灯闪烁5秒钟后,转为南北方向放行60秒钟。
即东西方向的红灯和南北方向的绿灯同时点亮60秒钟;
4.南北方向放行60秒钟后,转为南北方向的红(绿)灯闪烁5秒钟,以警示将切换红绿灯。
此时东西方向仍维持红灯点亮。
5.南北方向的红(绿)灯闪烁5秒钟后转为东西方向放行1分钟。
如此循环重复。
3.1电路原理
本课题的设计可通过实验平台上的一些功能模块电路组成,由于各模块电路部已经连接,用户在使用时只要设计模块间电路的连接,因此,硬件电路的设计及实现相对简单。
完整系统的硬件连接如图1所示。
硬件电路由R-S触发器电路、发光二极管模块、8255可编程并行接口模块和紧急中断模块8259组成。
实验的对应接线关图系图如下所示:
3.2.系统原理
3.2.18259A的工作原理
1、数据总线缓冲器:
8259A与系统数据总线的接口,是8位双向三态缓冲器。
CPU与8259A之间的控制命令信息、状态信息以及中断类型信息,都是通过缓冲器传送的。
2、读/写控制逻辑:
CPU通过它实现对8259A的读/写操作。
3、级连缓冲器:
用以实现8259A芯片之间的级连,使得中断源可以由8级扩展至64级。
4、控制逻辑电路:
对整个芯片部各部件的工作进行协调和控制。
5、中断请求寄存器IRR:
8位,用以分别保存8个中断请求信号,当响应的中断请求输入脚有中断请求时,该寄存器的相应位置1。
6、中断屏蔽寄存器IMR:
8位,相应位用以对8个中断源的中断请求信号进行屏蔽控制。
当其中某位置“0“时,则相应的中断请求可以向CPU提出;否则,相应的中断请求被屏蔽,即不允许向CPU提出中断请求。
该寄存器的容为8259A的操作命令字OCW1,可以由程序设置或改变。
7、中断服务寄存器ISR:
8位,当CPU正在处理某个中断源的中断请求时,ISR寄存器中的相应位置1。
8、用以比较正在处理的中断和刚刚进入的中断请求之间的优先级别,以决定是否产生多重中断或中断嵌套。
3.2.28255A的工作原理
1、8255A的部结构:
1)数据总线缓冲器:
这是一个双向三态的8位数据缓冲器,它是8255A与微机系统数据总线的接口。
输入输出的数据、CPU输出的控制字以及CPU输入的状态信息都是通过这个缓冲器传送的。
2)三个端口A,B和C:
A端口包含一个8位数据输出锁存器和缓冲器,一个8位数据输入锁存器。
B端口包含一个8位数据输入/输出锁存器和缓冲器,一个8位数据输入缓冲器。
C端口包含一个8位数据输出锁存器和缓冲器,一个8位数据输入缓冲器(输入没有锁存器)。
3)A组和B组控制电路:
这是两组根据CPU输出的控制字控制8255工作方式的电路,它们对于CPU而言,共用一个端口地址相同的控制字寄存器,接收CPU输出的一字节方式控制字或对C口按位复位字命令。
方式控制字的高5位决定A组的工作方式,低3位决定B组的工作方式。
对C口按位复位命令字可对C口的每一位实现置位或复位。
A组控制电路控制A口和C口上半部,B组控制电路控制B口和C口下半部。
4)读写控制逻辑:
用来控制把CPU输出的控制字或数据送至相应端口,也由它来控制把状态信息或输入数据通过相应的端口送到CPU。
2、引脚信号
8255A的引脚如图7.5所示,分为数据线、地址线、读/写控制线、输入/输出端口线和电源线。
D7~D0(databus):
三态、双向数据线,与CPU数据总线连接,用来传送数据。
(chipselect):
片选信号线,低电平有效时,芯片被选中。
A1,A0(portaddress):
地址线,用来选择部端口。
(read):
读出信号线,低电平有效时,允许数据读出。
(write):
写入信号线,低电平有效时,允许数据写入。
RESET(reset):
复位信号线,高电平有效时,
将所有部寄存器(包括控制寄存器)清0。
PA7~PA0(portA):
A口输入/输出信号线。
PB7~PB0(portB):
B口输入/输出信号线。
PC7~PC0(portC):
C口输入/输出信号线。
VCC:
+5V电源。
GND:
电源地线。
3、8255A的工作方式:
方式0---基本输入输出方式;
方式1---选通输入输出方式;
方式2---双向选通输入输出方式。
第四章交通灯系统的安装与调试
4.1调试过程及相应问题的记录
1、软件延时与定时器计时
软件延时,设计简单,使用方便,但是无法进行精确计时,无法在实际应用中进行使用,本次设计采用了,定时器0进行计时,每10ms产生一个脉冲信号,可以准确的计时并方便8段数码管进行显示
2、使用中断
使用中断比较麻烦,在试验中需要两次加载初始化程序和中断服务程序,并且需要手工指定中断服务地址和中断向量号;但是使用中断可以进行多样化设计,强化程序功能与执行效率。
4.2调试结果
1.东西方向车辆放行60秒钟。
即东西方向绿灯和南北方向的红灯同时点亮1分钟;
2.1分钟后,东西方向的红(绿)灯闪烁5秒钟,以警示车辆将切换红绿灯。
此时南北方向仍维持红灯点亮。
3.东西方向的红(绿)灯闪烁5秒钟后,转为南北方向放行60秒钟。
即东西方向的红灯和南北方向的绿灯同时点亮60秒钟;
4.南北方向放行60秒钟后,转为南北方向的红(绿)灯闪烁5秒钟,以警示将切换红绿灯。
此时东西方向仍维持红灯点亮。
5.南北方向的红(绿)灯闪烁5秒钟后转为东西方向放行1分钟。
如此循环重复。
第五部分程序流程图
第六部分设计过程与总结
此次实习可以说是获益匪浅。
通过查阅了很多资料,了解了许多汇编程序的思想,扩展了自己的视野,不再仅仅局限于书本中几条简短的程序,而且更重要的是明白写程序的态度:
仔细谨慎,精益求精。
在程序中添加了黄灯闪烁,更加醒目。
另外加入能够实现各路口绿灯显示时间不同,适应在主干道和支线路口中使用。
在系统加电调试中,针对一些问题,熟练掌握了根据原理分步测试,将错误之处缩小的最小围。
通过该课程设计,掌握了什么是编译程序,编译程序工作的基本过程及其各阶段的基本任务,熟悉了编译程序总流程框图,了解了编译程序的生成过程、构造工具及其相关的技术对课本上的知识有了更深的理解,课本上的知识师机械的,表面的。
通过把该算法的容,算法的执行顺序在计算机上实现,把原来以为很深奥的书本知识变的更为简单,对实验原理有更深的理解。
而且在设计中,把死板的课本知识变得生动有趣,激发了学习的积极性。
把学过的计算机编译原理的知识强化,能够把课堂上学的知识通过自己设计的程序表示出来,加深了对理论知识的理解。
以前对与计算机操作系统的认识是模糊的,概念上的,现在通过自己动手做实验,从实践上认识了操作系统是如何处理命令的,如何协调计算机部各个部件运行,对计算机编译原理的认识更加深刻。
课程设计中程序比较复杂,在调试时应该仔细,在程序调试时,注意指针,将不必要的命令去除。
第七部分 附源程序
MY8255_AEQU60H
MY8255_BEQU61H
MY8255_CEQU62H
MY8255_CONEQU63H
CODESEGMENT
ASSUMECS:
CODE
START:
MOVDX,MY8255_CON
MOVAL,82H
OUTDX,AL
PUSHDS;进栈保存数据段
MOVAX,0000H;数据段清零
MOVDS,AX
MOVAX,OFFSETIRQ7;;7号中断偏移地址
MOVSI,003CH
MOV[SI],AX
MOVAX,CS
MOVSI,003EH
MOV[SI],AX
POPDS;出栈
INAL,21H;读8259中断屏蔽字
ANDAL,7FH;开放8259中断IRQ7
OUT21H,AL;输出到8259地址
MOVDX,MY8255_A;放初值南北红灯亮,
MOVAL,003H
OUTDX,AL
MOVDX,MY8255_C;东西绿灯亮
MOVAL,00CH
OUTDX,AL
CALLDELAYED1;延时10s
MOVBX,6H;循环次数
L1:
MOVDX,MY8255_A
MOVAL,00000011B;南北绿灯亮
OUTDX,AL
MOVDX,MY8255_C
MOVAL,00001100B;
OUTDX,AL
CALLDELAYED2;跳5s
MOVDX,MY8255_A
MOVAL,00001111B
OUTDX,AL
MOVDX,MY8255_C
MOVAL,00001100B
OUTDX,AL
CALLDELAYED2
DECBX
JNZL1;闪烁5秒
MOVDX,MY8255_A
MOVAL,00001100B
OUTDX,AL
MOVDX,MY8255_C
MOVAL,00000011B
OUTDX,AL
CALLDELAYED1;10s
MOVBX,6H
L2:
MOVDX,MY8255_A
MOVAL,00001100B
OUTDX,AL
MOVDX,MY8255_C
MOVAL,00000011B
OUTDX,AL
CALLDELAYED2;闪5s
MOVDX,MY8255_A
MOVAL,00001100B
OUTDX,AL
MOVDX,MY8255_C
MOVAL,00001111B
OUTDX,AL
CALLDELAYED2;闪5s
DECBX
JNZL2;无条件跳转,循环
JMPSTART;无条件跳转,循环
IRQ7:
MOVDX,MY8255_A;中断服务程序,出现紧急情况
MOVAL,00000011B
OUTDX,AL
MOVDX,MY8255_C
MOVAL,11000011B
OUTDX,AL
CALLDELAYED1;延时10s
MOVAL,20H
OUT20H,AL
IRET;恢复
DELAYED1:
;延时程序10s
MOVAX,30
L3:
MOVCX,0FFFFH
LOOP$
DECAX
JNZL3
RET
DELAYED2:
MOVCX,0FFFFH;延时程序5s
LOOP$
RET
CODEENDS
ENDSTART
第八部分 参考资料
1.《微机原理里与接口技术》(第2版)
虎、周佩玲、傅忠谦、编著电子工业
2.《汇编语言程序设计实验指导》
蔡启先,王智文,黄晓璐编著清华大学
3.《汇编语言程序设计》
晓明,白凤凤,雅红编著工业国防
4.《汇编语言实验教程》
坤编著清华大学
5.《汇编语言程序设计教程》(第二版)
卜艳萍,周伟编著清华大学
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 汇编语言 设计 交通灯 控制系统