北京工业大学微机原理实验十二交通灯控制实验报告最终版!!!

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

北京工业大学-微机原理-实验十二-交通灯控制-实验报告-最终版!!!

————————————————————————————————作者: ————————————————————————————————日期:

1.实验电路原理图

2.实际电路图

3.实验代码

IOPORT EQU 0 ;定义CPU输出地址

CODE SEGMENT

ASSUME CS:CODE

START:

MOVAL,00100101B ;设置8253用计数器0,只读高字节,方式2(自动重复),10进制

MOV DX, IOPORT+293H

OUT DX,AL

MOV AL,10H ;给计数器0置数1000(00010000 0000 0000)

MOV DX, 290H

OUTDX, AL

MOV AL,10010000B ;初始化8255,1--控制字,A口方式0输入,C口输出,B口输出

MOV DX, IOPORT+28BH

OUT DX,AL

INOUT:

MOV AL, 00100100B ;南北路口绿灯亮,东西路口红灯

MOVDX,IOPORT+28AH ;C口0方式输出,所以可以直接控制PC0~PC7的输出电平

OUT DX, AL

MOV AL,01100001B ;设置8253通道1,只读高字节,方式0(不自动重复),10进制

MOV DX, IOPORT+293H

OUT DX,AL

MOV AL, 50H;置数5000,与计数器0串联即:延时5秒

MOV DX, IOPORT+291H

OUT DX, AL

LOP1:

MOV DX, IOPORT+288H;A口查询,判断延时是否结束

IN AL,DX

CMP AL,0

JELOP1 ;延时结束,顺序执行,否则继续查询

MOVAL, 01000100B;南北路口黄灯亮,东西路口红灯亮

MOVDX,IOPORT+28AH ;C口0方式输出,所以可以直接控制PC0~PC7的输出电平

OUT DX, AL

MOV AL,01100001B ;设置8253通道

MOV DX, IOPORT+293H

OUT DX, AL

MOV AL, 30H ;延时3秒(1000*3000),原理与延时5秒一致

MOVDX, IOPORT+291H

OUTDX,AL

LOP2:

MOVDX,IOPORT+288H;A口查询,判断延时是否结束

IN AL,DX

CMPAL,0

JE LOP2 ;延时结束,顺序执行,否则继续查询

MOV AL, 10000001B ;南北路口红灯亮,东西路口绿灯亮

MOV DX, IOPORT+28AH;C口0方式输出,所以可以直接控制PC0~PC7的输出电平

OUT DX, AL

MOVAL,01100001B;设置8253通道1

MOV DX,IOPORT+293H

OUT DX, AL

MOV AL, 50H ;延时5秒

MOVDX, IOPORT+291H

OUT DX, AL

LOP3:

MOV DX,IOPORT+288H

INAL, DX

CMPAL, 0

JELOP3

MOV AL, 10000010B ;南北路口红灯亮,东西路口黄灯亮

MOVDX, IOPORT+28AH

OUT DX,AL

MOVAL,01100001B ;设置8253通道1

MOV DX, IOPORT+293H

OUT DX, AL

MOV AL, 30H ;延时3秒

MOV DX, IOPORT+291H

OUTDX, AL

LOP4:

MOV DX, IOPORT+288H

IN AL, DX

CMPAL,0

JE LOP4

MOV AH,0BH;检查键盘状态(不等待),AL=FFH 表示有键入,AL=00H 表示无键入

INT21H

CMP AL,0FFH ;有键入,程序退出

JNZ INOUT

MOV AH,4CH

INT 21H

CODE ENDS

ENDSTART

相关文档
最新文档