【微机原理】8251习题

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1 串行接口 8251A 习题

8.2 设8251A 的控制和状态端口地址为52H ,数据输入/输出口地址为50H(输出端口未用),输入50个字符,将字符放在BUFFER 所指的内存缓冲区中。请写出这段的程序

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

与地址线的低位相连。

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

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

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

MOV AL, 01111011B

OUT 42H, AL

MOV AL, 04H

OUT 42H, AL

MOV DI, 0

MOV CX, 2000

;发送2000个字符 MOV BX, 4000H

L0: IN AL, 42H

;读取状态字

TEST AL, 02H

JZ L0

IN AL, 40H

2 MOV [BX+DI], AL

INC DI

IN AL, 42H

TEST AL, 38H

;测试有无帧校验错 JZ ERR

LOOP L0

JMP EXIT

ERR: CALL ERR-OUT

;调出错处理 EXIT:

...

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

MOV AL, 0EAH

MOV DX, 2A2H

OUT DX, AL

MOV AL, 11H

OUT DX, AL

MOV DI ,0

MOV CX, 100

MOV BX, OFFSET BUF

BEG: IN AL, DX

TEST AL, 01H

JZ BEG

MOV AL ,[BX+DI]

相关文档
最新文档