微机原理与接口技术(苏州大学出版社) - 习题答案

发布时间 : 星期一 文章微机原理与接口技术(苏州大学出版社) - 习题答案更新完毕开始阅读

解:端口地址:7CH,7DH,7EH,7FH

MOV AL,10010000B OUT 7FH,AL IN AL,7CH AND AL,01H JZ LP1

LP0: MOV AL,0

OUT 7EH,AL MOV AL,00000101B OUT 7EH,AL JMP EXIT

LP1: MOV AL,1

OUT 7EH,AL MOV AL,00000100B OUT 7EH,AL

EXIT: HLT

习 题

图9-39

9.17 根据传输线路不同,串行通信可分为哪些方式?每种方式有什么特点?

解:分为单工,全双工和半双工。

单工中,信息只能单方向传送。

全双工中,对数据的两个传输方向采用不同的通路,这种系统可以同时进行发送和接收。 半双工中,输入和输出采用同一通路。

9.18 什么叫同步通信?什么叫异步通信?它们各有什么优缺点?

解:同步通信是按照软件识别同步字符来实现数据的发送和接收,异步通信是一种利用字符的再同步技术的通信方式。

同步通信是一种连续串行传送数据的通信方式,一次通信只传送一帧信息。这里的信息帧与异步通信中的字符帧不同,通常含有若干个数据字符。它们均由同步字符、数据字符和校验字符(CRC)组成。其中同步字符位于帧开头,用于确认数据字符的开始。数据字符在同步字符之后,个数没有限制,由所需 传输的数据块长度来决定;校验字符有1到2个,用于接收端对接收到的字符序列进行正确性的校验。同步通信的缺点是要求发送时钟和接收时钟保持严格的同步。

异步通信中,在异步通行中有两个比较重要的指标:字符帧格式和波特率。数据通常以字符或者字节为单位组成字符帧传送。字符帧由发送端逐帧发送,通过传输线被接收设备逐帧接收。发送端和接收端可以由各自的时钟来控制数据的发送和接收,这两个时钟源彼此独立,互不同步。

接收端检测到传输线上发送过来的低电平逻辑\(即字符帧起始位)时,确定发送端已开始发送数据,每当接收端收到字符帧中的停止位时,就知道一帧字符已经发送完毕。

9.19 8086系统中,8251A的C/D端应当和哪个信号相连,以便实现对状态端口、数据端口、控制端口的读/写?

解:与地址线的低位相连。 文件名:微机原理与接口技术习题

第 45 页 共 61 页

错误!未指定书签。与接口技术

9.20 对8251A进行编程时,必须遵守哪些约定?

解:对8251A进行编程时,必须遵守的约定主要有3个:

(1)芯片复位以后,第一次使用奇地址端口写入的操作为模式字进入模式寄存器。

(2)如果模式字中规定了8251A工作的同步模式,那么,CPU接着往奇地址端口输入一个或两个字节就是同步字符,同步字符被写入同步寄存器。如果有两个同步字符,则会按先后分别写入第一个同步寄存器和第二个同步寄存器。

(3)这之后,只要不是复位命令,不管是同步模式还是异步模式,由CPU用奇地址端口写入的值将作为控制字送到控制寄存器,而用偶地址端口写入的将作为数据送到数据输出缓冲寄存器。

9.21 什么是波特率?若要产生一个波特率为2400的串行信号,且波特率因子编程为16,那么串口发送/接收时钟的频率是多少?

解:波特率是指单位时间内传送二进制数据的位数,以位/秒为单位。38400Hz

9.22 设计一个采用异步通信方式输出字符的程序段,规定波特率因子为64,7个数据位,1个停止位,偶校验,断口地址为40H、42H,待输出字符存放在2000H:4000H单元。

解:MOV AL,01111011B

OUT 42H,AL MOV AL,35H OUT 42H,AL MOV DI,0 MOV CX,2000 L0: IN AL,42H

TEST AL,02H JZ L0 IN AL,40H MOV DX,2000H MOV [DX+DI],AL INC DI IN AL,42H TEST AL,38H JZ ERR LOOP L0 JMP EXIT ERR: CALL ERR-OUT EXIT: ...

9.23 设8251A为异步工作方式,波特率因子为16,7位数据位,奇校验,2位停止位。8251A端口地址为2A1H、2A2H。编写程序从串口输出100个字符,设字符存放在BUF开始的缓冲区中。

解: MOV AL,0EAH

MOV DX,2A2H OUT DX,AL MOV AL,35H OUT DX,AL

文件名:微机原理与接口技术习题

第 46 页 共 61 页

;调出错处理

;测试有无帧校验错

;发送2000个字符 ;读取状态字

MOV DI,0 MOV CX,100 BEG: IN AL,DX TEST AL,02H JZ BEG

MOV DX,2A1H IN AL,DX

MOV DX,OFFSET BUF MOV [DX+DI],AL INC DI MOV DX,2A2H IN AL,DX TEST AL,38H JZ ERROR LOOP BEG JMP EXIT ERROR:CALL ERR_OUT EXIT: ....

习 题

9.24 8251A工作于异步方式,波特率为1200bps,收/发时钟(RxC/TxC)频率为76.8KHz,异步字符格式为:7位数据位、偶校验、2位停止位。CPU从8251A读入80个字符,存入BUFFER开始的缓冲区,8251A的端口地址为80H、82H。试编写初始化和数据输入程序段。

解:波特率因子为64

MOV AL,11111011B OUT 82H,AL MOV AL,35H OUT 82H,AL MOV DI,0 MOV CX,80

BEG: IN AL,82H

TEST AL,02H JZ BEG IN AL,80H

MOV DX,OFFSET BUFFER MOV [DX+DI],AL INC DI IN AL,82H TEST AL,38H JZ ERROR LOOP BEG

文件名:微机原理与接口技术习题

第 47 页 共 61 页

错误!未指定书签。与接口技术

JMP EXIT ERROR:CALL ERR_OUT EXIT: .......

9.25 8253的CLK、GATE、OUT信号的功能是什么?

解:CLK是计数器的时钟输入端;GATE是计数器的门控信号输入端;OUT是计数器的输出端 9.26 8253可编程的寄存器有哪几个?

解:4个 计数器0、计数器1、计数器2、控制寄存器 9.27 8253的计数初值如何计算?计数范围是多少?

解:计数初值=定时时间/时钟脉冲周期=时钟频率/输出频率 选择二进制:

计数值范围:0000H~0FFFFH

0000H是最大值,代表65536 计数值范围:0000~9999 0000代表最大值10000 选择十进制(BCD码) :

9.28 8253有哪几种工作方式?有什么区别?

解:6种工作方式。

方式0,计数结束产生中断。当门控信号为低电平时,计数停止;当门控信号为高电平时,进行计数。 方式1,可重复触发的单稳态触发器。门控信号为低电平或者高电平时,计数不受影响;门控信号为上升沿时,受触发开始计数,下一个时钟后,输出为低电平,直到计数为0.

方式2,分频器。门控信号为低电平时,计数停止,输出高电平;门控信号为高电平时,进行计数;门控信号为上升沿时,重新设置初始值,开始计数。

方式3,方波发生器。当门控信号为低电平时方式,计数停止,输出高电平;门控信号为高电平时,进行计数;门控信号为上升沿时,开始计数。

方式4,软件触发的选通信号发生器。门控信号为低电平时,计数停止;门控信号为高电平时,进行计数。

方式5,硬件触发的选通信号发生器。门控信号为低电平时,计数不受影响;门控信号为上升沿时,开始计数。

9.29 试按以下要求分别编写8253的初始化程序,已知8253的地址为400H~403H。

(1)使计数器1工作于方式0,用二进制计数,计数初值为128。 (2)使计数器0工作于方式4,按BCD码计数,计数值为3000。 (3)使计数器2工作于方式5,计数初值为03E8H。 解:(1) MOV AL,50H MOV DX,403H OUT DX,AL MOV AL,128

MOV DX,401H OUT DX,AL MOV DX,403H

第 48 页 共 61 页

(2) MOV AL,39H

文件名:微机原理与接口技术习题

联系合同范文客服:xxxxx#qq.com(#替换为@)