微机接口技术答案 4 接口芯片作业参考答案——书2018
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第4次书面作业接口芯片参考答案
教材P286: 5 、9 、14、18
5.8254通道1产生500HZ的方波信号,设输入时钟频率CLK1=2.5M HZ 端口地址为0FFA0H~0FFA3H,试编制初始化程序。
解:
8254初始化流程:
1)确定初值和工作方式选择字;
2)写入方式选择字和初值
1)初值确定:
方波,选择工作方式3,f=2.5M,需要500HZ,则
初值=2500000/500=5000
选择二进制计数方式,需要使用16位计数初值寄存器
方式选择字:01 11 011 0
2)写入程序:
MOV AL, 76H
MOV DX, 0FFA3H
OUT DX, AL
MOV BX, 5000
MOV AL, BL
MOV DX, 0FFA1H
OUT DX, AL
MOV AL, BH
OUT DX, AL
9. 波特率是数据传送速率的指标,表示每秒钟传送的二进制位数,单位b/s
每帧数据组成:1+7+1+1=10位二进制位,每秒传输的字符个数=9600/10=960 14. 两个微机近距离使用8251实现串行通信,近距离,可以直接一个8251的
T X D连接到另一台的8251的R X D引脚。
传送2KB数据,没有指定模式字的具体内容,因此自己设定。
两个8251芯片均需要初始化,初始化流程:
1)设定工作方式,A发送,B接收;
2)A发控制命令启动发送;B发接收命令准备接收
3)数据传送一次
4)如还有数据,继续传送
初始化程序:
MOV AL, 0CEH 11 00 11 10 2个停止位,无校验,字长8,
因子16,发送允许,清除错误标志MOV DX, 8251_A_CTRL
OUT DX, AL
MOV AL, 31H 00 11 00 01 启动发送命令 OUT DX, AL MOV AL, 0CEH 11 00 11 10 2个停止位,无校验,字长8, 因子16,发送允许,清除错误标志 MOV DX, 8251_B_CTRL OUT DX, AL MOV AL, 34H 00 11 01 00 启动发送命令 OUT DX, AL
A 数据发送程序,查询方式: MOV CX, 2048 MOV SI, OFFSET BUFFER MOV DX, 8251_A_CTRL L1: IN AL, DX TEST AL, 01H JZ L1 MOV AL, [SI] OUT 8251_A_DATA, AL INC SI LOOP L1
18. 两个微机使用8255实现并行通信,直接将一个8255的A 端口连接到另一台
的8255的B 端口,主机A 的PC6(ACK )接主机B 的PC7,主机A 的PC7(OBF )接主机B 的PC0。
指定A 机的工作在方式1,B 机工作在方式0,双机都采用查询传送方式。 两个8255芯片均需要初始化,初始化流程: 1)设定工作方式,A 发送,B 接收; A 发送,工作方式1,采用查询方式,和主机的握手信号是PC6的ACK 信号,通知接收设备是PC7的OBF 信号;
B 接收,需指定和主机B 、外设的握手信号,需采用
C 端口的2位,选择PC0表示已经接收结束,主机B 可以取,PC7表示主机B 已经取走数据,可以接收下一个数据。 2)数据传送
初始化程序:
MOV AL, 0A0H 10 10 00 00 主机A 的A 端口发送,方式1 MOV DX, 8251_A_CTRL OUT DX, AL MOV AL, 8AH 10 00 10 10 主机B 的B 端口接收,方式0 MOV DX, 8251_B_CTRL OUT
DX, AL
数据传输:
主机A发送数据,查询方式:MOV CX, M
MOV SI, OFFSET BUFFER
MOV DX, 8255_A_A
L1: MOV AL, [SI]
OUT DX, AL
PUSH DX
MOV DX, 8255_A_C
L2: IN AL, DX
TEST AL, 40H
JNZ L2
POP DX
INC SI
LOOP
L1