可编程串行接口8250
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
DCD 1
RXD TXD DTR GND
2 3 4 5
6 DSR
Βιβλιοθήκη Baidu
7 8 9
RTS CTS RI
DB-9型连接器
9针,9针全用
1、近距离连接(<15m)
只用3条线(发送线TXD,接收线RXD,信号地线)
A机
2 TXD 3 RXD 7
B机
2 3 TXD 7 RXD
4 5 6 20
4 5 6 20
2、远距离连接(>15m)
D7 D6 D5 D4 D3 D2 D1 D0 0
发送移位寄存器空 发送数据寄存器空
接收数据寄存器满 越限错 奇偶错
线路间断
结构错
若发送数据寄存器为空,其状态字为0010 0000(20H)
若接收数据寄存器为满,其状态字为0000 0001(01H)
7)中断控制寄存器
功能:实现中断优先权排队,允许在符合条件时发出中 断请求,或禁止在符合条件时发中断请求,实现中断管理。
发送方
接收方
公用时钟
异步串行通信方式
特点:以字符/字节为单位传送,通信双方需约定 协议(格式,速率等)。
异步通信必须遵从两项规定: 1.数据的格式:每一个数据传送时,必须加一个起
始位,后面加1或1.5或2个停止位。还可根据需要加 入校验位。
校验位 奇校验 :字符加上校验位有奇数个1; 偶校验 :字符加上校验位有偶数个1 。 校验位产生和检查由串行通信控制器内部自动产生,
4) 发送器
双缓冲结构,CPU发来并行数据,写入缓冲寄存器,再 送入移位寄存器。
发送缓冲
内
寄存器
部
数
据
总
线
传输线控制
寄存器
发送移位 寄存器
SOUT
发送同步 控制
RCLK
时序控制:内部数据发送的时钟频率同样为波特率的16倍。
5) 时钟发生环节(除数寄存器DLR)
8250发送和接收时钟(内部时钟信号)是波特 率的16倍,内部收发时钟可通过对外部时钟分频得 到。即:
调制解调器的调制方式有以下三种: ①振幅调制(Amplictute Shift Keying,ASK)
②频率调制(Frequency Shift Keying,FSK)
③相位调制(Phase Shift Keying,PSK)
串行通信需要解决的问题
双方以何种速率进行通讯 进行传输的数据格式 如何从位流中正确地采样到位数据 收发出错时如何处理
DTE
计算机 或终端 串行接口 DTE
机械特性 连接器(Connector)
13
25
(-)接收电流
发送电流(-)11
发送电流(+)9
DCD 8
GND 7
DSR 6
CTS 5
RTS 4
RXD
3 2
TXD 1
22 20 18(+)接收电流
14
DB-25型连接器
25脚,只用9个信号 (2个数据线,6个控制线,1个地址)
8250内部 锁存寄地存址器及的 数 任 读 存 数 任 向据 一 出 器 据 一 被输信被的输信选入号选内出号中片以选 有 中 容 选 有 的选稳选通效的通效82信定择5信时信时802号译信寄5号,号,0,码号存寄,可,可 器的写数据
CS0 CS1 CS2 A0 A1 A2 ADS DISTR DISTR DOSTR DOSTR
FF81 中断允许寄存器IRE
1 1 0010 ×
FF82 中断识别寄存器MCR
1 1 0011 ×
FF83 通信线路控制寄存器LCR
1 1 0100 ×
FF84 MODEM控制寄存器MCR
1 1 0101 ×
FF85 通信线路状态寄存器LSR
1 1 0110 ×
FF86 MODEM状态寄存器MCR
DDIS CSOUT
MR XATL1 XATL2
+5V GND
驱动器禁止信号,CPU 读读读写/ 8时25为0时内部高为电低平电。平,非 片控选输数出指示引脚,当三 个制逻片选据线都为有效时输出 高主外辑电复部平位时总线,输钟说入端明信。8号可25,接0被高晶选电振中平或
有直效接接外部时钟信号
3) 接收器
2. 按相关接口标准设计接口电路。常用RS-232-C。
RS-232-C串行接口标准
RS-232标准是美国EIA(电子工业联合会) 与BELL等公司一起开发的,1969年公布的通信 协议,适合的数传率:0~20Kbps。
RS-232对电气特性,逻辑电平和各种信号 线的功能都作了规定。
计算机 串行接口
可编程串行接口8250
本节主要内容
1 串行通信的一般概念 2 串行通信的接口标准 3 可编程串行通信接口芯片8250
一、串行通信基本概念
串行通信方式的特点
每个时间单位传送一位信息
每个字符(字节)的各位依次传送
传输线少,距离远,成本低
工 单工通信 作 半双工通信 方 式 全双工通信
同 同步通信
1)算法分析:采用查询方式发送接收数据。发送数据前 先检测LSR中相关状态位,若发送数据寄存器为空才将数 据从寄存器送入8250。接收数据前亦先检测LSR中相关状 态位,若接收数据寄存器满才将数据从8250读入CPU。
双缓冲结构,接收数据的过程是,当8250初始化后进 入允许接收和准备好接收数据时,监视SIN线。
接收缓冲
内
寄存器
部
数
据
总
线
传输线控制
寄存器
接收移位
寄存器
SIN
接收同步 控制
RCLK
时序控制:数据接收时钟RCLK的频率为接收信号波特 率的16倍。即检测到起始位后,接收器每隔16个波特率周 期对SIN输入的数据采样。
1 1 0111 ×
FF87 (无效)
3、8250的初始化
使通信控制寄存器D7=1 写除数寄存器低8位 写除数寄存器高8位 设置通信控制字 设置MODEM控制字 设置中断允许字
MOV DX, 0FF83H
MOV AL, 80H OMUOTV DX, A0FLF80H MOV AL, 18H
OUT DX, AL MOV DX, 0FF81H
CS CS CS A2 A1 A0 DLAB 012
地址
寄存器
1 1 0000 0
FF80 发送保持寄存器THR(写)
1 1 0000 0
FF80 接收缓冲寄存器RBR(读)
1 1 0000 1
FF80 除数锁存器(低8位)DLL
1 1 0001 1
FF81 除数锁存器(高8位)DLH
1 1 0001 0
内
中断允许
部
寄存器
数
据
中断识别
总
寄存器
线
中断
控制
INTRPT
逻辑
中断允许寄存器(IER )用于允许或禁止某种中断。 中断识别寄存器( IIR )用于识别中断源。
8)MODEM控制逻辑
功能:通过对调制解调器控制寄存器的编程设置,可以 控制提供给调制解调器的控制信号。
MODEM
内
控制寄存器
部
数
MODEM
若要访问除数寄存器(为了写入波特率因子,以得到合适 的内部时钟频率),可将控制字设定为1000 0000(80H)
若传送的数据通讯格式为1位停止位、8位数据位、无奇偶 校验,可将控制字设定为0000 0011(03H)
传输线状态寄存器(LSR)
8位可读/写寄存器,用于表示8250收/发通信时的状态信息 。
传输线控制
内
寄存器
部
数
据
总
线
传输线状态 寄存器
接收同步 控制
发送同步 控制
RCLK
传输线控制寄存器(LCR)
8位可读/写寄存器,用于设置串行通信的帧数据格式。
D7 D6 D5 D4 D3 D2 D1 D0
DLAB SB
SP
EPS PEN STB WLS1 WLS0
字长 00: 5位
禁止访问波特率因子寄存器 :0
01: 6位
允许访问波特率因子寄存器 :1
10: 7位
正常 :0
停止位 11: 8位
设置间断,SOUT发送空号 :1
0: 1位
无附加奇偶校验位 :0
1: 1.5位 (数据5位)
有附加奇偶校验位 :1
2位 (数据6, 7, 8位)
奇校验(D3=1) :0 偶校验(D3=1) :1
0: 无奇偶校验 1: 允许奇偶校验
停止位也是由硬件自动产生的。(偶数个错误不能检测)。
异步通信时,字符/字节是一帧一帧的传送,每帧 字符必须靠起始位来同步,在异步通信的数据传送中, 传输线上允许空字符。
2.波特率 (bps)
波特率就是传送数据位的速率(用位/秒)表示。 例:数据传送速率为120字符/秒,每帧包括10个数
据位,则波特率为 120×10=1200位/秒=1200bps
(5)发送和接收都采用双缓冲结构(数据稳定)。
1、8250的内部结构及工作原理
1) 数据总线缓冲器
D7 ~D0
数 据 总 线 缓 冲
器
内 部 数 据 总 线
功能:与CPU总线D7~D0连接,实现数据传送。
2) 读写控制逻辑
功能:接收读写命令和控制信号,决定对哪个寄存器进行操作
输入片选信 号,同时有 效选中8250
据
状态寄存器
总
线
调制 解调 控制 逻辑
RTS CTS DTR DSR RLSD RI
OUT1
OUT2
MODEM控制寄存器(MCR )用来对MODEM实施控制。 MODEM状态寄存器(MSR )提供控制信号的状态变化信息。
2、8250的寻址和连串接行数
数据总线
据收发
72LS245 D0 ~D7
AB DIR G
(4)实现与数据通信设备之间的联络控制。
8250主要功能
(1)支持异步串行通信规程,发送时可自动插入起 始位、停止位和奇偶校验位,接收时能自动删除。 (2)内部具有可编程的时钟产生电路,可对外部时 钟进行1~65535次分频。 (3)具有由CPU的发向调制解调器MODEM的控制 信号。 (4)具有优先级排除的中断系统,有多种中断源。
步
方 异步通信
式
1、工作方式
单工方式: 发送器 半双工方式: 发送器/
接收器
全双工方式: 发送器/
接收器
接收器
发送器/ 接收器
发送器/ 接收器
调制与解调
在做远距离传输时,需要通过MODEM将数字信号→模 拟信号,可以利用电缆线传输(称为调制),接收方 利用MODEM将模拟信号转换为数字信号(称为解调) 。
常用的异步通信的波特率的值为:150、300、600 、1200、2400、4800、9600、14400、28800。
二、串行通信的物理标准
进行串行通信的线路连接时,需要解决的问题: 1. 计算机与外设之间要共同遵守的某种约定,称 为物理接口标准,包括电缆的机械特性、电气特性、 信号功能和传送过程的定义。
1)需用MODEM和专用电话线 2)需用2~9条信号线(在接口与MODEM之间)
三. 可编程串行接口8250功能简介
CPU利用串行通信与外部进行数据交换,必须 通过串行接口电路实现。
D7~D0 INS8250
(1)进行串/并行转换。
SIN SOUT
(2)实现串行数据格式化。
(3)能进行可靠性校验。
f=fosc/分频次数=16*外部通讯波特率
分频次数也称作波特率因子,初始化时放入除数寄存 器。先写低八位,再写高八位。
波 特 率 因 子 = 外 部 提 供 的 标 准 时 钟 频 率 16波 特 率
内
波特率除数
部
锁存器(低)
数
波特 率发
据 总
波特率除数 锁存器(高)
生器
BAUDOUT
线
6) 传输线控制寄存器和传输线状态寄存器
读写控 制逻辑
RD WR
+5V
AEA片N8 选1控制
A9
A7
&
A6
A5 A4
A3
A2 A1
A0
RESET
D0 ~D7
ADS DISTR DOSTR
DISTR DOSTR
SOUT SIN RTS CTS DSR
RLSD
DTR RI
INS 8250
RLCK
CS1
CS0
BOUDOUT
CS2
OUT1
OUT2
MOV AL, 00H
OUT DX, AL (MO波V特D率X因, 0子FF为830H018H)
MOV AL, 03H (1位停止位,8位数据位, 无奇偶校验)
OUT DX, AL
4、8250的应用
例:利用8250实现串行通信的自发自收。将寄存器AH 的内容从10H开始通过8250发送、接收,每次收发后AH的 内容自动增1直到FFH为止,同时将每次接收到的数据,依 次写到内存4000~40EF单元中,实现自发自收。
收发双方必须严格遵守相关通信协议:
同步串行通信 异步串行通信
2、同步通信与异步通信
同步通信: 特点:利用同步字(SYN)获得双方的同步信息,
数据之间无间隔符(数据流)所以传输速率 较高,同步传输的数据格式:
CRC的意思是循环冗余校验码,用于检验在 传输过程中是否出现错误。
同步通信的优缺点
优点:一次传输多个数据,传输效率高,速度快。 缺点:一帧数据中收发时钟要保持高度同步,如果双 方的时钟频率有偏差,会因为积累造成错位。
A2
A1
A0
XTAL2
MR
XTAL1
+12V
+5V
1
MODEM 1 控制1信号
1
1
1
内部1 时 钟信号
-12V SN 75150
1 SN 75154
DB-25 2 TXD 3 RXD 4 RTS 5 CTS
6 DSR
8 DCD 20 DTR 22
RI 7 SGND
外部时
5V
钟输入
IRQ4
NC
时钟电路