当前位置:文档之家› 串行接口1

串行接口1


()双工方式 两个通信站都能同时发送与接收。 站A 站B
3.波特率
bits/秒(s)= n 波特 通信数据传输的速率 异步通信的波特率范围:50 9600波特 同步通信的波特率范围:几十 几百千波特 4.调制与解调 调制与解调的实质 10100111 1 0 1 0 0 1 1 1 10100111
串行通讯口BIOS功能(INT 14H)
AH
0
功能
初始化 串行通讯口
调用参数
AL=初始化参数
返回参数
AH=通讯口状态
DX=通讯口号(0,1) AL=调制解调器状态 AL=所写字符 DX=通讯口号 成功(AH7)=0 (AL)不变 失败(AH7)=1
1
向串行通 讯口写字符
(AH0-6)通讯口状态
2 从串行通 讯口读字符 DX=通讯口号 成功(AH7)=0 (AL)=字符 失败(AH7)=1 (AH0-6)通讯口状态 3 取通讯口状态 DX=通讯口号 AH=通讯口状态 AL=调制解调器状态
双同步
同步字 同步字 数据字 ••• 数据字 CRC1 CRC2
外同步
数据字 • • • 外同步信号 数据字 CRC1 CRC2
2.数据传送方向 (1)单工方式 数据的传送只能从两个通信站中的某一个站发出,另一站 只能接收。
站A
站B
(2)半双工方式 数据的传送可以从两个通信站中的某一个站发出,另一站 接收;但是,不能同时发送与接收。 站A 站B
例:要求0号通讯口的传输率为2400波特,字长为8位,1位终止
位,无奇偶校验。
MOV AH,0 MOV AL,0A3H MOV DX,0 INT 14H
波特率000=110波特 001=150波特 010=300波特 奇偶 00 无 01奇
字长:10=7位
11=8位
011=600波特
100=1200波特 101=2400波特
11偶
终止位
0:1位 1:2位
110=4800波特
111=9600波特
8251的引脚信号 SYNDET:同步检测信号,只用于同步方式 TXC、RXC: 8251没有内置的波特率发生器,必须由外部产生建 立波特率的时钟信号,TXC、RXC通常与8253连接
8251的命令字与初始化编程
模式寄存器的格式
8251的命令字与初始化编程 控制寄存器与状态寄存器的格式
CD RxD TxD DTR GND
1 2 3 4 5
6 7 8 9
DSR RIS CTS RI
DTR:CPU准备好接收数据,可由控制字中的DTR位置‘1’输出 。 DSR:调制解调器已经作好接收数据准备,由调制解调器给出读 入DSR位可知。该信号实际上是对DTR信号的回答。 RTS:请求发送信号。CPU准备好发送数据,由软件使控制字RTS 位置‘1’,输出RTS低电平有效信号。 CTS:准许发送信号。是对RTS信号的回答, 由调制解调器给出。
第九章
串行通信及接口电路
串行通信基本概念
8251芯片介绍
基本的通信方式有两种: 并行通信——数据的各位同时传送; 串行通信——数据一位一位顺序传送。
目的要求: 1.掌握串行通信接口的方式及特点; 2.掌握8251芯片的特点。 一.串行通信 1.异步与同步通信方式 (1)异步通信方式 以起始位/停止位表示第n个字符的开始与结束。
111 0 标 起 志 始 位 0/1 0/1 0/1 0/1 0/1 0/1 0/1 0/1 1 D0 D1 D2 D3 D4 D5 奇偶 停 D6 校验 止 七位数据 第1个字符(1帧数据) 位 位 0 0/1 0/1 0/1 起 D0 D1 D2 始 第2个字符 位 (1帧数据)
奇偶校验 奇校验——数据位与校验位“1”的个数之和为奇数 偶校验——数据位与校验位“1”的个数之和为偶数
MOV MOV OUT MOV MOV MOV OUT MOV
DX,209H AL,40H ;复位命令。 DX,AL AL,01001110B ;模式字 DX,AL AL,00110111B;控制字 DX,AL CX,256 ;发送256字节
接收程序
接收256字节,放在buf中
NEXT: MOV DX,209H IN AL,DX;状态字
8251的命令字与初始化编程
流程
8251编程示例
例:编写8251异步模式下的接收和发送程序,完成256个字 符的发送和接收,设端口地址:208H,209H,波特率因子 16,1起始位,1停止位,无奇偶校验,每字符8位。 发送程序 NEXT: MOV DX 209H IN AL,DX;状态字 AND AL,01H;TXRDY? JZ NEXT MOV AL,CL MOV DX,208H OUT DX,AL;发送 LOOP NEXT
站A MODEM MODEM 站B
调制电路举例(FSK,Frequency Shift Keying)
频率1
频率2
+
1 0 1001
数字信号
调制信号
5.标准RS—232C通信接口 (1)标准RS—232C通信接口连接器
引脚 1 2 3 4 5 6 7 8 9 符号 CD RxD TxD DTR GND DSR RTS CTS RI 方向 入 入 出 出 入 出 入 入 功 能 载波检测 接收数据 发送数据 数据终端就绪 信号地 数据设备就绪 请求发送 清除发送 振铃指示接通 DB—9D
控制寄存器
状态寄存器
8251的命令字与初始化编程 8251与CPU的数据交换
查询方式/中断方式 采用查询方式,在数据交换前应读取状态寄存器。 状态寄存器D0=1,CPU可以向8251数据端口写入 数据,完成串行数据的发送 状态寄存器D1=1,CPU可以从8251数据端口读出 数据,完成一帧数据的接收
;从存储器取发送数据 ;形成有效的奇偶标志的值 ;“1”个数为偶转发送 ; 奇偶标志位置1 ;发送数据
;从通信口接收数据 ;形成有效的奇偶标志的值 ;“1”个数为奇转错误处理 ;存储数据
(2)同步通信方式 以同步字符表示数据块的开始与结束。 同步通信的数据格式 单同步
同步字 数据字 ••• 数据字 CRC1 CRC2
8251的结构
模式寄存器:决定工作于同步或异步模式以及接收和发送的字符 格式 同步字符寄存器:存放同步模式下的同步字符
8251的引脚信号 C/D#: 该信号一般连至地址线A0,用于选择控制端口 /数据端口。数据输入输出寄存器合用一个端口,控 制寄存器与状态寄存器合用一个端口。 TxE:通知CPU发送移位寄存器空。此时,在状态寄 存器的TxE位置1。CPU可以查询TxE信号或状态寄 存器的TxE位 TxRDY:告诉CPU,8251已准备好发送,CPU可以为 其提供需要发送的字符 RxRDY:通知CPU,8251已从外部设备收到一个字符, 等待CPU读取。CPU可以查询该信号,或把该信号作 为中断请求信号。
PC1
PC2
PC1
单片机
(3)电平的规定 TxD,RxD 传号:-3V~ -25V 空号:+3V~ +25V 其他信号 OFF:-3V~ -25V ON:+3V~ +25V
二、可编程串行通信接口8251
通过编程,可以实现异步通讯协议或面向字符的同步通讯 协议,波特率:同步方式下:0-64Kbps;异步方式下:019.2Kbps。 同步方式下,每字符为5,6,7,8位,能自动检测同步字 符,自动添加奇偶校验。 异步方式下,每字符可为5,6,7,8位,自动增加起始位、 停止位和校验位。
发送端偶校验位的产生 ………… MOV DX,发送口地址 MOV AL,[数据地址] AND AL,AL JP TRANS OR AL,80H TRANS:OUT DX,AL ………… 接收端的偶校验 ………… MOV DX,接收口地址 IN AL,DX AND AL,AL JNP ERROR MOV [存数地址],AL …………
Data segment buf DB 256 dup(?) Data ends ┆ AND AL,02H; RXRDY? MOV DX,209H JZ NEXT MOV AL,40H;复位 MOV DX,208H OUT DX,AL IN AL,DX;接收1字符 MOV AL,0100,1110B;模式字 MOV buf[SI],AL OUT DX,AL INC SI MOV AL,0011,0111B;控制字 LOOP NEXT OUT DX,AL MOV CX,256 ;接收256字节 MOV SI,0
(2)两端口的连接
2 DB-9D 3 5 3 DB-25D 2 7
2 3 DB-9D 5
3 2 DB-25D 7
TXD RXD RTS CTS
RXD TXD CTS RTS
DSR
DTR GND
DTR
DSR GND
PC
TXD RXD RTS CTS DSR DTR GND
打印机
RXD TXD CTS RTS DTR DSR GND
相关主题