微机原理综合实验-交通灯

合集下载

微机原理综合实验报告

微机原理综合实验报告

微机原理综合实验报告目录一.8255并行口实验二.8259中断实验(一)三.8253定时/计数器实验四.A/D转换实验五.步进电机实验六.综合实验:十字路口交通灯实验七.实验体会四.8255并行口实验1.实验目的:(1)学习利用并行接口芯片8255构成并行接口电路的基本方法(2)熟悉掌握并行接口芯片8255的基本性能及在时间应用中的硬件连接、初始化编程方法2.实验内容:编写程序,使8255的PB口为输出口,PA口为输入口,从PA口将K0~K7作为一个字节读入,在从PB口输出这一反码字节。

3.实验程序:CODE SEGMENTASSUME CS:CODESTART:MOV DX,21BH ;8255初始化命令字MOV AL,90HOUT DX,ALBG: MOV DX,218H ;从PA口读入数据IN AL,DXXOR AL,FFH ;求反MOV DX,219HOUT DX,AL ;从PB口输出JMP BGCODE ENDSEND START4.实验框图5. 实验电路图6.实验方法说明通过8255控制字设定PA口为输入口,PB口为数据输出口,读取PA口的数值并通过求反指令将数据取反后,经由PB口输出。

8259中断实验(一)1.实验目的:(1)了解PC机的中断结构及8259中断控制器的初始化(2)熟悉8259中断控制器的工作原理和硬件连线方法(3)了解8259的应用和硬件编程方法了解8259中断屏蔽2.实验内容:编写中断实验程序,主程序使8255的PB口为输出口,输出0FFH,L0~L7指示灯全亮,中断服务程序从PB口输出0FFH,L0~L3亮,L4~L7灭,并延时一段时间后返回主程序。

3.实验程序INT0 EQU 220hINT1 EQU 221hP8255B EQU 219HP8255K EQU 21BHSTACK SEGMENTSTA DB 50 DUP(?)TOP EQU LENGTH STASTACK ENDSCODE SEGMENTASSUME CS:CODE,SS:STACKSTART:CLIMOV AX,TOPMOV SP,AXPUSH DSMOV AX,0000H ;定义IRQ0中断MOV DS,AXMOV AX,OFFSET IRQ0ADD AX,0000HMOV SI,20HMOV [SI],AXMOV AX,CSMOV SI,22HMOV [SI],AXPOP DSMOV AL,13H ;对8259进行初始化ICW1MOV DX,INT0OUT DX,ALMOV AL,8 ;对8259进行初始化ICW2 MOV DX,INT1OUT DX,ALMOV CX,0FFFFHLOOP $MOV AL,9 ;对8259进行初始化ICW4 MOV DX,INT1OUT DX,ALMOV CX,0FFFFHLOOP $MOV DX,INT1MOV AL,0FEH ;对8259进行初始化OCW1OUT DX,ALMOV CX,0FFFFHLOOP $MOV DX,INT0 ;对8259进行初始化OCW2,普通EOI返回MOV AL,20HOUT DX,ALMOV CX,0FFFFHLOOP $STIMOV DX,P8255K ;对8255进行初始化MOV AL,90HOUT DX,ALDSP: MOV AL,0FFHMOV DX,P8255BOUT DX,ALJMP DSPIRQ0: STIMOV CX,0FFFFHLOOP $MOV AL,0FHMOV DX,P8255BOUT DX,ALMOV DX,INT0MOV AL,20HOUT DX,ALMOV CX,0FFFFHLOOP $MOV CX,0FFFFHLOOP $IRETCODE ENDSEND START4.实验框图5. 实验电路图6. 实验方法说明主程序使8255输出高电平,实现L0~L7指示灯全亮。

微机原理课程设计报告交通灯

微机原理课程设计报告交通灯
IN AL,DX
ANDAL,0FH
MOV AH,AL
MOV DX,PTCON8255
MOV AL,88H
OUTDX,AL
MOV DX,PORTC
IN AL,DX
ANDAL,0FH
XORAL,AH
ADD CL,AL
CMP CL,9
JNZ TEST2;闪烁5次
CODE ENDS
END STA
连接实验箱电路,上机调试并对实验现象进行分析,完成实验报告。
MOV DX,PORTA
MOVAL,0
OUTDX,AL
MOV DX,PORTB
MOVAL,0FH
OUTDX,AL
MOV DX,PORTC
MOVAL,0FH
OUT DX,AL;灯初始化完成
STA:MOV DX,PORTA
MOVAL,0A0H
OUTDX,AL
MOV DX,PORTB
MOVAL,0F0H
OUTDX,AL
电路图如下所示:
程序流程图
初始化8255,8253
红灯全亮
绿灯黄灯全灭
南北绿灯亮
东西红灯亮
等待8253延时30s时间是否到?
Y
N
南北绿灯灭
东西红灯不变
南北黄灯闪烁
等待黄灯闪烁5次?
Y
N
南北红灯亮
东西绿灯亮
8253延时30s
东西绿灯灭
黄灯闪烁5次
程序清单
DATA SEGMENT;设置数据段,以及端口地址分配
MOV CX,0
TEST1:MOV DX,PTCON8255 ;检测PB7
MOV AL,82HOUTX,ALMOV DX,PORTB
IN AL,DX

《微机原理与接口技术》课程设计实验报告-交通灯控制功能设计

《微机原理与接口技术》课程设计实验报告-交通灯控制功能设计
7
微机课程设计——交通灯控制系统
中断子程序模块是通过扩充中断源实现的,主要是通过设置 8259 的工作模 式,开放 TR1 和 TR0 的中断,按上开关 K 后,TR0 就发生中断,在 TR0 中断没有 触发的情况下,从 OU1 口输出一个上升沿脉冲,TR1 就中断一次, 程序如下所示:
QUERY: MOV DX,MY8259_OCW3 MOV AL,0CH OUT DX,AL IN AL,DX ;读出查询字 ;判断中断是否已响应 ; 没有响应则继续查询 ; 向 8259 的 OCW3 发送查询命令
《微机原理与接口技术》 课程设计实验报告
题目:交通灯控制功能设计
指导老师:
专业:
班级:
目录
微机课程设计——交通灯控制系统
ห้องสมุดไป่ตู้
一、设计思想和实施方案论述,硬件原理图及分析 1.1、课程设计名称 1.2、课程设计要求 1.3、课程设计目的 二、设计思想和实施方案论述,硬件原理图及分析 2.1、设计思想和实施方案 2.2、硬件原理图 三、典型模块以及典型编程技巧分析 3.1、8086 典型模块分析 3.2、编程技巧分析 四、设计中遇到的问题及解决方法 五、程序清单和程序注释,相关流程图 5.1 程序清单和注释 5.2、实验室及流程图 六、收获与体会 七、参考文献
微机课程设计——交通灯控制系统
MOV OUT 器输出 1HZ 的方波
AL,2 DX,AL ;1.041667MHZ/2000/1000=1HZ, 即计数
数码管的显示是通过调用显示函数实现的, 通过设置 8255 的工作模式, 选择数码管的高位工作, 然后将计数的高位送到数码管, 再选择数码管的低位工 作,然后将计数的低位送到数码管,在 1s 钟内多次扫描就可以消除闪烁,从而 达到理想的计数效果,它的程序如下所示:

微机接口原理--实验二 交通灯的模拟

微机接口原理--实验二 交通灯的模拟

数据总线D0~D7:三态输出输入线,用于将8255与系统数 据总线相连,是8255与CPU接口数据线, 供CPU向8255 读写数据、 命令和状态信息。 片选信号/CS:输入信号,低电平有效。 当/CS为低电平时 CPU选中8255A,可向8255A进行读写;/CS高电平为未选 中。/CS由CPU输出高位地址码(A1~A2)译码得到。 读信号/RD:输入信号,低电平有效。/RD有效,表示CPU 读8255A,即由8255A向CPU传送数据或状态信息。 写信号/WR:输入信号,低电平有效。/WR有效,表示CPU 写8255A,由CPU将控制字或数据写入8255A。 RESET:复位信号, 高电平有效。 RESET有效时, 清除 8255A中所有控制字寄存器内容且将各端口置成输入方式。 地址线A1,A0:端口选择信号。当A1A0=00时,选择端口A; 当A1A0=01时,选择端口B;A1A0=10时,选择端口C; A1A0=11时,选择控制字寄存器。这两条线接到系统地址总线 的A1和A0上。当/CS=0,8255A被选中时,A1、A0用于选择 8255A内部寄存器,以便对它们进行读写操作。
C及状态口地址分别为40H、44H、48H、4CH。
③ 输出方式:将74LS244作为输出缓冲器,一边与 8255A的PC端口相连,另一端与LED相连。C端口的 PC0-PC3与DR1-DR4相连,通过输出端2Y1-2Y4与 LED 的 东 西 南 北 的 红 端 相 连 , C 端 口 的 PC4-PC7 与 DG1-DG4相连,通过输出端1Y1-1Y4与LED的东西南 北的绿端相连。
实验二 模拟交通灯实验
主要内容
并行输入/输出接口芯片8255A 工作原理及使用 模拟交通灯控制原理及方法
一、8255A工作原理及使用

微机原理交通灯控制

微机原理交通灯控制

微机原理交通灯控制微机原理交通灯控制是通过使用微型计算机或微控制器对交通信号灯进行控制的一种方式。

这种控制方式可以提高交通信号灯的准确性、稳定性和灵活性。

微机原理交通灯控制的基本原理是通过微控制器对交通信号灯的亮灭状态进行控制。

微控制器是一种集成了计算机的核心部件(CPU)、存储器(ROM和RAM)、输入输出接口(IO口)等的芯片。

通过编程,可以控制IO口的高低电平来控制交通信号灯的亮灭状态。

首先,设计人员需要根据实际交通需要制定一套交通灯控制方案。

这个方案一般包括每个信号灯的亮灭时间、整个交通流程的时序等等。

通过编程,将这个方案写入到微控制器的存储器中。

然后,通过输入设备(如红外线传感器、按钮等)检测实际交通情况,并将这些信息送入微控制器。

微控制器根据预设的交通灯控制方案,对交通信号灯进行控制。

控制过程一般分为以下几个步骤:1. 系统初始化:微控制器上电后,首先进行初始化设置,包括设置IO口的工作模式、输入输出状态等。

2. 采样输入:通过输入设备采样实际交通情况,如检测车辆和行人的存在与否,或者通过视频流进行图像识别。

3. 运行控制算法:根据控制方案,通过编程实现的算法来决策当前交通信号灯的亮灭状态。

4. 输出控制信号:根据控制算法的决策结果,设置IO口的电平状态,从而控制交通信号灯的亮灭。

5. 延时处理:在切换交通信号灯亮灭状态之间,通常会有一段时间的延时,以保证交通参与者有足够的时间作出反应。

6. 循环运行:以上步骤不断循环执行,从而实现对交通信号灯的持续控制。

微机原理交通灯控制的优点有以下几个:1. 精确控制:通过微控制器的高精度时钟和程序控制,可以精确控制交通信号灯的亮灭时间和切换时机,从而提高交通信号的准确性。

2. 灵活性:通过编程,可以根据实际需要调整交通灯控制方案,适应不同的交通流量变化。

3. 自适应性:微控制器可以根据输入设备的检测结果实时调整交通信号灯的控制策略,从而适应实际交通状况的变化。

北京交通大学微机原理实验报告(yuan)

北京交通大学微机原理实验报告(yuan)

微机原理实验报告隋伟08212013自动化0801目录一、I/O地址译码与交通灯控制实验 (3)二、可编程定时器/计数器(8253) (6)三、中断实验(纯DOS) (11)四、模/数转换器…………………………………………………………18五、串行通讯……………………………………………………………16六、课程综合实验(抢答器) ……………………………………………28七、自主设计实验——LED显示 (32)八、参考文献 (35)一、I/O地址译码与交通灯控制实验一.实验目的通过并行接口8255实现十字路口交通灯的模拟控制,进一步掌握对并行口的使用。

二.实验内容如图5-3,L7、L6、L5作为南北路口的交通灯与PC7、PC6、PC5相连,L2、L1、L0作为东西路口的交通灯与PC2、PC1、PC0相连。

编程使六个灯按交通灯变化规律燃灭。

十字路口交通灯的变化规律要求:(1)南北路口的绿灯、东西路口的红灯同时亮3秒左右。

(2)南北路口的黄灯闪烁若干次,同时东西路口的红灯继续亮。

(3)南北路口的红灯、东西路口的绿灯同时亮3秒左右。

(4)南北路口的红灯继续亮、同时东西路口的黄灯亮闪烁若干次。

(5)转(1)重复。

8255动态分配地址: 控制寄存器: 0C40BHA口地址: 0C408HC口地址: 0C40AH三.程序流程图和程序清单DATA SEGMENTX DB ?DATA ENDSSTACK1 SEGMENT STACKDW 100H DUP(0)STACK1 ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA,SS:STACK1 START: MOV AX,DATAMOV DS,AX;---------------INIT---------------- MOV DX,0EC0BH ;写控制字MOV AL,80HOUT DX,ALL3: MOV DX,0EC0AHMOV AL,24H ;南北绿灯,东西红灯亮OUT DX,ALCALL DELAYCALL DELAY ;长延时,3s左右CALL DELAYCALL DELAYCALL DELAYCALL DELAYCALL DELAYMOV BL,8MOV AL,04HL0: XOR AL,40H ;南北黄灯闪,东西红灯亮OUT DX,ALCALL DELAY ;延时CALL DELAYDEC BL ;闪烁几次JNZ L0CALL DELAYMOV AL,81H ;南北红灯亮,东西绿灯亮OUT DX,ALCALL DELAYCALL DELAYCALL DELAY ;长延时,3s左右CALL DELAYCALL DELAYCALL DELAYCALL DELAYMOV BL,9MOV AL,80HL1: XOR AL,02H ;南北红灯亮,东西黄灯闪OUT DX,ALCALL DELAY ;延时CALL DELAYDEC BLJNZ L1 ;闪烁几次CALL DELAYMOV DL,0FFHMOV AH,06HINT 21HJZ L3 ;六号功能判断若无字符输入ZF=1继续循环;------------------------------MOV AH,4CHINT 21H;-----------延时函数------------DELAY : PUSH CXPUSH DXMOV CX,1FFFHLOP1: MOV DX,0FFFFHLOP2: DEC DXJNZ LOP2LOOP LOP1POP DXPOP CXRETCODE ENDSEND START四.实验遇到的问题和解决方法问题:绿灯灭后黄灯没有出现闪烁的效果,一直保持常亮解决方法:修改程序,通过利用异或和循环指令使绿灯灭、红灯亮后,黄灯口的状态从0到1循环变换,并通过调用延迟子程序,从而实现人眼可辨的黄灯闪的效果。

微机原理交通灯设计

微机原理交通灯设计

辽宁工程技术大学实验报告课程名称:微机原理及接口技术试验项目:有急救车通过的交通灯控制实验实验室:微机原理与应用实验室姓名:李晓岩学号:0605010709 专业班级:自动06-7实验时间:2008/12/7同组学号:0605810103有急救车的交通灯控制实验一.实验目的1.学习掌握多个接口芯片综合应用方法。

2.学习中断技术的基本使用方法。

3.学习模拟交通灯控制的实现方法。

4.学习控制程序的编程方法。

二.实验条件和要求1.用业余时间进行调研,了解交通灯燃灭的规律,并写出调研报告,并在此基础上设计出硬件电路原理图。

2.在设计硬件电路时,要充分利用实验仪上的接口芯片,8086CPU,8255并行接口芯片、发光二极管(红、黄、绿各两个)。

设计或利用接口仪上已有的单脉冲发生器,但脉冲发生器产生的负脉冲来产生中断,进行模拟有急救车通过。

3.编制相应的软件应用程序,并运行调试。

4.写出规范的实验报告。

实验报告用A4纸写出。

调研报告调研时间:2008年11月09日调研地点:葫芦岛老区中心医院交通岗调查对象:王海川、刘国庆—葫芦岛市交警大队警员调研人员:白宁陈九坤调研内容:该十字路口东西方向和南北方向各有交通灯三盏,分别为红色绿色黄色。

经过我们的观察和询问,其亮灭变化规律为:1.东西南北两向起始状态为全红。

-----延续10秒2.东西向绿灯亮,南北向红灯亮。

-----延续30秒3.东西向绿灯灭,黄灯闪,南北向红灯亮。

-----闪烁5秒4.东西向红灯亮,南北向绿灯亮。

-----延续30秒5.东西向红灯亮,南北向绿灯灭,黄灯闪。

-----闪烁5秒6.循环以上步骤。

7.若有急救车通过等特殊情况,东西南北向均为红灯亮,延续十秒。

然后恢复之前状态。

调研分析交通灯历史:19世纪初,在英国中部的约克城,红、绿装分别代表女性的不同身份。

其中,着红装的女人表示我已结婚,而着绿装的女人则是未婚者。

后来,英国伦敦议会大厦前经常发生马车轧人的事故,于是人们受到红绿装启发,1868年12月10日,信号灯家族的第一个成员就在伦敦议会大厦的广场上诞生了,由当时英国机械师德·哈特设计、制造的灯柱高7米,身上挂着一盏红、绿两色的提灯--煤气交通信号灯,这是城市街道的第一盏信号灯。

微机原理课程设计报告---红绿灯

微机原理课程设计报告---红绿灯

一、设计要求(1)南北路口的绿灯、东西路口的红灯同时亮5秒。

(2)南北路口的黄灯闪烁若干次,维持3秒,同时东西路口的红灯。

(3)南北路口的红灯、东西路口的绿灯同时亮5秒。

(4)南北路口的红灯、同时东西路口的黄灯亮烁若干次,维持3秒。

(5)转(1)重复。

(6)紧急情况可以手动控制红绿灯的变换。

一个开关控制南北绿,东西红,另一个按钮南北红,东西绿。

(7)黄灯闪烁时扬声器发声,提醒。

二、设计目的(1)了解红绿灯电路的基本工作原理;(2)了解8086微型计算机的工作过程;(3)学习8086CPU与外围设备的接口技术。

(4)运用微机原理与接口技术、数字电路、汇编语言程序设计等课程学到的知识,掌握微型计算机接口的方法和原理,具备一定的微机应用开发的实践能力,加深对理论课程的理解。

三、设计的具体实现原理框图3.1系统概述本次设计是模拟交通灯实时控制系统,以8086CPU为核心加以并行接口芯片8255、可编程计数器/定时器8253、LED灯、开关等组成的系统。

以LED灯模拟十字路口的红绿灯。

对交通灯控制的实现主要是通过编写汇编语言程序对8255的I/O及8253进行控制,从而实现对灯的亮与灭进行控制。

PC口做输入,读取定时,及应急开关状态。

用8253对扬声器的发声进行控制,利用软件编程给定8253芯片某一频率的方波信号,并且设定8255芯片的门控信号PB0 =1,则可控制扬声器发声。

利用8253的计数器1方式3、计数器0方式0实现对扬声器的控制,以及对于交通灯亮灭时间的精确延时。

3.2 8086CPU介绍8086由执行部件和总线接口部件组成(内部结构图如下图)外部设备8086内部结构图1. 执行部件EU由算术逻辑单元(ALU)、标志寄存器、通用寄存器组和EU控制器等部件组成。

主要功能是执行指令:一般顺序执行,EU不断地从指令队列中取指令连续执行,而省去访问存储器取指令的时间。

需要访问存储器取操作数时,EU将访问地址送给BIU后,将要等待操作数到来后才能继续操作;遇到转移类指令时,要将指令队列中的后续指令作废,等待BIU重新从存储器取出目标地址中的指令代码进入指令队列后,EU才能继续执行指令。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

华北科技学院计算机系综合性实验实验报告

课程名称微机原理与接口技术实验学期2011至2012学年第二学期学生所在系部电子信息工程学院年级09级专业班级自动化B091班学生姓名戴子昱学号15任课教师王德志实验成绩

计算机系制华北科技学院计算机系综合性实验报告

第1页实验报告须知1、学生上交实验报告时,必须为打印稿(A4纸)。页面空间不够,可以顺延。2、学生应该填写的内容包括:封面相关栏目、实验地点、时间、目的、设备环境、内容、结果及分析等。3、教师应该填写的内容包括:实验成绩、教师评价等。4、教师根据本课程的《综合性实验指导单》中实验内容的要求,评定学生的综合性实验成绩;要求在该课程期末考试前将实验报告交给任课教师。综合性实验中,所涉及的程序,文档等在交实验报告前,拷贝给任课教师。任课教师统一刻录成光盘,与该课程的期末考试成绩一同上交到系里存档。5、未尽事宜,请参考该课程的实验大纲和教学大纲。华北科技学院计算机系综合性实验报告

第2页《微机原理与接口技术》课程综合性实验报告

开课实验室:接口实验室2012年06月12日实验题目交通信号灯的控制

一、实验目的(1)通过8255并行接口来控制LED发光二极管的亮灭,并精确延时。

(2)实现黄灯闪烁。(3)通过8255并口控制,人工进行交通灯的转换。

二、设备与环境PC机(windowsXP)实验箱(TPC-386EM)8255A、8253三、实验内容1需要完成的基本控制要求概览:

(1)南北路口的绿灯、东西路口的红灯同时亮5秒。

(2)南北路口的黄灯闪烁若干次,维持3秒,同时东西路口的红灯。(3)南北路口的红灯、东西路口的绿灯同时亮5秒。(4)南北路口的红灯、同时东西路口的黄灯亮烁若干次,维持3秒。(5)转(1)重复。(6)紧急情况可以手动控制红绿灯的变换。一个开关控制南北绿,东西红,另一个按钮南北红,东西绿。(7)黄灯闪烁时扬声器发声,提醒。2交通红绿的设计基本端口规划

8255A口作为灯控制输出,PA0-PA5分别对应东西红黄绿,南北红黄绿,P6与P7口不用;8253B口作为输入,PB0-PB3分别对应启动,停止,东西方向交通管制,南北方向交通管制(高电平有效)。8253C口最低位作为输入,接入8253通道1的产生的。1s方波上下降沿来定时;8253通道0输入时钟为1Mhz,通道0用来分频,通道1用来产生1s方波,通道2不用。接线图1所示华北科技学院计算机系综合性实验报告第3页图1硬件连线示意图3红绿灯变化赋值表

南北方向东西方向说明绿黄红绿黄红传送值

11初值南北绿东西红21H

11南北黄东西红11H

11南北红东西绿0CH

11南北红东西黄0AH

11东西方向交通管制21H11南北方向交通管制0CH华北科技学院计算机系综合性实验报告

第4页4设计思路说明

8255A口作为灯控制输出,B口、C口作为输入,故其控制字为8BH。8253通道0输入时钟为1Mhz,通道0用来分频,并把输出送入通道1的时钟输入端,让通道1用来产生周期1s方波,通道2不用。通道1的方波信号输入给8255的C口最低位,不断读取C口上升沿和下降沿来延时。一个上升沿下降沿正好为一个方波周期1s,在判断计数个数的值,就达到延时几秒的效果。1s方波不但用来延时,也用于黄灯闪烁与声音提示。黄灯闪烁由硬件电路实现:黄灯输出与1s方波通过与门后再接对应黄灯与蜂鸣器,就会产生1s频率的黄灯闪烁与效果,当黄灯无输出时,不会有黄灯闪烁与蜂鸣效果。8255并行端口不用悬空时为高电平,软件上需要屏蔽处理。5程序设计流程图:

图2主程序流程图华北科技学院计算机系综合性实验报告

第5页图3正常运行流程图四、实验结果及分析1实验结果按设计的硬件电路图连接好电路,下载程序在试验箱芯片上。整个红绿灯都不亮,原因是系统还没有启动。按下S0,系统正常运行,交通灯按实验任务要求进行如下变化:1、南北路口的绿灯、东西路口的红灯同时亮5秒。

2、南北路口的黄灯闪烁若干次,维持3秒,同时东西路口的红灯。3、南北路口的红灯、东西路口的绿灯同时亮5秒。4、南北路口的红灯、同时东西路口的黄灯亮烁若干次,维持3秒。5、如上周期变化重复。且黄灯时黄灯闪烁,蜂鸣器有提示。在上面正常运行情况下,按下停止按钮S1,一个亮灭周期完成后,所有灯灭掉,且S1有效时,所有按键均无效,因为停止按钮的优先级别最高。恢复停止键,按下华北科技学院计算机系综合性实验报告第6页S2或者S3按键,便可实现东西管制或者南北管制时的红绿灯状态。同时按下,则四

个路口全为红灯,此时为禁止通行状态。S1、S2的按键不分先后均有效,因为它两的优先级一致,属于同一级别。在停止或者管制或者禁止通行状态下,S0启动按钮无效,其优先级别最低。符合程序设定的优先级:停止最高,禁止通行次之、南北东西管制的优先级又低一级,但它两同级别、正常运行的优先级最低。改变定时初值,可以得到想要的延时时间;综上所述,基本完成设计任务与要求。2具体分析缺点:1、系统停止与交通管制在正常运行状态下需等待一个周期执行完成后才能执行,本例中滞后约0-16s不等。(由按键按下时红绿灯执行到哪一步和整个一个正常运行定时时间而定);2、黄灯闪烁时间不能改变,周期只能1s。(后来设想可以把8253的通道2利用上,把通道0输出接入通道2,利用通道2可以产生不同频率的方波,然后与黄灯输出并联后输出到黄灯与蜂鸣器便可实现不同的闪烁频率和蜂鸣频率);3、定时有小范围误差,存在于指令执行的时间(实际上很小,基本无误差)延时定时程序冗长,编制延时程序,调用延时子程序将效率提高。且可以实现实时停止,管制等功能。

优点:1、黄灯闪烁由硬件实现(与门并后再输出黄灯),不用编写闪烁程序且黄灯

有声音提示;2、红绿灯,红黄灯定时时间可变;3、系统有停止,启动,交通管制控制,禁止通行功能;4、编写程序考虑了软件与硬件仿真的兼容性,只需修改代换地址值即可;5、考虑优先权问题:停止位最高、禁止通行次之、东西和南北管制同级别,正常启动位最低;

3仿真试验台实际连线与效果见图4华北科技学院计算机系综合性实验报告第7页图4硬件实验效果图4汇编源程序:;----------------交通红绿灯控制程序;MODELSMALL;----------------8255地址代换IO8255AEQU288HIO8255BEQU289HIO8255CEQU28aHIO8255CTEQU28bH;控制字地址;------------------8253地址代换IO82530EQU280HIO82531EQU281HIO82532EQU282HIO8253CTEQU283H;控制字地址;----------------定时初值代换HLDTEQU05H;红绿定时5秒HHDTEQU03H;红黄定时3秒CODESEGMENTASSUMECS:CODE;------------------状态扫描开始START:MOVAL,8BHMOVDX,IO8255CTOUTDX,AL;8255工作方式初始化MOVAL,34HMOVDX,IO8253CTOUTDX,AL华北科技学院计算机系综合性实验报告第8页MOVAX,10000MOVDX,IO82530OUTDX,ALMOVAL,AHOUTDX,ALMOVAL,56HMOVDX,IO8253CTOUTDX,ALMOVAL,100MOVDX,IO82531OUTDX,AL;---设定8253通道0与通道1的工作方式与初值,;输出为1hz方波,输入时钟为1MhzXHSM:MOVDX,IO8255BINAL,DXMOVBL,AL;备份一个输入的状态值CMPAL,0;判断有无输入JZXHSMANDAL,02H;屏蔽其他位CMPAL,02HJZTZ;如果停止位按键有效,跳转至停止程序MOVAL,BLANDAL,0CHCMPAL,0CH;判断是否东西南北都禁止通行;JZJZTX;转至停止通行程序MOVAL,BLANDAL,04HCMPAL,04HJZDXGZ;若东西管制有效,则跳转至东西禁止程序MOVAL,BLANDAL,08HCMPAL,08HJZNBGZ;若南北管制有效,则跳转至南北禁止程序JMPZCYX;否则转至正常运行;--------禁止通行代码JZTX:MOVAL,09HMOVDX,IO8255AOUTDX,AL;东西南北都红灯JMPXHSM;循环扫描;---------东西管制DXGZ:MOVAL,21HMOVDX,IO8255AOUTDX,AL;东西红灯,南北绿灯JMPXHSM;---------南北管制NBGZ:MOVAL,0CHMOVDX,IO8255AOUTDX,AL;东西绿灯,南北红灯JMPXHSM;---------停止运行TZ:MOVAL,00H;停止运行

相关文档
最新文档