- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
10284043-童博-通信1004-微机原理实验报告
微机原理实验报告
学 院: 电子信息工程学院 专业班级: 通信1004 学生姓名: 童博 学 号:
2012 年 12 月 26 日
目 录
一、I/O地址译码与交通灯控制实验…………………………………3
二、可编程定时器/计数器(8253)…………………………………7
三、中断实验(纯DOS)………………………………………………12
四、模/数转换器………………………………………………………18
五、串行通讯 …………………………………………………………21
六、课程综合实验(抢答器) …………………………………………28
一、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动态分配地址: 控制寄存器: 0C40BH
A口地址: 0C408H
C口地址: 0C40AH
三.程序流程图和程序清单
DATA SEGMENT
X DB ?
DATA ENDS
STACK1 SEGMENT STACK
DW 100H DUP(0)
STACK1 ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA,SS:STACK1
START: MOV AX,DATA
MOV DS,AX
;---------------INIT----------------
MOV DX,0ce0BH ;写控制字
MOV AL,80H
OUT DX,AL
L3: MOV DX,0ce0AH
MOV AL,24H ;南北绿灯,东西红灯亮
OUT DX,AL
CALL DELAY
CALL DELAY ;长延时,3s左右
CALL DELAY
CALL DELAY
CALL DELAY
CALL DELAY
CALL DELAY
MOV BL,8
MOV AL,04H
L0: XOR AL,40H ;南北黄灯闪,东西红灯亮
OUT DX,AL
CALL DELAY ;延时
CALL DELAY
DEC BL ;闪烁几次
JNZ L0
CALL DELAY
MOV AL,81H ;南北红灯亮,东西绿灯亮
OUT DX,AL
CALL DELAY
CALL DELAY
CALL DELAY ;长延时,3s左右
CALL DELAY
CALL DELAY
CALL DELAY
CALL DELAY
MOV BL,9
MOV AL,80H
L1: XOR AL,02H ;南北红灯亮,东西黄灯闪
OUT DX,AL
CALL DELAY ;延时
CALL DELAY
DEC BL
JNZ L1 ;闪烁几次
CALL DELAY
MOV DL,0FFH
MOV AH,06H
INT 21H
JZ L3 ;六号功能判断若无字符输入ZF=1继续循环
;------------------------------
MOV AH,4CH
INT 21H
;-----------延时函数------------
DELAY : PUSH CX
PUSH DX
MOV CX,1FFFH
LOP1: MOV DX,0FFFFH
LOP2: DEC DX
JNZ LOP2
LOOP LOP1
POP DX
POP CX
RET
CODE ENDS
END START
四.实验遇到的问题和解决方法
问题:绿灯灭后黄灯没有出现闪烁的效果,一直保持常亮
解决方法:修改程序,通过利用异或和循环指令使绿灯灭、红灯亮后,黄灯口的状态从0到1循环变
文档评论(0)