微机原理和接口技术(第四版)课后习题答案解析 下载本文

int08h 〔解答〕 int08h

int08h

push ax push dx …… …… int 1ch mov al,20h out 20h,al pop ax pop dx pop ds iret endp proc far sti

push ds push ax push dx …… …… int 1ch mov al,20h out 20h,al pop ax pop dx pop ds iret endp

; 日时钟计时 ; 控制软驱马达

; 远过程 ; 开中断 ; 保护现场

; 日时钟计时 ; 控制软驱马达 ; 调用1CH号中断

; 发送EOI中断结束命令 ; 恢复现场

; 中断返回

第8章 常用接口技术

〔习题8.1〕简答题

(1)为什么称8253/8254的工作方式1为可编程单稳脉冲工作方式? (2)为什么写入8253/8254的计数初值为0却代表最大的计数值? (3)处理器通过8255的控制端口可以写入方式控制字和位控制字,8255如何区别这两个控制字呢? (4)“8255具有锁存输出数据的能力”是什么意思? (5)Modem(戏称“猫”)是一个什么作用的器件?

(6)RS-232C标准使用25针连接器,为什么PC机上常见的是9针连接器? (7)什么是RS-232C的零调制解调器连接方式? (8)UART器件的主要功能是什么?

(9)多路开关在模拟输入输出系统中起什么作用?

(10)处理器为什么需要通过锁存器与数字/模拟转换器连接?

〔解答〕

① 方式1可以通过编程产生一个确定宽度的单稳脉冲,故称工作方式1为可编程单稳脉冲工作方式。 ② 因为计数器是先减1,再判断是否为0,所以写入0实际代表最大计数值。

③ 通过控制字的D7位来区别:D7=1,该控制字为方式控制字;否则为位控制字。

④ 8255的三种工作方式均可实现输出数据锁存,即数据输出后被保存在8255内部,可以读取出来,只有当8255再输出新一组数据时才改变。

⑤ Modem,称为调制解调器,将数字信号转换为适合在电话线路上传送的模拟信号(调制)以及将电话线路的模拟信号转换为数字信号(解调)。

- -21

⑥ 因绝大多数设备只使用RS-232C标准的其中9个信号,所以PC机上就配置9针连接器。

⑦ 两台微机进行短距离通信,可以不使用调制解调器,直接利用232C接口连接,被称为零调制解调器(Null Modem)连接。

⑧ UART表示通用异步接收发送器,主要功能是将并行数据转换为串行数据发送,以及实现串行数据转换为并行传送给处理器。

⑨ 采用多路开关,通过微型机控制,把多个现场信号分时地接通到A/D转换器上转换,达到共用A/D转换器以节省硬件的目的。

⑩ 处理器输出数据都只在输出指令OUT执行的极短时间内出现在数据总线上,慢速的外设不能及时获取,所以主机与DAC之间必须连接数据锁存器。 〔习题8.3〕填空题

(1)8253芯片上有__________个__________位计数器通道,每个计数器有__________种工作方式可供选择。若设定某通道为方式0后,其输出引脚OUT为__________电平;当__________后通道开始计数,__________信号端每来一个脉冲__________就减1;当__________,则输出引脚输出__________电平,表示计数结束。

(2)假设某8253的CLK0接1.5MHz的时钟,欲使OUT0产生频率为300kHz的方波信号,则8253的计数值应为__________,应选用的工作方式是__________。

(3)8255具有__________个外设数据引脚,分成3个端口,引脚分别是__________,__________和__________。

(4)8255的A和B端口都定义为方式1输入,端口C上半部分定义为输出,则方式控制字是__________,其中D0位已经没有作用、可为0或1。

(5)对8255的控制寄存器写入A0H,则其端口C的PC7引脚被用作__________信号线。

(6)PC机键盘上ESC键和字母A键的扫描码分别是__________和__________,断开扫描码分别是__________和__________。

(7)232C用于发送串行数据的引脚是__________,接收串行数据的引脚是__________,信号地常用__________名称表示。

(8)欲使通信字符为8个数据位、偶校验、2个停止位,则应向8250__________寄存器写入控制字__________,其在PC系列机上的I/O地址(COM2)是__________。

(9)有符号数32的8位补码是00100000,如果用8位偏移码是__________;有符号数-32的8位补码是11100000,如果用8位偏移码是__________。

(10)如果ADC0809正基准电压连接10V,负基准电压接地,输入模拟电压2V,则理论上的输出数字量为__________。

〔解答〕

① 3,16,6,低,写入计数初值(并进入减1计数器),脉冲输入CLK,减法计数器,计数器的计数值减为0,高

② 5(=1.5MHz÷300KHz),3

③ 24,PA0~PA7,PB0~PB7,PC0~PC7 ④ 10110110(=B6H,B7H) ⑤ OBF

⑥ 01H,1DH(=30),81H,9DH(=158) ⑦ TxD,RxD,GND

⑧ 通信线路控制(CLR),00011111B(1FH),2FBH ⑨ 10100000,01100000

⑩ 53H(=51≈51.2=2÷10×256)

〔习题8.4〕8253芯片每个计数通道与外设接口有哪些信号线,每个信号的用途是什么?

〔解答〕

CLK时钟输入信号:在计数过程中,此引脚上每输入一个时钟信号(下降沿),计数器的计数值减1。 GATE门控输入信号:控制计数器工作,可分成电平控制和上升沿控制两种类型。

OUT计数器输出信号:当一次计数过程结束(计数值减为0),OUT引脚上将产生一个输出信号。

- -22

〔习题8.5〕8253芯片需要几个I/O地址,各用于何种目的? 〔解答〕

4个,读写计数器0,1和2,及控制字。

〔习题8.6〕试按如下要求分别编写8253的初始化程序,已知8253的计数器0~2和控制字I/O地址依次为204H~207H。

① 使计数器1工作在方式0,仅用8位二进制计数,计数初值为128。 ② 使计数器0工作在方式1,按BCD码计数,计数值为3000。 ③ 使计数器2工作在方式2,计数值为02F0H。 〔解答〕

mov al,50h mov dx,207h out dx,al mov al,128 mov dx,205h out dx,al mov al,33h mov dx,207h out dx,al mov ax,3000h mov dx,204h out dx,al mov al,ah out dx,al mov al,0b4h mov dx,207h out dx,al mov al,02f0h mov dx,206h out dx,al mov al,ah out dx,al

; =80h

; 不是3000

〔习题8.12〕有一工业控制系统,有四个控制点,分别由四个对应的输入端控制,现用8255的端口C实现该系统的控制,如本题图形。开关K0~K3打开则对应发光二极管L0~L3亮,表示系统该控制点运行正常;开关闭合则对应发光二极管不亮,说明该控制点出现故障。编写8255的初始化程序和这段控制程序。 〔解答〕

; 写入方式字

mov al,100×00×1b ; =81H(×表示任意,可以填写为0,也可以为1) mov dx,控制口地址 ; 可以假设为0FFFEH out dx,al

;加入下一段更好,使L0~L3全亮 mov al,0fh

mov dx,端口C地址 ; 可以假设为0FFFCH

- -23

out dx,al ;控制程序段

mov dx,端口C地址 in al,dx mov cl,4 shl al,cl out dx,al

; 可以假设为0FFFCH ; 读入PC0~PC3 ; 左移4位

; 控制PC4~PC7

〔习题8.14〕串行异步通信发送8位二进制数01010101:采用起止式通信协议,使用奇校验和2个停止位。画出发送该字符时的波形图。若用1200 bps,则每秒最多能发送多少个数据?

〔解答〕

每个字符的位数是:1个起始位+8个数据位+1个奇校验位+2个停止位=12位,采用1200bps、即每秒1200位的传送速率,则每秒最多能发送1200÷12=100个数据。

0 1 0 1 0 1 0 1 0 1 1 1 图8-2 波形示例图

〔习题8.20〕ADC的转换结束信号起什么作用,可以如何使用该信号,以便读取转换结果?

〔解答〕

当A/D转换结束,ADC输出一个转换结束信号,通知主机读取结果。 有多种使用A/D转换结束信号的方法,对应的程序设计方法也不同。

查询方式:把结束信号作为状态信号经三态缓冲器送到主机系统数据总线的某一位上。主机不断查询这个状态位,发现结束信号有效,便读取数据。

中断方式:把结束信号作为中断请求信号接到主机的中断请求线上。ADC转换结束,主动向处理器申请中断。处理器响应中断后,在中断服务程序中读取数据。

DMA传送方式:如果ADC速度足够快,可把结束信号作为DMA请求信号,采用DMA传送方式。 延时传送方法:不使用结束信号,微机延时到转换结束读取数据。

8255 PA0~PA7 PC4 PC7 8位 ADC EOC START 模拟信号

PB0~PB7 8位 DAC 模拟信号

图8-3 习题8.21附图

- -24