第8章单片机串行通信及其接口
合集下载
单片机原理和应用基于汇编C51和混合编程串行口通信

UART_M0x6:串行口1方式0旳
通信速度控制位。
UART_M0x6=0,方式0旳波特
率为系统时钟频率旳12分频;
UART_M0x6=1,方式0旳波特
率为fosc/2。
13
8.3 串行口1旳工作方式
方式0 串行口数据由RxD引脚输入或输出,
同步移位脉冲经过TxD引脚输出, 发送、接受均为8位数据
23
8.4串行口1通信中波特率旳设置
(1)方式0 UART_M0x6=0时 ,波特率是
辅助寄存器AUXR fosc/12
D7 D6
D5
D4
D3 D2
T0x T1x UART_M0x6 BRTR S2SMO BRTx
12 12
D
12
D1
EXTR AM
D0
S1BR S
UART_M0x6=1时 ,波特率是fosc/2
7
8.2 串行口1旳有关寄存器
1.串行控制寄存器SCON,地址为98H,可进行位寻址
D7 D6 D5 D4 D3 D2 D1 D0 SM0/FE SM1 SM2 REN TB8 RB8 TI RI
SM0 SM1 工作方式 • 功能 波特率
S中无(置FM0该SS旳E效10MM位),/S。时FO1用位时M0E两S必只D当,在:MO1于为,0位须有检硬旳方位D2寄帧1接一由接方:0测件工式时为存位错式受起软受在到会作2,00器为误和才拟时件到方停将方只接P1检方干定,清旳式止该式C时有制 许受R测式有同位式O串S零第0时位位,正E位接才中M步寄N3效行N9阐,确中串存。受0干位,:。口、行器禁明接,当信有数该允在移方止T受该息效据位许方B接到位•;R必8串式受:B停为当当U特U特须行18R信发止AA1中该位为A率率接B时RR息送位,位U为08受等等,TT;:。数时X该为1__控允于于R接据,MM0寄T受ff旳00RooIxx:存数第Iss断:66断cc串据9==器祈串//位祈1210行旳求中行2时 时求口第;标口旳, ,标19志1发位志位波 波接位送位受8中中
单片机基础 第八章 单片机串行数据通信

MCS-51系列 单片机的串行口既用于网络通信, 也可以实现串行异步通信,还可以作为同步移位寄存 器使用.
8.2.1 串行口寄存器结构
有两个串行口的缓冲寄存器(SBUF),一个是发送 寄存器,一个是接收寄存器.
串行发送时,从片内总线向发送SBUF写入数据; 串行接收时,从接收SBUF向片内总线读出数据.两个 寄存器赋以同一地址(99H).
SM2=1, 若RB8=1,则将接收到的前8位数据送入SBUF,
并置位RI产生中断请求;否则将接收到的前8位数据丢弃.
SM2=0, 不论RB8为何值,都将前8位数据装入SBUF.
3.REN—允许接收位 REN=0 禁止接收 REN=1 允许接收
4.TB8—发送数据位8 在方式2和方式3时(多机通信),TB8的内容是要发送的
把能实现“并入串出”功能的移位寄存器与串行口 配合使用(REN=1),就可以把串行口变为并行输入口使 用.
并行输入
80C51
RXD TXD
Q8 CLK
CD4014 P/S
P1.0
MOV A , SBUF
图8.9 串行口与CD4014配合
移位操作(串入或串出)的波特率是固定的,为单 片机晶振频率的十二分之一,波特率=fosc/12. 2.应用举例
串行通信又分为异步和同步两种方式.在单片机 中使用的串行通信都是异步方式.
数数
数奇 停
据据 位位
据偶 止 位位 位
1
起 (0) (1) 始
… … (n-1)
起 始
位
位
0
………
帧
图 8.1 异步串行通信的字符格式
串行通信的数据的通路形式
• 单工形式 • 双工形式 • 半双工形式
8.2.1 串行口寄存器结构
有两个串行口的缓冲寄存器(SBUF),一个是发送 寄存器,一个是接收寄存器.
串行发送时,从片内总线向发送SBUF写入数据; 串行接收时,从接收SBUF向片内总线读出数据.两个 寄存器赋以同一地址(99H).
SM2=1, 若RB8=1,则将接收到的前8位数据送入SBUF,
并置位RI产生中断请求;否则将接收到的前8位数据丢弃.
SM2=0, 不论RB8为何值,都将前8位数据装入SBUF.
3.REN—允许接收位 REN=0 禁止接收 REN=1 允许接收
4.TB8—发送数据位8 在方式2和方式3时(多机通信),TB8的内容是要发送的
把能实现“并入串出”功能的移位寄存器与串行口 配合使用(REN=1),就可以把串行口变为并行输入口使 用.
并行输入
80C51
RXD TXD
Q8 CLK
CD4014 P/S
P1.0
MOV A , SBUF
图8.9 串行口与CD4014配合
移位操作(串入或串出)的波特率是固定的,为单 片机晶振频率的十二分之一,波特率=fosc/12. 2.应用举例
串行通信又分为异步和同步两种方式.在单片机 中使用的串行通信都是异步方式.
数数
数奇 停
据据 位位
据偶 止 位位 位
1
起 (0) (1) 始
… … (n-1)
起 始
位
位
0
………
帧
图 8.1 异步串行通信的字符格式
串行通信的数据的通路形式
• 单工形式 • 双工形式 • 半双工形式
8章—串口

2、方式2和方式3输入
RXD 位采样脉冲 RI(中断标志) 起始
D0 D1 D2 D3 D4 D5 D6 D7 RB8
停止位
接收时,数据从右边移入输入移位寄存器,在起 始位0移到最左边时,控制电路进行最后一次移位。 当RI=0,且SM2=0(或接收到的第9位数据为1)时, 接收到的数据装入接收缓冲器SBUF和RB8(接收数 据的第9位),置RI=1,向CPU请求中断。如果条件 不满足,则数据丢失,且不置位RI,继续搜索RXD 引脚的负跳变。
2、有电平偏移 RS-232C总线标准要求收发双方共地。通信距离较大时, 收发双方的地电位差别较大,在信号地上将有比较大的地电流 并产生压降。 3、抗干扰能力差 RS-232C在电平转换时采用单端输入输出,在传输过程中 当干扰和噪声混在正常的信号中。为了提高信噪比,RS-232C 总线标准不得不采用比较大的电压摆幅。
8.1.7
串行通信接口标准
一、RS-232C接口
RS-232C是EIA(美国电子工业协会)1969年修订RS232C标准。RS-232C定义了数据终端设备(DTE)与数据 通信设备(DCE)之间的物理接口标准。 1、机械特性 RS-232C接口规定使用25针连接器,连接器的尺寸及每个 插针的排列位置都有明确的定义。(阳头)
发送 发送 接收 接收
时间2 时间1
接收 发送
发送 接收
接收 发送
单工
半双工
全双工
8.1.3 串行通信接口的任务
通信协议:通信双方必须共同遵守的一种约定,
约定包括数据的格式,同步的方式,传送的步骤, 检纠错方式及控制字符的定义等
串口的基本任务
实现数据格式化 2 进行串行数据与并行数据的转换 3 控制数据的传输速率 4 进行传送错误检测
第8章 串行口原理及其应用

TXD(移位脉冲)
成于大气 信达天下
串行口的工作方式
Chengdu University of Information Technology
二、方式1
方式1是10位数据的异步通信口。TXD为数据发送引脚, RXD为数据接收引脚,传送一帧数据的格式如图所示。其中1 位起始位,8位数据位,1位停止位。
RS-422A接口 RS-485接口
成于大气 信达天下
串行通信的基本概念(十)
Chengdu University of Information Technology
RS-232C接口存在的问题
传输距离短,传输速率低 RS-232C总线标准受电容允许值的约束,使用时传输距 离一般不要超过15米(线路条件好时也不超过几十米)。 最高传送速率为20Kbps。 有电平偏移 RS-232C总线标准要求收发双方共地。通信距离较大时, 收发双方的地电位差别较大,在信号地上将有比较大的 地电流并产生压降。 抗干扰能力差 RS-232C在电平转换时采用单端输入输出,在传输过程 中当干扰和噪声混在正常的信号中。为了提高信噪比, RS-232C总线标准不得不采用比较大的电压摆幅。
成于大气 信达天下
串行通信的基本概念(七)
Chengdu University of Information Technology
传输速率与传输距离
传输速率
比特率是每秒钟传输二进制代码的位数,单位是:位/秒 (bps)。如每秒钟传送240个字符,而每个字符格式包含 10位(1个起始位、1个停止位、8个数据位),这时的比特率 为: 10位×240个/秒 = 2400 bps 波特率表示每秒钟调制信号变化的次数,单位是:波特 (Baud)。 波特率和比特率不总是相同的,对于将数字信号1或0直接 用两种不同电压表示的所谓基带传输,比特率和波特率是 相同的。所以,我们也经常用波特率表示数据的传输速率。
第8章串行通信接口

DLE本身也是特定字符,当它出现在数据 块中时,也要在它前面再加上另一个DLE。 这种方法叫字符填充。
3.面向比特的同步协议
特点: ① 所传输的一帧数据可以是任意位; ② 靠约定的位组合模式标志帧的开始和结束。 最有代表性的面向比特的协议:
① IBM的同步数据链路控制规程SDLC (Synchronous Data Conrtol)
8.1.3 串行通信方式
根据时钟控制方式可分为:
异步通信方式
通信的发送设备与接收设备使用各自的时钟 控制工作,要求双方的时钟尽量一致,但接收端 的时钟完全独立于发送端,由自己内部的时钟发 生器产生,所以实际频率总是有差异的。
同步通信方式
通信的双方使用同一个时钟控制数据的发送 和接收,发送端与接收端的时钟必须严格一致。
SOH:序始字符(Start OF Header),表示标题的开 始。
标题:包括源地址、目标地址和路由指示等信息。
面向字符同步协议的帧格式
STX:文始字符(Start Of Text),标志着传送正文的 开始。
ETB:组终字符(End of Trandmission Block),用于 每个分数据块后面
并行传输与串行传输
并行传输: 数据代码的每一位各占一条传输线,在两个数据部件之 间一次并行传输n位数据。适合近距离高速传输。 例:计算机内CPU与主存之间的数据传输。
串行传输 :
数据代码的所有位顺序串行排列成数据流,在一条 线缆上逐位传输。适宜远距离数据传输
例:①通信网中服务器与站点之间及各站点间的数 据传输。
德才兼备 知行合一
第八章 串行通信接口
微机目标:
◆ 掌握串行通信的基本概念; ◆ 掌握RS-232C串行接口标准;了解RS-422、RS-
3.面向比特的同步协议
特点: ① 所传输的一帧数据可以是任意位; ② 靠约定的位组合模式标志帧的开始和结束。 最有代表性的面向比特的协议:
① IBM的同步数据链路控制规程SDLC (Synchronous Data Conrtol)
8.1.3 串行通信方式
根据时钟控制方式可分为:
异步通信方式
通信的发送设备与接收设备使用各自的时钟 控制工作,要求双方的时钟尽量一致,但接收端 的时钟完全独立于发送端,由自己内部的时钟发 生器产生,所以实际频率总是有差异的。
同步通信方式
通信的双方使用同一个时钟控制数据的发送 和接收,发送端与接收端的时钟必须严格一致。
SOH:序始字符(Start OF Header),表示标题的开 始。
标题:包括源地址、目标地址和路由指示等信息。
面向字符同步协议的帧格式
STX:文始字符(Start Of Text),标志着传送正文的 开始。
ETB:组终字符(End of Trandmission Block),用于 每个分数据块后面
并行传输与串行传输
并行传输: 数据代码的每一位各占一条传输线,在两个数据部件之 间一次并行传输n位数据。适合近距离高速传输。 例:计算机内CPU与主存之间的数据传输。
串行传输 :
数据代码的所有位顺序串行排列成数据流,在一条 线缆上逐位传输。适宜远距离数据传输
例:①通信网中服务器与站点之间及各站点间的数 据传输。
德才兼备 知行合一
第八章 串行通信接口
微机目标:
◆ 掌握串行通信的基本概念; ◆ 掌握RS-232C串行接口标准;了解RS-422、RS-
8单片机原理及应用(第八章串行通信)PPT课件

数据帧(一帧数据):包含起始位(“0”电平)、数据位、 奇偶校验位、停止位(“1”电平)等组成。
2
异步通信中接收和发送双方必须(至少)有两项设定: (1)帧格式确定(帧字符长度) 如ASCII帧(字符)为10位。数据位7位,起始位、校验位、 停止位各一位。 (2)波特率的设定 波特率:每秒传输的位。 如120字符(帧)/秒,每帧数据10位,则传输速率为1200 波特率。
9
8-2-2 串行通信控制寄存器
与串行通信有关的寄存器共有三个。 1)串行控制寄存器SCON
位地址 9F
9E
9D
9C
9B
9A
位符号 SM 0 SM 1 SM 2 REN TB 8 RB 8
99 98 TI RI
字节地址:98H
10
各位功能说明: 1)SM0、SM1—串行口工作方式选择位
SM 0 SM 1 00 01 10 11
15
2) 电源控制寄存器PCON (波特率倍增控制寄存器)
字节地址:87H
位序
7
6
5
4
3
2
1
0
位符号 SMOD /
/
/
GF 1
GF0
PD IDL
SMOD=1,串行口波特率加倍; SMOD=0,波特率正常。 系统复位时,SMOD=0。 PCON不可以进行位寻址。
16
中断允许控制寄存器(IE)
位地址 AF
2)格式信息的插入和滤除 格式信息:异步通信格式中,启始位、奇偶校验位、停止位等。 串化过程:将格式信息插入,和数据位一起构成完整数据帧。 反串化过程:滤除格式信息,保留数据位。
3)错误检验 检验数据通信过程是否正确。
6
8-2 MCS-51单片机串行通信
2
异步通信中接收和发送双方必须(至少)有两项设定: (1)帧格式确定(帧字符长度) 如ASCII帧(字符)为10位。数据位7位,起始位、校验位、 停止位各一位。 (2)波特率的设定 波特率:每秒传输的位。 如120字符(帧)/秒,每帧数据10位,则传输速率为1200 波特率。
9
8-2-2 串行通信控制寄存器
与串行通信有关的寄存器共有三个。 1)串行控制寄存器SCON
位地址 9F
9E
9D
9C
9B
9A
位符号 SM 0 SM 1 SM 2 REN TB 8 RB 8
99 98 TI RI
字节地址:98H
10
各位功能说明: 1)SM0、SM1—串行口工作方式选择位
SM 0 SM 1 00 01 10 11
15
2) 电源控制寄存器PCON (波特率倍增控制寄存器)
字节地址:87H
位序
7
6
5
4
3
2
1
0
位符号 SMOD /
/
/
GF 1
GF0
PD IDL
SMOD=1,串行口波特率加倍; SMOD=0,波特率正常。 系统复位时,SMOD=0。 PCON不可以进行位寻址。
16
中断允许控制寄存器(IE)
位地址 AF
2)格式信息的插入和滤除 格式信息:异步通信格式中,启始位、奇偶校验位、停止位等。 串化过程:将格式信息插入,和数据位一起构成完整数据帧。 反串化过程:滤除格式信息,保留数据位。
3)错误检验 检验数据通信过程是否正确。
6
8-2 MCS-51单片机串行通信
第8章 STC12C5A60S2的串行通信
SYN 字符#1
SYN 字符#2
数据
增强型8051单片机实用开发技术
7/95
2.按照数据的传送方向分类 1)点对点传输
一般情况下,串行数据传送是在两个通信端之间进行的。其数据 传送的方式有如图所示的几种情况。 图(a)为单工通信方式。A端为发送站,B端为接收站,数据仅能 从A站发至B站。 图(b)为半双工通信方式。数据可以从A发送到B,也可以由B发送 到A。不过同一时间只能作一个方向的传送,其传送方式由收发控制开 关K来控制。 图(c)为全双工通信方式。每个站(A、B)既可同时发送,又可 同时接收。
D7 SM0/FE D 6 D 5 D 4 D 3 D 2 D 1 D 0
SM1
SM2
RENTB8RB8来自TIRISM0/FE:PCON寄存器中的SMOD0位为1时,该位用于帧错误检 测,当检测到一个无效停止位时,通过UART接收器设置该位。它必须由 软件清零。PCON寄存器中的SMOD0为0时,该位和SM1一起指定串行通 信的工作方式
按照串行数据的同步方式,串行通信本身又分为异步传送和同步传送两种 基本方式。 (1)异步传送 在异步传送中,每一个字符要用起始位和停止位作为字符开始和结束 的标志,它是以字符为单位一个个的发送和接收的。
异步传送时,每个字符的组成格式如下:首先是一个起始位表示字符 的开始;后面紧跟着的是字符的数据字,数据字可以是5,6,7或8位数据, 在数据字中可根据需要加入奇偶校验位;最后是停止位,其长度可以是一 位,一位半或两位。所以,串行传送的数据字节加上成帧信号起始位和停 止位就形成一个字符串行传送的帧。起始位用逻辑“0”低电平表示,停 止位用逻辑“1”高电平表示。图(a)所示为数据字为7位的ASCII码,第 8位是奇偶校验位。加上起始位、停止位,一个字符由10位组成。这样形 成帧信号后,字符便可以一个接一个的传送了。
第八章 串行通信接口
并行传输与串行传输
并行传输: 数据代码的每一位各占一条传输线,在两个数据部 件之间一次并行传输n位数据。适合近距离高速传输。 例:计算机内CPU与主存之间的数据传输。 串行传输 :
数据代码的所有位顺序串行排列成数据流,在一条 线缆上逐位传输。适宜远距离数据传输 例:①通信网中服务器与站点之间及各站点间的数 据传输。 ② 键盘到主机键盘接口电路的按键扫描码传送、 ③USB接口
0110000111
2.面向字符的同步协议
特点:
① 一次传送由若干个字符组成的数据块, ② 规定了10个特殊字符作为这个数据块的开 头与结束标志以及整个传输过程的控制信 息,它们也叫做通信控制字。 最有代表性的面向字符的协议: IBM公司的二进制同步通信协议(BSC)
面向字符同步协议的帧格式
SYN:同步字符(Synchrunous Character),表示一 帧的开始 SOH:序始字符(Start OF Header),表示标题的开 始。 标题:包括源地址、目标地址和路由指示等信息。
8.1.1 串行通信的特点
串行通信特点:
① 信息在一个方向上传输,只占用一根通信 线,因此在这根传输线上既传送数据信息 又传送联络控制信息;
② 信息格式有固定的要求;
③ 需要进行逻辑电平转换。
8.1.2 数据通信方式
串行通信中,数据通常是在两个站(如终 端和微机)之间进行传送,按照同一时刻 数据流的方向可分成三种基本传送模式
8.1.7 串行接口的基本结构 和基本功能
基本功能:
1、实现串行与并行数据之间的相互变换 2、根据串行通信协议完成串行数据的格式化 3、具有出错检测电路
1.异步串行通信接口
异步通信接口基本结构图
发送移位寄存器及发送控制逻辑:发送数据 寄存器的数据并行送入发送移位寄存器, 然后在发送时钟控制下,将装配好的数据 逐位发送出去。 接收移位寄存器及接收控制逻辑:在接收时 钟控制下,将串行数据输入线上的串行数 据逐位接收并移入接收移位寄存器。当移 位寄存器接收到规定的数据位后,将数据 并行送往接收数据寄存器。
气象仪器课件:第8章 串行口通信接口
第 8 章 串行口通信接口
8.2 MCS-51串口控制器
MCS-51有一个可编程的全双工串行通信接口,可作为 通用异步接收/发送器(UART- Universal Asychronous Receiver/Transmitter),也可作为同步移位寄存器。其帧格式 可为8位、10位、11位,并可设置多种不同的波特率。它通 过引脚RXD和TXD与外界进行通信。
8.3.1 方式0
方式0为同步移位寄存器输入/输出方式,常用于外接移 位寄存器,以扩展并行I/O口。8位数据为一帧,不设起始位 和停止位,先发送或接收最低位。波特率固定为fosc/12。
方式0发送 当CPU执行一条将数据写入发送缓冲器 SBUF的指令时,产生一个正脉冲,串行口即把SBUF中的8 位数据以fosc/12的固定波特率从RXD引脚串行输出,低位在 先,TXD引脚输出同步移位脉冲,发送完8位数据后将中断 标志位TI置“1”。时序如图8.4所示。
第 8 章 串行口通信接口
8.1.2 串行通信的制式
在串行通信中,数据是在两个站之间进行传送的,按照 数据传送方向,串行通信可分为单工(simplex)、半双工(half duplex)和全双工(full duplex)三种制式。图8.2为三种制式的示 意图。
第 8 章 串行口通信接口
图8.2 单工、半双工和全双工三种制式示意图
第 8 章 串行口通信接口
当上述两个条件满足时,接收到的数据送入SBUF(接收 缓冲器),第9位数据送入RB8,并将RI置“1”。若不满足这 两个条件,则接收的信息将被丢弃。
串行口方式2接收数据的时序波形如图8.7所示。 由方式2的TI,RI也必须由用户清0,才能进行下一次的 发送和接收。
第 8 章 串行口通信接口
第八章串行通信与可编程串行通信接口
(4)全双工、双缓冲器发送和接收。
(5)出错检测:具有奇偶、溢出和帧错误检测。 (6)输入输出与TTL电平兼容。
8.3.2 8251A的基本结构与引脚功能 1.基本结构
接口技术
8251A的结构框图如图所示。包括数据总 线缓冲器、读/写控制逻辑、MODEM控制电 路、发送器、接收器以及控制电路。
8.3.2 8251A的基本结构与引脚功能
解调器电话线
控制器
MODEM远程通信示意图
8.1.2 串行通信的基本概念 4.串行通信的检错和纠错
接口技术
检错是如何发现数据传输过程中出现的错误; 纠错是在发现错误后,如何采取措施纠正错误 (1)误码率 误码率是指数据经传输后发生错误的位数与总 传输位数之比。在计算机通信中,一般要求误 码率达到10-6数量级。与通信过程中的线路质 量、干扰、波特率等因素有关。
8.3.2 8251A的基本结构与引脚功能
接口技术
DSR(Data Set Ready):数据装置准备好,输入, 低电平有效。通用的输入信号,表示 MODEM或
外设的数据已经准备好。
RTS(Request To Send):请求发送,输出, 低电平有效。用于通知MODEM,CPU已准 备好,准备发送数据。 CTS(Clear To Send):清除发送,输入, 低电平有效。当有效时,表示MODEM或外 设允许8251A发送数据。
(1)连接CPU信号 D7~D0:数据总线。 CS:片选信号,低电平有效。
接口技术
C/D:控制/数据信号。高电平时,CPU对8251A写 入控制字或读取状态字;低电平时,CPU读/写数据 信号。当将C/D与CPU地址总线的最低位(A0)相 连时,8251A就占用两个端口地址,偶地址为数据 口地址,奇地址为控制口地址。