微机原理第八章
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第八章作业
8.1 根据接口电路的功能,简要说明I/O接口电路应包括哪些电路单元?
解:I/O接口电路包括的电路单元:
输入/输出锁存器与缓冲器
命令寄存器和状态寄存器
地址译码电路
读/写控制逻辑
中断控制逻辑
8.2 说明8255A工作于方式0和方式1的区别。
解:8255A工作于方式0:8255A是分成相互独立的8位A 口、B口及4位上C口、4位下C口,C口4位为一组,每组只能同时设定为输入输出,输入不锁存,输出锁存。不能采用中断的方法与CPU交换信息,但可用应答查询方式来进行数据传送。通常以A口和B口做数据口,而用C口的某些位作为查询方式的控制与状态信号线使用。C口中哪些引线充当何种应答功能,可以由用户来指定。
工作于方式1:A,B口做应答式输入/输出端口,输入/输出均锁存,高4位C口做应答式A口的应答线,低4位C口做应答式B口的应答线。
8.3 说明8255A在方式1输入时的工作过程。
解:当外设有数据需要输入时,将数据送到8255A接口上,STB变为有效,数据锁存入8255A,同时IBF变有效。当STB由低变高时,若8255A片内中断允许信号INTE 高电平有效,则8255A的PC3(或PC0)位INTR变高电平有效,向CPU发出中断请求.CPU响应中断后,在中断服务程序中CPU执行到从8255A端口读取数据指令时,产生RD有效信号。一方面将8255A锁存的数据读入到CPU中并延迟一段时间,撤销向CPU申请中断的信号INTR,使其无效,另一方面利用RD信号的上升沿使IBF复位。
8.4 说明8255A在方式1输出时的工作过程。
解:进入中断服务程序后,CPU向指定接口写数据,IOW 将数据所存在接口之中。当数据背锁存并由端口信号线输出时,8255A就清楚INTR信号并使OBF有效。有效的OBF通知外设接收数据。一旦外设将数据接受,就送出一个有效的ACK脉冲,该脉冲使OBF无效,同时产生一个新的中断请求,请求CPU向外设输出下一个数据。
8.5 8255A的三个端口在使用时有什么差别?
解:端口A或B作为输入输出的数据端口(端口A还可以作为双向数据端口),而端口C作为控制或状态信号的端口,它
在方式字的控制下,可以分成高4位C口和低4位C口。2个端口各包含一个4位锁存器。高4位C口与端口A,低4位C口与B配合使用,可用以作为控制信号输出,或作为状态信号输入。
8.6 说明8253的方式2与方式3的工作特点
方式2工作特点:写入计数值开始计数,周期性计数。
计数过程中GATE=0,暂停计数,
GATE=1重新计数。
计数过程中改变计数值,下一周期按新的计数值计数。
方式3工作特点:写入计数值开始计数,周期性计数。
N=偶数,正负半周=N/2;N=奇数,正半周=(N+1)/2,负半周=(N-1)/2。
计数过程中GATE=0,暂停计数;
GATE=1,重新计数。
计数过程中改变计数值,下一周期按新的计数值计数。
方式2与方式3性能完全相同,均为软件启动,重复周期输出,但OUT输出波形不同。方式2的OUT只输出1个负脉冲,而方式3为方波,输出的高低电平宽度相同(初
值为偶数正负半周相同,初值为奇数时正半周比负半周多一个脉冲周期);
8.7 说明8253的方式1与方式5的工作特点
方式1工作特点:一次写入计数值多次计数。
GATE=1启动计数,重复启动重复计数。
计数过程中改变计数值,下次启动按新的计数值计数
计数值为N,计数N次
方式5工作特点:一次写入计数值多次计数。
GATE上升沿启动计数,重复启动重新计数。
计数过程中改变计数值,下次启动按新的计数值重新计数。
计数值为N,计数N+1次。
方式1与方式5性能完全相同,均为硬件GATE门控信号可重复触发,但OUT输出波形不同。方式1的OUT输出N个负脉冲,而方式5仅1个;
8.8 8253在写入计数初值时,二进制计数和十进制计数有什么区别?
如计数值为70,
十进制计数为:70H (BCD 码)
二进制计数为:46H (十六进制)
8.17 8255A 用作查询式打印机接口的电路连接和信号时序如图,8255A 的端口地址为90H~93H ,工作于方式0.试编写程序段,将数据区中变量DATA 的8位数据送打印机打印。
MOV AL,1000 1011B
OUT 93H,AL PC 6 PA 7~PA 0 PC 2 STB DATA 7~DATA 0 BUSY 8255A 打印机 DATA BUSY STB
MOV AL,DATA
OUT 90H,AL
IN AL,92H
LOP:TEST AL,0000 0100B
JNE LOP
MOV AL,00001101B
OUT 93H,AL
MOV AL,00001100B
OUT 93H,AL
HLT
8.21 8253通道0按方式3(方波发生器)工作,时钟CLK0的频率为1MHz,要求输出方波的频率为50kHz,此时写入计数初值应为什么?输出方波的“1”和“0”各占多少时间?
解:计数初值=1M/50K=20;
方波周期为20μs
由于周期为偶数20,因此计到20/2时,OUT由高变低
因此输出方波‘1’和‘0’各占10μs
8.22 8253某通道的时钟频率为1MHz,按BCD方式计数,若写入的计数初值为0080H,则该通道的定时时间是多少?
解:对于BCD码计数则0080H表示计数值80H
通道输出频率:1M/80=12500HZ
定时时间:1/12500=8*10^(-5)S=80μs
8.24 8253的计数通道0连接如图,图略,试回答:
(1)计数通道0工作于何种方式,并写出工作方式名称;
解:由于出现一个时钟周期宽度的负脉冲的方式由2和5方式,但是由于GATE0时钟为1,因此由此可知计数通道0工作于方式2。工作方式名称为频率发生器
(2)写出计数通道0的计数初值(要列出计算式)。
解:由于一个CLK周期宽度为400ns,OUT端周期为
1ms,
因此计数初值为:1ms/400ns=2500
8.25 若用8253计数器对设备的转轴的旋转速度进行测试,接口电路图略,若与轴相连的转盘上均匀地钻有每圈