知ing

微型计算机接口技术及应用(第二版)

刘乐善 编 / 中国工业出版社

_南音少女 上传

查看本书

13可编程并行接口芯片8255A面向I/O设备一侧的端口有几个?其中C口的使

用有哪些特点?

8255A面向I/O设备一侧有3个8位的端口:A口、B口和C口,或者说有2个8位的端口(A口、B口)和2个4位的端口(C上、C下)。

其中,C口比较特殊,它的特点主要有:作为数据口,可分为两个独立的4位口(C上、C下)使用;1方式和2方式时,C口的部分引脚作为A、B口的固

定联络信号线;1方式和2方式时,C口作为状态口使用;C口的引脚可以用按位置/复位命令字进行按位控制。

14可编程并行接口芯片8255A的编程命令有哪两个?试分别说明它们的作用及其命令格式中每位的含义是什么?

8255A有两个编程命令:方式命令字和C口按位置/复位命令字。

方式命令字:用于对8255A进行初始化编程,设定A、B、C口的工作方式及传送方向,其命令格式及各位含义如下:

C口按位置/复位命令字:用于对8255A进行动态控制,在应用过程中,需

要对C口的某个引脚进行按位操作时使用,对已设定好的工作方式无影响,其命令字格式及各位含义如下:

15 “由于按位置/复位命令字是对C口进行操作,所以可以写到C口”,这句话

对吗?为什么?

这句话不对,因为“按位置/复位命令字”是命令字的格式,必须写入到控制口,如果写入到C口就作为一个普通的数据,完成的功能完全不同。 16如何对8255A进行初始化编程?

对8255A进行初始化编程主要是写入方式字,设置所使用的每个数据口的工作方式及传送方向。另外,如果有必要,在初始化时还要写入将PC某个引脚置1或清0的命令字(C口按位置/复位命令字)。

17可编程并行接口芯片8255A有哪几种工作方式?各自的特点何在?

8255A有3种工作方式,其中A口可工作于方式0、方式1和方式2;B口只能工作于方式0和方式1。

方式0的特点:①是基本输入/输出方式,输出有锁存功能,输入有缓冲功能,采用无条件方式或查询方式与CPU交换信息;②2个8位口和2个4位口,24根I/O信号线全部由用户控制;③无专用联络信号线;无固定时序;无确定的状态字;④单向I/O

方式1的特点:①是选通(应答)输入/输出方式,输入、输出都具有锁存功能,采用查询方式或中断方式与CPU交换信息;②A、B口作为数据口,C口部分引脚作专用联络信号线,这些信号线用户不能指定为其他用途;③有专用联络信号线;有固定时序;有确定的状态字;④单向I/O

方式2的特点:①A口为双向选通(应答)输入/输出方式,采用查询方式或中断方式与CPU交换信息;②有专用联络信号线;有固定时序;有确定的状态字;联络线定义、时序及状态字都是方式1输入和输出的组合。

18.在1方式下输入和输出时,其专用联络信号是如何定义的?联络信号线之间的工作时序关系如何?

1方式下输入时,定义了8255A与I/O之间的2根相互联络信号线,还在8255A与CPU之间设置了中断申请信号线:

:外设给8255A的“输入选通”信号,低有效,将数据送入8255A; IBF:8255A给外设的“输入缓冲器满”信号,高有效,阻止外设送新数据; INTR:8255A给CPU的“中断申请”信号,高有效,请求CPU读取数据。

② I/O设备

联络信号之间的时序关系:

1

方式下输出时,定义了8255A与I/O之间的

2根相互联络信号线,还在8255A与CPU之间设置了中断申请信号线:

:8255A给外设的“输出缓冲器满”信号,低有效,通知外设取数据; :外设给8255A的“回答”信号,低有效,通知8255A数据已取走; INTR:8255A给CPU的“中断申请”信号,高有效,请求CPU写入下

CPU

①④ INTR 设备

一个数据。联络信号之间的时序关系:

19.现有4种简单的外设:①一组8位开关;②一组8位LED指示灯;③一个按钮开关;④一个蜂鸣片。要求:

(1) 用8255A作为接口芯片,将这些外设构成一个简单的微机应用系统,画

出接口连接图;

(2) 编制5种驱动程序,每个程序必须包括至少有两种外设共同作用的操作

(例如,根据8位开关“ON”和“OFF”的状态来决定8个LED指示灯“亮”和“灭”。又如,当按下按钮开关时,才使蜂鸣片发声等)。

20现有一四相步进电机,按双八拍方式运行。要求:

(1) 设计接口电路(根据本题(2)的要求设计);

(2) 编制下列控制程序:①上电后,步进电机来回走100步,当按下SW1开

关时,停止走步;②步进电机先向一个方向连续慢走,当开关SW1按下时,

快速反走,直到按下SW2时才停机;③对步进电机进行点动控制,即每按一

次SW1开关,步进电机就走一步,按SW2停止运行;④在键盘上按S键和s

键,启动步进电机开始走步;按SW1键停止;

(3) 画出四个控制程序的流程图。

四相电机,双八拍方式各相绕组循环轮流通电的方式为:

ABABCBCBCDCDCDADADAB

计如图所示:

初始化流程图如图(a)所示,4个控制程序的流程图如图(b)、(c)、(d)、(e)所示:

MOV D X,30 3HMOV AL ,81OUT DX ,ALMOV AL ,0FOUT DX ,AL

(a)初始化 初始化程序段

PL: MOV CH,100

MOV DX,303H

MOV AL,0EH

OUT DX,AL

CON2: MOV CL,8

LEA SI,PTAB

CON1: MOV DX,301H

MOV AL,[SI]

OUT DX,AL

MOV BX,0

DLY1: DEC BX

JNZ DLY1

MOV DX,302H

IN AL,DX

AND AL,01H

JZ EXIT

INC SI

DEC CH

JZ REW

DEC CL

JNZ CON1 REW: MOV CH,100 CON4:

MOV CL,8 LEA SI,PTAB+7 CON3: MOV DX,301H MOV AL,[SI] OUT DX,AL MOV BX,0 DLY2: DEC BX JNZ DLY2 MOV DX,302H IN AL,DX AND AL,01H JZ EXIT DEC SI DEC CH JZ PL DEC CL JNZ CON3 JMP CON4 EXIT: MOV DX,303H MOV AL,0FH

OUT DX,AL

MOV AX,4C00H

INT 21H JMP CON2

①控制程序

20. 在图7.13两种方式并行传送接口电路中,甲机和乙机的8255A都使用了联

络信号线,并且在两者的程序中都查了状态位,试分析二者所使用的联络线及查的状态位在本质上有无差别?为什么?

21. 根据图7.15两级微机双向并行接口逻辑电路,试编写主机(PC微机)的接

收程序,要求PC微机通过8255A的PA口以中断方式读取从机(8031单片机)传来的状态信息。


查看更多