该【模拟交通灯控制实验 】是由【utuhlwwue61571】上传分享,文档一共【12】页,该文档可以免费在线阅读,需要了解更多关于【模拟交通灯控制实验 】的内容,可以使用淘豆网的站内搜索功能,选择自己适合的文档,以下文字是截取该文章内的部分文字,如需要获得完整电子版,请下载此文档到您的设备,方便您编辑和打印。交通灯控制实验
——综合性实验
在以往单元电路的基础上综合运用8255A可编程并行接口芯片,8254定时/计数器芯片,中断系统。
学习实际计算机控制系统设计方法。
实验目的
实验原理
在本次实验中,我们利用发光二极管模拟交通灯,实验箱上所用的是双色二极管,红、绿两线均接高电平时发黄光,实验中的发光二极管是利用8255驱动,工作于方式1,。
01
02
03
04
05
南北路口的绿灯,东西路口的红灯同时亮8秒左右。
01
南北路口黄灯闪烁3,同时东西路口的红灯继续亮。
02
南北路口红灯继续亮,东西路口黄灯闪烁3。
04
南北路口红灯亮,东西路口的绿灯同时亮8秒。
03
转①重复
05
设计一个软硬件系统,控制十字路口的红绿灯。 要求:
实验内容及要求
实验分析
为了确保十字路口的车辆顺利畅通地行驶,往往都采用自动控制的交通信号灯来进行指挥交通。其中红灯(R)亮,表示该条道路禁止通行;黄灯(R G)亮表示即将禁行(黄灯是有双色发光二极管红、绿灯同时点亮形成的);绿灯(G)亮表示允许通行。.其中L0,L1,L2,作为东西路口的红绿灯,与PA0,PA1,PA2相连。L5,L6,L7作为南北路口的红绿灯,与PA5,PA6,PA7相连,具体如图所示。8255采用方式1中断方式传送数据,故INTEA=1(即PC6=1),所以C口按位置位/复位字为0DH,而INTRA(即PC3)作为中断申请线向总线的IRQ7作中断申请。PA口要驱动发光二极管,则PA应工作于输出状态,选择工作方式1,所以8255的方式命令字设置为0A0H。利用8254产生一个半秒的发生器可以使红、绿灯保持定时时间亮,黄灯闪的现象。
交通灯状态具体设计思想如下:
实验中要满足两个方向的工作时序:东西方向红灯亮的时间应等于南北方向黄、绿灯亮的时间之和;南北方向红灯亮的时间应等于东西方向黄、绿灯亮的时间之和。具体步骤如下:
。。
前10S中取 南北绿、东西红的数(24H),那么要取10÷=20个此数字。
11S~15S取南北黄灯闪、东西红灯亮的数字(44H,04H),,也就是1S黄灯闪一次,要取10个此数字。
16S~25S取南北红、东西绿的数(81H),同样要取20个此数字,才能保证是此灯亮10秒。
26S~30S取南北红灯亮、东西黄灯闪的数(82H,80H),也就是1S黄灯闪一次,要取10个此数字。
转①重复
1
输入源程序,并检查无误后,保存到E:\。
2
汇编,连接后形成EXE的可执行文件。
3
按图一所示的实验接线图连接实验线路。 检查无误后打开实验箱的电源。
4
执行可执行文件,观察六个发光二极管的状态。在实验结果中说出交通灯的工作时序。
实验步骤
实验接线图
参考流程图
开 始
设置IRQ7的中断向量
开放IRQ7中断
设8255A口方式1输出
将8255的PC6置位
设8253计数器0工作方式3
循环等待
向计数器0送初值500
先送低字节后送高字节
设8253计数器1工作方式3
向计数器1送初值
将数据段中的数从PA口中送出
发中断结束命令
判断是否有键按下?
关闭IRQ7中断
开中断
返回DOS
中断返回
SI=0
比较PA口输出的数
是否为0FFH
SI=0
(B)输出中断服务程序
(A)输出主程序
查考程序
DATA SEGMENT
LED1 DB 24H, 24H, 24H, 24H, 24H, 24H, 24H, 24H,24H, 24H, 24H, 24H, 24H,24H, 24H, 24H, 24H, 24H,24H, 24H
DB 44H,04H,44H,04H,44H,04H ,44H,04H,44H,04H
DB 81H, 81H, 81H, 81H, 81H, 81H, 81H, 81H, 81H, 81H, 81H, 81H, 81H,81H, 81H, 81H, 81H, 81H, 81H, 81H
DB 82H,80H,82H,80H,82H,80H,82H,80H,82H,80H
DB 0FFH
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START: MOV AX,CS
MOV DS,AX
MOV DX,OFFSET INT7
MOV AX,250FH
INT 21H
CLI
模拟交通灯控制实验 来自淘豆网m.daumloan.com转载请标明出处.