串行接口应用实验
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
(一)8251 串行接口应用实验
一、实验目的
1、掌握8251的工作方式。
2、学习串行通讯的有关知识。
二、实验设备
1、TDN86/88教学实验系统一台。
2、示波器一台。
3、一组排线。
三、实验内容及步骤
1、系统中的8251芯片
系统装有一片8251芯片,并和标准RS-232C接口连接好,如下图所示。
该电路用来完成同PC微机的联机以及串行监控操作的实现,其端口地址为:
数据口:C0H 控制口:C1H
2、实验单元中的8251
这片8251芯片用于各种串行口实验,连线见下图,其端口地址为:
数据口:80H 控制口:81H
3、8251串行接口应用实验
本实验中,串行传输的数据格式规定如下:
(1)一位逻辑‘0’的起始位,8位数据位(由低位开始传输),1位逻辑‘1’停止位。
(2)传输波特率9600baut。
数据信号的串行输出送示波器,可观察数据波形。与示波器连线如下:
8251 示波器
TxD _____________ +
GND_____________ -
4、实验程序,见13-1.ASM
CODE SEGMENT
ASSUME CS:CODE
START: CALL INIT ;初始化8253和8251
A1: CALL SEND ;向串口送55H
A2: MOV CX,0200H ;定时时间到,再发送下一个数据
LOOP A2
JMP A1 ;重复送数
INIT: MOV AL,76H ;8253的计数器1工作在方式3,送出方波信号,作为8251收发时钟
OUT 43H,AL
MOV AL,0CH ;方波频率为153.6KHz
OUT 41H,AL
MOV AL,00H
OUT 41H,AL
CALL RESET ;复位8251,即向控制口送3个0,一个40H
CALL DELAY ;8251工作速度慢,每送一个控制字,等待一会儿
MOV AL,7EH ;置异步方式:1个停止位,偶校验,字符长为8位,波特率因子为16
OUT 81H,AL ;控制口
CALL DELAY
MOV AL,31H ;RTS输出0,使CTS输入0
OUT 81H,AL ;清除错误标志,并使TxEN置1,允许发送
CALL DELAY
RET
RESET: MOV AL,00H ;复位8251
OUT 81H,AL
CALL DELAY
OUT 80H,AL
CALL DELAY
OUT 80H,AL
CALL DELAY
MOV AL,40H
OUT 81H,AL
RET
DELAY: PUSH CX ;延时子程序
MOV CX,6000H
A3: LOOP A3
POP CX
RET
SEND: PUSH AX ;发送55H
MOV AL,31H
OUT 81H,AL
POP AX
MOV AL,55H
OUT 80H,AL
RET
CODE ENDS
END START
5、实验步骤
(1)将示波器与8251的TxD、GND排针引脚相连接。
(2)输入程序并检查无误,经汇编、连接后装入系统。
(3)运行程序,在示波器上观察数据波形。
(4)改变发送的数,运行程序,观察相应波形。
四、思考题
8251对收发时钟有何特殊要求?
(二)双机通讯实验
一、实验目的
了解8251在半双工双机通讯情况下的软件编制和硬件连接技术。
二、实验设备
1、TDN86/88微机教学系统两台。
2、一组排线。
三、实验内容
用排线将两台仪器相连,具体连线如下图所示。
其中一号机用作接收机,二号机用作发送机。实验目的是将二号机中的3000~3009H十个单元中的代码传送到一号机的3000~3009H 单元中,1、2号机各自的实验程序如下:
一号机实验程序,见14-1.ASM
CODE SEGMENT
ASSUME CS:CODE
START: MOV AL,76H
OUT 43H,AL
MOV AL,0CH
OUT 41H,AL
MOV AL,00H
OUT 41H,AL
CLI
CALL INIT
CALL DELAY
MOV AL,7EH
OUT 81H,AL
CALL DELAY
MOV AL,34H ;清除出错标志,允许接收
OUT 81H,AL
CALL DELAY
MOV AX,0152H ;显示‘R’
INT 10H
MOV CX,000AH
A1: IN AL,81H
AND AL,02H
JZ A1
IN AL,80H
AND AL,7FH
MOV [DI],AL
INC DI
LOOP A1
MOV AL,00H
MOV SI,300AH
MOV [SI],AL
MOV AH,06H
MOV BX,3000H
INT 10H
STI
A2: JMP A2
INIT: MOV AL,00H
OUT 81H,AL
CALL DELAY
;OUT 81H,AL
;CALL DELAY
;OUT 81H,AL
;CALL DELAY
OUT 80H,AL
CALL DELAY
OUT 80H,AL
CALL DELAY
MOV AL,40H
OUT 81H,AL
RET
DALLY : PUSH CX
MOV CX,5000H
A3: LOOP A3
POP CX
RET
CODE ENDS
END START
;二号机实验程序,见14-2.ASM CODE SEGMENT
ASSUME CS:CODE
START: MOV AL,76H
OUT 43H,AL
MOV AL,0CH
OUT 41H,AL
MOV AL,00H
OUT 41H,AL
CALL INIT
CALL DELAY