微型计算机技术与应用第六章 串并行通信和
答案 初始化程序段: MOV AL, 40H OUT 41H, AL ;对8251A进行复位 MOV AL,38H OUT 41H, AL ;写模式字 MOV AL,24H OUT 41H,AL ;写第一个同步字符 OUT 41H,AL ;写第二个同步字符 MOV AL OUT 41H, AL ;写控制字 ? * (1)硬件连接:8086CPU与CRT终端接口连接如图所示。 8251A的输入信号和输出信号都是TTL电平, 而CRT信号电平是RS-232-C电平, 所以通过1488将8251A的输出信号变为RS-232-C电平,再送给CRT; 反过来,通过1489将CRT的输出信号变为TTL电平,再送给8251A。 第6章 串并行通信和接口技术 * DATA SEGMENT DISBUF DB 47H,4FH,4FH,44H,0DH,0AH ;GOOD字符的ASCⅡ码 COUNT DB $-DISBUF DATA ENDS ┋ MOV AL, 40H OUT 52H, AL ;对8251A进行复位 MOV AL ; 写入模式字 OUT 52H,AL MOV AL ; 写控制字 OUT 52H,AL MOV BX,OFFSET DISBUF ; 显示缓冲区首址 MOV CX,COUNT WAIT: IN AL,41H AND AL,01H ;判断TxRDY是否为1,不为1,等待 JZ WAIT MOV AL,ES:[BX] ;为1,则输出数据 OUT 50H,AL INC BX DEC CX JNZ WAIT HLT (2)软件设计 初次对8251A初始化,先送3个00H ,再送1个40H 第6章 串并行通信和接口技术 * 【例】通过8251A实现两台微机相互通信的硬件连接图如图所示。利用两片8251A通过标准串行接口RS-232C实现两台8086微机之间的异步串行通信。设两台微机中8251A的命令端口地址均为3F9H,数据端口地址均为3F8H。 第6章 串并行通信和接口技术 * 分析:设系统采用查询方式控制串行通信的过程。 初始化程序由两部分组成: ①将一方定义为发送方,发送方CPU查询到TxRDY有效时,则CPU向8251A并行输出一个待发送的字节数据; ②将对方定义为接收方,接收方CPU查询到RxRDY有效时,则从8251A输入一个已接收到的字节数据,直到全部数据传送完毕为止。 第6章 串并行通信和接口技术 * L1: MOV DX,3F9H IN AL,DX AND AL,01H ;查询TxRDY是否有效 JZ L1 ;无效则等待 MOV DX,3F8H MOV AL,[DI] ;向8251A输出一个字节数据 OUT DX,AL INC DI ;修改地址指针 LOOP L1 ;未传送完,则继续下一个 HLT 第6章 串并行通信和接口技术 START:MOV DX,3F9H MOV AL,7FH ;异步方式,8位数据, ;一位停止位,偶校验