当前位置:
文档之家› 单片机串行接口 (2)PPT课件
单片机串行接口 (2)PPT课件
停起
数
止始
据
位 位 LSB
位
奇 停起 数 偶 止始 据 MSB位 位 位 位
1/0 1 0 1/0 1/0 1/0 1/0 1/0 1/0 1/0 1/0 1/0 1 0 1/0 1/0 1/0
一帧数据 第n个字符
第n+1个字符
起始位: 为逻辑“0”信号,占用一位,用来通 知 接收设备,一个新的字符开始了
移位寄存器输入输出方式,可外接移位寄存器,以 扩展I/O口
方式0的波特率为: 波特率=fosc/12
⑴方式0 发送
数据输出
RXD
8051
TXD
移位脉冲
74LS164
3 4 5 6 10 11 12 13
D7
D0
方式0扩展I/O口硬件逻辑图
串入并出扩展输 出端口
一个数据写入SBUF,串口将数据从RXD输出 (波特率fosc/12),TXD输出同步移位信号, 发送完后TI自动置1,必须由软件清TI位。
在51单片机中,方式0采用固定波特率方式,方式 1为可变波特率方式,通常是由T1定时器溢出作为 波特率发生器的。
双机异步串行通信的几种不同接口方式。
1)单片机双机直连(TTL电平,仅适用于很短通信
距离和较低波特率,连接如下图
双机直连
RXD TXD GND
甲
RXD TXD GND
乙
2)RS-232串行接口
国际电子工业协会(EIA)制定RS-232串行通信接 口标准,规定如下:
TXD,RXD信号:逻辑1=-3~-15V,逻辑 0=+3~+15V,RS-232C最大通信距离在15m 左右,PC机串口即是一个标准RS-232口
RXD TXD GND 甲
PC机RS-232C DB9串行口引脚
232 电平 转换
GND
232 电平 转换
RS-232C双机通信
RXD TXD GND
乙
RS-232电平和单片机TTL电平间需要电平转换 芯片接口,常用的是MAX232.
485、422串行通信接口(*仅做了解*)
为进一步提高串行通信的距离,采用差分输出 驱动方式可以有效大幅提高可靠通信距离,即 485通信方式,其中485为半双工,422为全双 工通信方式,接口方式和常用芯片如下:
数据位: 5~8位。数据的最低位在前,最高位在后。
奇偶位: 紧跟在最高位之后,占用一位,奇偶校 验时,根据协议置“1”或“0”
停止位: 为逻辑“1”信号,占用1位或2位,当接 收端收到停止位时,表示一帧数据结束。
2.波特率(Baud rate):简单理解为每秒 钟一根串行线路上可以传输的二进制数据 位数,如PC机串行口常见的波特率值: 600,1200,2400,4800,9600, 19200……
串行通信:数据在一根线路上按照位的先后顺序一 位一位的传送。
特点:占用线路少,硬件接口简单,比较适合长距 离传输,一般比并行通信方式略慢。串行通信需要 定义专门的通信协议。
基本的串行通信方式有同步通信和异步通信两种。
串行通信中的数据是按帧(Frame)进行传输。
通信方向:异步串行通信的三种工作方式:
比特率(bps,bit per second):指每秒 钟能够传输的有效二进制位数。例如某设 置中一帧数据为10位,其中有效字节位数 为8位,波特率为9600,则比特率 =8×9600/10=7680 bps
波特率发生器:
串行通信中数据是按照一定的时钟频率按位向外一 位一位移入移出内部移位寄存器的,用于产生该移 位时钟的电路叫波特率发生器。
⑵方式0 接收数据输入Fra bibliotekRXD
8051
TXD
移位脉冲
74LS165
11 12 13 14 3 4 5 6
D7
D0
并入串出扩展输 入端口
方式0扩展I/O口硬件逻辑图
REN置1,串口将数据从RXD输入 (波特率fosc/12),TXD输出同步移位信号, 一个字符数据接收完RI置1,必须软件清RI位
单工、半双工、全双工(p133. 图8-2)
:指通信双方为确保通信成功而订立并共同遵守的 通信约定,主要包括数据帧格式,时钟速率,检查 纠错方式。各种串行通信方式都必须严格遵守其通 信协议才能保证通信的正确性。
1. 异步传送方式中的帧数据格式
一帧数据: 一个字符在异步传送中称为一帧数据
一帧数据由4部分组成: 起始位、数据位、奇偶位、停止位
*TB8: 在方式2和方式3中要发送的第9位数据,需 要时由软件置位或复位
*RB8: 在方式2和方式3中要接收的第9位数据,在 方式1时,如SM2=0,RB8是接收到的停止 位。在方式0中,不使用RB8
TI: 发送中断标志。在方式0串行发送第8位结束时由 硬件置“1”,或在其他方式中串行发送停止位的 开始时置“1”,必须由软件清“0”
SM0、SM1:串行口工作方式选择位,如表6-3所示 串行口工作方式
SM0 SM1
00 01 10 11
方式 0 1 2 3
功能
移位寄存器方式(用于I/O扩展) 8位UART,波特率可变 9位UART,波特率为fosc/32或fosc/64 9位UART,波特率可变
REN: 允许接收控制位。由软件置“1”时,允许接收, 置“0”时,禁止接收
接收缓冲器:只能读出不能写入 二者共用一个地址99H
2、串行口控制寄存器
字节地址为98H,可位寻址,位地址为98H~9FH
D7
D0
SCON (98H) SM0 SM1 SM2 REN TB8 RB8 TI RI
D7
D0
SCON (98H) SM0 SM1 SM2 REN TB8 RB8 TI RI
RI: 接收中断标志。在方式0串行发送第8位结束时 由硬件置“1”,或在其他方式中串行发送停止 位的开始时置“1”,必须由软件清“0”
3、特殊功能寄存器PCON 其字节地址87H,没有位寻址功能。
PCON (87H)
SMOD
SMOD:波特率选择位。SMOD=1时,波特率加倍
三、串行口工作方式
1、方式0
RXD TXD GND
甲
485/ 422 芯片
485/ 422 芯片
485串行通信
RXD TXD GND
乙
发送
接收
485半双工通信接口示意图和真值表
488全双工串行接口(*仅做了解*)
二 MCS-51单片机串行口结构 1、数据缓冲器SBUF 包括物理上独立的发送缓冲器、接收缓冲器 发送缓冲器:只能写入不能读出