微机原理与接口技术习题集2(2)
程序中所用到的寄存器。 7. 程序中空缺部分的答案为:
(1) 90H (2) 193H (3) OUT (4) 2000H (5) 2880 (6) 1000H (7) 190H (8) IN (9) BX (10) 0FFH (11) 191H (12) OUT (13) PUSH BX (14) PUSH CX (15) POP CX (16) POP BX (17) LOP2 [注] 延时30s子程序
DELAY 30 SPROC MOV BX,3000 DELAY: MOV CX,2801 WAIT: LOOP WAIT DEC BX JNZ DELAY RET DELAY 30s ENDP
503. 编写8255A以查询方式作为打印机接口的程序 【参考答案】P92 例83
图50是用8255A的PA口作为输出打印数
据口,工作方式0,PC口高4位工作于输出方式,PC6产生STB信号;PC口低4位工
作于输入方式,PC2接收打印机的BUSY信号。设打印字符存放在数据段中有效地址为
2000H的内存单元,8255A的端口地址为
80H~83H。
(1) 8255A的初始化程序: MOV AL,81H OUT 83H,AL MOV AL,0DH OUT 83H,AL TESBY: IN AL,82H TEST AL,04H JNZ TESBY MOV AL,[2000H] OUT 80H,AL MOV AL,0CH OUT 83H,AL INC AL OUT 83H,AL RET
(2) 主程序: MOV AL,15H OUT 43H,AL MOV AL,50H OUT 40H,AL STI LOP: HLT JMP LOP
(3) 中断服务程序为: MOV AL,01H
图50
8255A作为打印机接口
OUT 80H,AL MOV AL,77H OUT 43H,AL MOV AL,50H OUT 41H,AL MOV AL,72H OUT 41H,AL CALL DLSS MOV AL,00H OUT 80H,AL IRET
504. 编写8255A以中断方式作为打印机接口的程序 【参考答案】P93 例84
8255A工作方式1,其电路
如图51所示,这中断向量为2000H:3000H,在2CH、
2DH、2EH、2FH中端口地址设为E0H、E2H、E4H、
图518255A与打印机接口E6H,
控制程序如下: START: MOV AL,84H OUT 0E6H,AL MOV AL,0BH OUT 0E6H,AL XOR AX,AX MOV DS,AX MOV AX,3000H MOV WORD PTR DS:[002CH],AX MOV AX,2000H MOV WORD PTR DS:[002EH],AX MOV AL,05H OUT 0E6H,AL STI …
ROUTINI1R: MOV AL,[DI] OUT 0E0H,AL MOV AL,0AH OUT 0E6H,AL INC AL OUT 0E6H,AL … LRET
505. 通过8255A接口控制8个发光二极管亮、暗的应用实例 【参考答案】P94 例85
通过8255A 端口A输出控5V制8个发光二极管的亮和暗,接口连接如图52所示,8255A的端口地址为80H~83H。要求L7~L0每隔3s点亮1次,点亮的顺序为:图528255A控制8个发光二L7→L6→L5→L4→L3→L2
极管的亮和暗 →L1→L0→L7 周而复
始。
1. 写出8255A 的方式控制字和初始程序,并加以注释。 2. 写出题意要求的程序。
根据图52可知:设置端口A 为方式0输出,其余任意,方式控制字为:
1 00 0 000 即80H ------- ----------- ------- ------- 标志位 A口方式0 输出 任意
初始化程序如下:
MOV AL,80H ;设置8255A方式控制字 OUT 83H,AL
根据题意可知:8个发光二极管L7~L0为共阳极接法,当PAi输出为“0”时,发光二极管亮;输出为“1”时,发光二极管灭。当L7亮时,其余LED都为暗,所以端口A 的控制字为:01111111B,即7FH.因为显示顺序是L7→L6→L5→L4→L3→L2→L1→L0→L7 因此每隔3s,是控制字右移一位,即“0”往右移,程序如下: MOV AH,7FH LOOP: MOV AL,AH OUT 80H,AL ;使L7亮控制字输出 CALL DELAY3s ;延迟3s ROR AH,1 ;控制字小循环右移1位 JMP LOOP
506. 利用8255A作为两机并行通信接口的应用实例 【参考答案】P95 例86
两台PC机通过8255A 构成的借口实现并行传送数据,A机发送数据,B机接收数据。A机一侧的8255A工作于方式1输出,B机一侧的8255A工作于方式0输入。两机的CPU与8255A之间均采用查询方式交换数据。假设两台机传送1KB数据,发送缓冲区为0300:0000H,接收缓冲区为0400:0000H。 硬件连接如图53所示
CPUD0…D7
B机(接收)
CPUD0…D7
A机是发送,所以把A机一侧8255的A 口设定为方式1输出,从PA7~PA0引脚上发送由CPU
路原理
写入A 口的数据,而PA7和PA6引脚作为联络线OBF和ACK。B机是接收数据,将B机一
侧的A口设定为方式0输入,由PA7~PA0接收A机送来的数据,而选用PA4和PA0作 为联络线。假定A、B 两机的通信接口8255的A端口地址均为300H ~303H,驱动程序如下: A机的发送程序段: … MOV AX,0300H MOV ES,AX ;设A机发送缓冲区段基址 MOV BX,0 ;设A机发送缓冲区偏移量 MOV CX,3FFH ;置发送字节计数器 ;对8255A初始化 MOV DX,303H ;指向8255A控制口 MOV AL,10100000H ;设A口为方式1输出 OUT DX,AL MOV AL,00001101B ;这发送中断允许INTEA=1 OUT DX,AL ;发送第一个数据
LOOP0: LOOP1:
MOV MOV OUT INC DEC MOV IN AND JZ MOV MOV OUT INC DEC
DX,300H AL,ES:[BX] DX,AL BX CX
DX,302H AL,DX AL,08H LOOP1 DX,300H AL,ES:[BX] DX,AL BX CX
;向A口写第一个数据,产生第一个OBF信号,送给对方以便获取对方的ACK
;缓冲区指针+1 ;计数器减1
;指向8255A状态
;查询发送中断请求INTRA=1? ;PC3=INTRA=1? ;若无中断请求则等待 ;有请求向A发送数据 ;从缓冲区取数据
;通过A口送第二个数据 ;缓冲区指针加1 ;字节计数器减1
JNZ MOV INT B机接收程序段:
… MOV MOV MOV MOV MOV
MOV
LOOP0
AX,4C00H 21H
AX,0400H ES,AX BX,0
CX,3FFH
DX,303H AL,10011000B
OUT DX,AL MOV AL,00000001B ;置PC0=ACK=1,表示尚未接收数据 OUT DX,AL LOOP0: MOV DX,302H ;指向C口 LOOP1: IN AL,DX ;查A机的OBF(PC4)=0? AND AL,10H ;即查A机是否发来数据? JNZ LOOP1 ;若为发来数据,则等待 MOV DX,300H ;发来数据从A口读数据 IN AL,DX MOV ES:[BX],AL ;存入接收缓冲区 MOV DX,303H ;产生ACK信号,并发回B机 MOV AL,0 ;PC0置“0” OUT DX,AL NOP ;ACK负脉冲宽度 NOP MOV AL,01H ;PC0=1 OUT DX,AL INC BX ;缓冲区指针加1 DEC CX ;计数器减1 JNZ LOOP0 MOV AX,4COOH INT 21H ;送完返回DOS 507. 8255A通过开关控制红、绿、黄灯的亮、暗的应用实例 用8255A控制一组红、绿、黄灯(见图54),反复检测K1、K2,要求由K1、K2的闭合和断开,控制红、绿、黄三灯的点亮。 当K1合,K2合时,黄灯亮; K1合,K2断时,红灯亮; K1断,K2合时,绿灯亮; K1断,K2断时,黄灯亮;
已知8255A的端口地址为60H~63H,试编写初始化程序及控制程序。
;字节未发送完继续 ;功能调用号
;已完,返回DOS
;接收缓冲区段基地址
;接收缓冲区偏移量 ;接收字节计数器 ;8255A初始化 ;8255A控制口
;A口和C口高4位为方式0输入,C口低4位为方式0输出
+5V
亮、暗
【参考答案】P97 例87 初始化程序如下: MOV AL,90H ;初始化 OUT 63H,AL LOP: IN AL,80H AND AL,03H JZ L3 ;K1、K2全合 CMP AL,03H JE L3 ;K1、K2全断 CMP AL,02H JE L2 ;K1合、K2断 CMP AL,01H JE L1 ;K1断、K2合 JMP LOP L1: MOV AL,02H ;亮绿灯 OUT 62H,AL JMP LOP L2: …… 此处隐藏:4014字,全部文档内容请下载后查看。喜欢就下载吧 ……
相关推荐:
- [幼儿教育]【完整版】2019-2025年中国药物发现外
- [幼儿教育]2018-2019年初中信息技术广东初一竞赛
- [幼儿教育]最新外研版(一起)小学英语五年级上册《
- [幼儿教育]农业推广与创新管理专业 -中农大毕业论
- [幼儿教育]2017-2022年中国更年期用药行业市场深
- [幼儿教育]数学1.1.2第1课时棱柱、棱锥和棱台的结
- [幼儿教育]二年级群文阅读课例欣赏
- [幼儿教育]2010-2015年中国保险行业投资分析及深
- [幼儿教育]厄运打不垮的信念第一课时
- [幼儿教育]巧用文本,让表达在言语中绽放论文
- [幼儿教育]中学生百科知识竞赛题及答案
- [幼儿教育]八大菜系英文简介
- [幼儿教育]中国男装牛仔裤市场发展研究及投资前景
- [幼儿教育]远程数字视频监控系统在银行的应用
- [幼儿教育]光纤光缆制造工艺及设备
- [幼儿教育]国家安全法试题及答案
- [幼儿教育]2011高中提前招生及竞赛试题(物理卷1)
- [幼儿教育]宁夏第三产业房地产业、科学研究和技术
- [幼儿教育]中兴通讯 ME3000模块用户硬件设计手册_
- [幼儿教育]紫外线灯管的辐照强度问题
- 苏联东欧剧变的原因和历史教训浅析
- 人工智能导论实验报告(学生)
- 思科ITE章考试原题及答案
- 《学习雷锋好榜样》主题班会教案
- 加油站建设项目安全评价报告
- 剖析社保卡管理系统
- 2017-2018年影视剧新媒体版权运营行业
- 2017-2018学年四川省成都市高一上学期
- 2019最新高中数学 第三章 3.2.1 几类不
- 2011-2015年中国基酸市场调查及行业前
- 人教版新课标选修八Unit 1 课件Warming
- 郭溪燎原小学辅导学生记录表
- 教师资格证统考综合素质写作秘笈
- 国外校园绿色建筑研究方向与建设实践
- 15.1 动物运动的方式 课件(北师大版八
- 民用飞机空调系统
- 长安侠文化传统与唐诗的任侠主题
- 《中国近现代史纲要》名词解释
- 11金本《保险学概论》复习资料
- 民用建筑机电安装工程专业施工图图纸会




