微机接口课后答案(8)

2018-12-04 17:02

(4)收发联络信号

TXRDY:发送器准备好信号,用来通知CPU, 8251A 已准备好发送一个字符。

TXE :发送器空信号, TXE 为高电平时有效,用来表示此时 8251A 发送器中并行到串 行转换器空,说明一个发送动作已完成。

RXRDY :接收器准备好信号,用来表示当前 8251A 已经从外部设备或调制解调器接收到 一个字符,等待 CPU 来取走。因此,在中断方式时, RXRDY 可用来作为中断请求信号; 在查询方式时, RXRDY 可用来作为查询信号。 SYNDET :同步检测信号,只用于同步方式。

12. 在一个以8086为CPU的系统中,若8251A的数据端口地址为84H,控制口和状态口的 地址为86H,试画出地址译码电路、数据总线和控制总线的连接图。 答:

13. 设8251A的端口地址如题12,要求8251A工作于内同步方式,同步字符为2个,用偶 校验,7个数据位,试对8251A进行初始化编程。 答:MOV AL,0 OUT 86H,AL OUT 86H,AL

OUT 86H,AL ;向控制口写入三个0 MOV AL,40H

OUT 86H,AL ;写入复位字 MOV AL,00111000B

OUT 86H,AL ;写入方式字 MOV AL,SYSN ;同步字符 OUT 86H,AL

OUT 86H,AL ;两个同步字符 MOV AL,10010101B

OUT 86H,AL ;送命令字

14. 若8251A的端口地址为FF0H,FF2H,要求8251A工作于异步工作方式,波特率因子 为16,有7个数据位,1个奇校验位,1个停止位,试对8251A进行初始化编程。 答:MOV AL,0 MOV DX,0FF2H OUT DX,AL

OUT DX,AL

OUT DX,AL ;向控制口写入三个0 MOV AL,40H

OUT DX,AL ;写入复位字 MOV AL,01011010B

OUT DX,AL ;写入方式字 MOV AL,00010101B

OUT DX,AL ;写入命令字

15. RS-232C的逻辑高电平与逻辑低电平的范围是多少?怎么与TTL电平的器件相连?规定 用什么样的接插件?最少用哪几根信号线进行通信?

答:逻辑高电平:有负载时为-3V~-15V,无负载时为-25V 逻辑低电平:有负载时为+3V~+15V,无负载时为+25V 通常用±12V作为RS-232C的电平。

计算机及其接口芯片多采用TTL电平,即0~0.8V为逻辑0,+2.0V~+5V为逻辑1, 与RS-232C电平不匹配,必须设计专门的电路进行电平转换,常用的电平转换电路为 MAX232和MAX233。

RS-232C使用25芯的D型插头插座和9芯的D型接插件。

常用的信号线有:TxD 发送数据,RxD 接收数据,RTS请求发送,CTS清除发送, DSR数据装备准备好等信号。

16. 某微机系统用串行方式接收外设送来的数据,再把数据送到CRT去显示,若波特率为 1200,波特率因子为16,用8253产生收发时钟,系统时钟频率为5MHz,收发数据个数为 COUNT,数据存放到数据段中以BUFFER为始址的内存单元中。8253和8251A的基地址

分别为300H和304H。

(1)画出系统硬件连线图。

(2)编写8253和8251A的初始化程序。 (3)编写接收数据的程序。 答:(1)8251的接收时钟RxC=1200*16=19200Hz,用8253产生收发时钟,使用通道0产 生频率为19200Hz的方波,故计数初值为n0=5MHz/19200Hz≈260

(2)8253的初始化

程序

MOV DX,303H

MOV AL,00110111B

OUT DX,AL ;8253控制字,通道0,方式3,BCD计数 MOV DX,300H

MOV AL,60H ;初值低字节 OUT DX,AL

MOV AL,02H ;初值高字节 OUT DX,AL

8251A的初始化程序 MOV AL,0 MOV DX,305H OUT DX,AL OUT DX,AL

OUT DX,AL ;向控制口写入3个0 MOV AL,40H ;复位字 OUT DX,AL

MOV AL,01111010B ;方式字,异步,1停止位,偶校验,7位数据 OUT DX,AL MOV AL,14H

OUT DX,AL ;输出命令字,清错误标志,允许接收 (3)接收数据的程序 采用查询方式,异步传送

LEA DI,BUFFER ;接收数据缓冲区 MOV CX,COUNT ;接收数据个数 MOV DX,305H

NEXT:IN AL,DX ;读入状态字 TEST AL,02H ;RxRDY有效吗 JZ NEXT ;否,循环等待

TEST AL,38H ;是,检查是否有错 JNZ ERROR ;有错,转出错处理程序 MOV DX,303H ;数据端口

IN AL,DX ;无错,读入一个数据 MOV [DI],AL ;送缓冲区 INC DI

MOV DX,305H

LOOP NEXT ;数据没传完则继续 ?.. ;完成

ERROR:?? ;出错处理

第十一章

1. 包含A/D和D/A的实时控制系统主要由哪几部分组成?什么情况下要用多路开关?什么 时候要用采样保持器?

答:

对多个变化较为缓慢的模拟信号进行A/D转换时,利用多路开关将各路模拟信号轮流 与A/D转换器接通,使一个A/D转换器能完成多个模拟信号的转换,节省硬件开销。 一个模数转换器完成一次模数转换,要进行量化、编码等操作,每种操作均需化费一定 的时间,这段时间称为模数转换时间tc。在转换时间tc内, 输入模拟信号x(t)变化速率较高 时,在转换过程中,输入模拟量有一个可观的△x,结果将会引入较大的误差。也就是说, 在A/D转换过程中,加在转换器上的电平在波动,这样,就很难说输出的数字量表示tc期 间输入信号上哪一点的电压值,在这种情况下就要用采样保持器来解决这个问题。 2. 什么叫采样、采样率、量化、量化单位?12位D/A转换器的分辨率是多少?

答:采样就是按相等的时间间隔t从电压信号上截取一个个离散的电压瞬时值,t越小,采 样率fs越高。

对一个被采样的信号电压的幅度变化范围进行分层,确定某一个采样电压所在的层次, 该分层的起始电平就是该采样的数字量,此过程称为量化,每个分层所包含的最大电压值与 最小电压值之差,称为量化单位,用q表示,量化单位越小,精度越高。 12位D/A转换器,2n=4096,其分辨率为1/4096*FSR=0.0244%FSR

3. 某一8位D/A转换器的端口地址为220H,已知延时20ms的子程序为DELAY_20MS, 参考电压为+5V,输出信号(电压值)送到示波器显示,试编程产生如下波形: (1)下限为0V,上限为+5V的三角波 (2)下限为1.2V,上限为4V的梯形波。 答:(1)由于1LSB=5V/256=0.019V,所以下限电压对应的数据为 0/0.019V=0

上限电压对应的数据为 5V/0.019V=256 程序段如下:

BEGIN:MOV AL,0 ;下限值 MOV DX,220H

UP: OUT DX,AL ;D/A转换 CALL DELAY

INC AL ;数值增1

CMP AL,00H ;超过上限了吗? JNZ UP ;没有,继续转换

DEC AL ;超过了,数值减量

DOWN:OUT DX,AL ;D/A转换 CALL DELAY

DEC AL ;数值减1

CMP AL,00H ;低于下限了吗? JNZ DOWN ;没有

JMP BEGIN ;低于,转下一个周期

(2)下限电压对应的数据为1.2V/0.019V=61=3DH 上限电压对应的数据为4V/0.019V=205=0CDH 产生梯形波的程序如下:

BEGIN:MOV AL,3DH ;下限值 MOV DX,220H

UP: OUT DX,AL ;D/A转换 CALL DELAY

INC AL ;数值增1

CMP AL,0CDH ;到达上限了吗? JNZ UP ;没有,继续转换 OUT DX,AL

CALL DELAY_20MS ;到达上限延时输出方波 DEC AL

DOWN:OUT DX,AL ;D/A转换 CALL DELAY

DEC AL ;数值减1

CMP AL,3DH ;到达下限了吗? JNZ DOWN ;没有,继续 OUT DX,AL

CALL DELAY_20MS ;到达下限延时输出方波 INC AL JMP UP

4. 利用DAC0832产生锯齿波,试画出硬件连线图,并编写有关的程序。

答:


微机接口课后答案(8).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:企业(公司)中层干部选拔任用管理制度(表格)

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: