微机原理第八章_第1页
微机原理第八章_第2页
微机原理第八章_第3页
微机原理第八章_第4页
微机原理第八章_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第八章作业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口中哪些引线充当何种应答功能,可以由用户来指定

2、。工作于方式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

3、申请中断的信号INTR,使其无效,另一方面利用RD信号的上升沿使IBF复位。8.4说明8255A在方式1输出时的工作过程。解:进入中断服务程序后,CPU向指定接口写数据,IOW将数据所存在接口之中。当数据背锁存并由端口信号线输出时,8255A就清楚INTR信号并使OBF有效。有效的OBF通知外设接收数据。一旦外设将数据接受,就送出一个有效的ACK脉冲,该脉冲使OBF无效,同时产生一个新的中断请求,请求CPU向外设输出下一个数据。8.58255A的三个端口在使用时有什么差别?解:端口A或B作为输入输出的数据端口(端口A还可以作为双向数据端口),而端口C作为控制或状态信号的端口,它在方式字的控制下

4、,可以分成高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=奇数,正半周=(N1)/2,负半周=(N1)/2。计数过程中GATE=0,暂停计数;GATE=1,重新计数。 计数过程中改变计数值,下一周期按新的计数值计数。方式

5、2与方式3性能完全相同,均为软件启动,重复周期输出,但OUT输出波形不同。方式2的OUT只输出1个负脉冲,而方式3为方波,输出的高低电平宽度相同(初值为偶数正负半周相同,初值为奇数时正半周比负半周多一个脉冲周期);8.7说明8253的方式1与方式5的工作特点方式1工作特点: 一次写入计数值多次计数。 GATE=1启动计数,重复启动重复计数。 计数过程中改变计数值,下次启动按新的计数值计数 计数值为N,计数N次方式5工作特点:一次写入计数值多次计数。 GATE上升沿启动计数,重复启动重新计数。 计数过程中改变计数值,下次启动按新的计数值重新计数。 计数值为N,计数N+1次。方式1与方式5性能完全

6、相同,均为硬件GATE门控信号可重复触发,但OUT输出波形不同。方式1的OUT输出N个负脉冲,而方式5仅1个;8.88253在写入计数初值时,二进制计数和十进制计数有什么区别?如计数值为70,十进制计数为:70H(BCD码)二进制计数为:46H(十六进制)8.178255A用作查询式打印机接口的电路连接和信号时序如图,8255A的端口地址为90H93H,工作于方式0.试编写程序段,将数据区中变量DATA的8位数据送打印机打印。打印机8255APC6 PA7PA0 PC2STBDATA7DATA0BUSYDATASTBBUSYMOV AL,1000 1011B OUT 93H,ALMOV AL,

7、DATAOUT 90H,ALIN AL,92HLOP:TEST AL,0000 0100BJNE LOPMOV AL,00001101BOUT 93H,ALMOV AL,00001100BOUT 93H,ALHLT8.218253通道0按方式3(方波发生器)工作,时钟CLK0的频率为1MHz,要求输出方波的频率为50kHz,此时写入计数初值应为什么?输出方波的“1”和“0”各占多少时间?解:计数初值=1M/50K=20;方波周期为20s由于周期为偶数20,因此计到20/2时,OUT由高变低因此输出方波1和0各占10s8.228253某通道的时钟频率为1MHz,按BCD方式计数,若写入的计数初值

8、为0080H,则该通道的定时时间是多少?解:对于BCD码计数则0080H表示计数值80H通道输出频率:1M/80=12500HZ定时时间:1/12500=8*10(-5)S=80s8.248253的计数通道0连接如图,图略,试回答:(1) 计数通道0工作于何种方式,并写出工作方式名称;解:由于出现一个时钟周期宽度的负脉冲的方式由2和5方式,但是由于GATE0时钟为1,因此由此可知计数通道0工作于方式2。工作方式名称为频率发生器(2) 写出计数通道0的计数初值(要列出计算式)。解:由于一个CLK周期宽度为400ns,OUT端周期为1ms,因此计数初值为:1ms/400ns=25008.25若用8

9、253计数器对设备的转轴的旋转速度进行测试,接口电路图略,若与轴相连的转盘上均匀地钻有每圈50个孔,当轴旋转时,通过光电转换,每通过一个小孔,产生一个正脉冲,当轴旋转一圈,就会有50个脉冲通过CLK输入8253计数器进行计数。假设此转轴的转速范围为501000转/秒,并设8253的端口地址为64H67H。(1) 给出一个算法,将测量转轴的转速转换为计量脉冲的个数。由题得,最高转速为1000转/秒,因此,每秒最高脉冲数为:1000*50=50000个=C350H因此计数器必须用16位计数,而且需要用二进制数假设定时为0.01s则计量脉冲个数=转速*0.01s*50个(2) 若用计数器0对脉冲计数

10、,用计数器1作为定时器。设CLK1频率为200kHz,用定时100ms来计数。请详细说明计数器0、1的工作方式控制字和计数初值,并写出8253的初始化程序。计数器0的工作方式控制字:00 11 000 0B计数初值:0000H 计数器1的工作方式控制字:01 11 000 0B计数初值:100ms/(1/200kHz)=20000D=4E20H8253初始化程序: MOV AL,00110000BMOV 67H,ALMOV AX,00HOUT 80H,ALMOV AL,AHOUT 80H,ALMOV AL,01110000BMOV 67H,ALMOV AX,4E20HOUT 80H,ALMOV

11、 AL,AHOUT 80H,AL8.34一个采用查询方式传送的输出接口,其数据端口地址为200H,状态端口地址为201H,外设状态用D0表示是否可接收数据(0为空闲,1为忙),将存储器中首地址为BUFFER的5000B数据输出,试画出流程图,并编写控制程序段。等待NYN结束开始读取外设状态READY?传送数据传送结束?Y解:MOV CX,5000XOR SI,SIL0P1:MOV DX,201H IN AL,DX;读取状态端口地址上的状态给AL TEST AL,01H;不满足D0为0时则缓冲 JNE LOP1 MOV AL,BUFFERSI MOV DX.200H OUT DX,AL INC

12、SI LOOP L0P1 HLT8.35用一片8255A控制一组红、绿、黄灯,如图,反复检测S1,S2,要求由S1,S2的“闭合”和“断开”控制红、绿、黄灯的点亮。当S1合,S2合时,黄灯亮;当S1合,S2断时,红灯亮;当S1断,S2合时,绿灯亮;当S1断,S2断时,黄灯亮。试根据上述条件编写初始化及控制程序(设8255A端口地址为80H83H)MOV AL,10010010B OUT 83H,AL LOP0:IN AL,80HTEST AL,00000001BJNE LOP2TEST AL,00000010BJNE LOP3MOV AL,00000000;S1合,S2断,红亮OUT 83H,

13、ALMOV AL,00000011BOUT 83H,ALMOV AL,00000101BOUT 83H,ALJMP LOP5LOP2:TEST AL,00000010BJNE LOP4MOV AL,00000001B;S1断,S2断,黄亮OUT 83H,ALMOV AL,00000011BOUT 83H,ALMOV AL,00000100BOUT 83H,ALJMP LOP5LOP3: MOV AL,00000001BOUT 83H,ALMOV AL,00000011B;S1合,S2合,黄亮OUT 83H,ALMOV AL,00000100BOUT 83H,ALJMP LOP5LOP4:MOV

14、 AL,00000001B;S1断,S2合,绿亮OUT 83H,ALMOV AL,00000010BOUT 83H,ALMOV AL,00000101BOUT 83H,ALLOP5: JMP LOP08.438255A的PA口与8个LED管连接如图1(略),用8253作定时器控制8个LED管自下向上闪动,8253连接如图2(略),闪动频率为10次/秒,8253的端口地址为40H43H,8255A的端口地址为60H63H,其控制程序片段如下。主程序: MOV AL,80H (1) OUT 63H,AL (2) MOV AL,34H (3) OUT 43H,AL (4) MOV AL,0ABH (

15、5) OUT 40H,AL (6) MOV AL,61H (7) OUT 40H,AL (8) MOV AL,7FH (9) OUT 60H,AL (10) STILOP: HLT JMP LOP中断服务程序:INTROUT PROC FAR (11)(设CS=1280H) ORG 2000H (12) ROR AL,1 (13) OUT 60H,AL (14) IRET (15)试问:(1)从程序中的数据,计算8253中CLK0的时钟周期TCLK0以及该控制程序中所使用的中断服务程序的中断类型号n的值,中断向量表如图3.输入次数为61A8H=25000次Tout0=1/10s/8=12.5m

16、sTclk0=12.5/25000=0.5s由CS=1280H知,n=34H÷4=00001101H=0DH(2) 若闪动频率改为1次/分,且为自上而下闪动,可采用如图4的串接形式,中断类型号为(1)中计算值加1(0EH),请对程序做最小限度的更改,以满足上述要求(计数通道0工作不变)。在(8)后插入MOV AL,74HOUT 43H,ALMOV AL,58H;60秒/8=7.5秒 7.5/12.5=600=0258HOUT 41H,ALMOV AL,02HOUT 41H,AL8.448086CPU通过8255A同发光二极管LED0LED7以及开关S0S7的接口电路如图,发光二极管L

17、ED0LED7不断显示对应开关S0S7的通断状态。图略。要求:(1) S0S7的状态每隔30秒改变一次,把每次变化的状态记录在2000H:1000H开始的内存单元中。(2) S接通时,对应的二极管熄灭,S断开时,对应的二极管发亮(即S0断开,LED0发亮,S0接通,LED0熄灭)(3) 连续工作24小时结束。由书中图可知,控制口地址为173H,由此推出,A口地址170H,B口地址171H,C口地址172H START:MOVAL,99HMOVDX,173HOUT DX,ALMOVAX,2000HMOVDS,AXLOP:MOVCX,288024*60*2个半分钟 LOP1:MOVBX,1000H

18、LOP2:MOVDX,170HINAL,DXMOVBX,ALINCBXXORAL,0FFH取反,A连B灭,A断B亮MOVDX,171HOUTDX,ALTESTBX,1007HJNALOP2CALLDELAY30SMOVDX,170HINAL,DXLOOPLOP1HLT延时半分钟子程序DELAY30SPROCMOVBX,3000DELAY:MOVCX,2800 WAIT:LOOPWAITDECBXJNZDELAYDELAY30SENDP8.45让8253计数器0用1ms脉冲信号源作CLK0且工作在方式3,定时1min,用8255A的PC6提供GATE0。在定时期间,由PC7控制的灯亮(PC7=1,亮),对OUT0的检测通过PC0进行,定时结束时灯灭,请先画出脉冲信号源、8253/8255A的连接关系图,再编写程序段(8253,8255A采用PC机上的端口地址)。8255PC下PC上8253计数

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论