第八章串行通信

合集下载

微机原理第八章 串行通信及串行接口

微机原理第八章 串行通信及串行接口

1. 可编程串行接口典型结构
✓状态寄存器
✓控制寄存器
✓数据输入寄存器--串行输入/并行 输出移位寄存器
✓数据输出寄存器--并行输入/串行 输出移位寄存器
2. 串行通信基本概念
在串行通信时,数据和联络信号使用同一条信号线 来传送,所以收发双方必须考虑解决如下问题: ❖ 波特率---双方约定以何种速率进行数据的发送和接收 ❖ 帧格式---双方约定采用何种数据格式 ❖ 帧同步---接收方如何得知一批数据的开始和结束 ❖ 位同步--- -接收方如何从位流中正确地采样到位数据 ❖ 数据校验--- -接收方如何判断收到数据的正确性 ❖差错处理---收发出错时如何处理 收发双方必须遵守一些共同的通信协议才能解决上述问题。
串行通信适于长距离、中低速通信
并行通信
将数据的各位同时在多根并行传输线上进行传输。
D0 0
D1 1
D2 0

D3 1
D4 D5
0 1
D6 1
D7 0
D0 D1 D2 D3 目 D4 的 D5 D6 D7
数据的各位同时由源到达目的地 → 快 多根数据线 → 短距离(远程费用高)
并行通信适于短距离、高速通信
工作方式下。
(8)错误检测 • 传输错误 • 覆盖错误
二、 接口与系统的连接
从结构上,可把接口分为两个部分,其中和 外设相连的接口结构与具体外设的传输要求及数 据格式相关,因此,各接口的该部分互不相同; 而与系统总线相连的部分,各接口结构类似,一 般都包括:
1. 总线收发器和相应的逻辑电路
2. 联络信号逻辑电路
接收端需要一个时钟来测定每一位的
时间长度。
波特率/位传输率---每秒传输的离散信号 的数目/每秒传输的位数。 波特率因子---

单片机原理及应用系统设计-基于STC可仿真的IAP15W4K58S4系列课件第8章

单片机原理及应用系统设计-基于STC可仿真的IAP15W4K58S4系列课件第8章

➢ 停止位至下一个起始位之间是不定长的空闲位,并且规定 起始位为低电平(逻辑值为0),停止位和空闲位都是高电 平(逻辑值为1),这样就保证了起始位开始处一定会有一 个下跳沿,由此就可以标志一个字符传输的起始。而根据 起始位和停止位也就很容易得实现了字符的界定和同步。
图8-3 异步通信数据格式
➢ 起始位:必须是持续一个比特时间的逻辑0电平,标志传输一个字符开 始,接收方可用起始位使自己的接收时钟与发送方数据同步。
➢ 停止位:停止位可以是是1位、1.5位或2位,可以由软件设定。它一定是 逻辑1电平,标志着传输一个字符的结束。
➢ 空闲位:空闲位是指从一个字符的停止位结束到下一个字符的起始位开 始,表示线路处于空闲状态,必须由高电平来填充。
2.串行通信的传输方式
➢ 串行通信根据数据传输的方向及时间关系可分为:单工、 半双工和全双工。
8.2.2 串口1的工作方式
(2) 接收:当软件置位接收允许标志位REN,即REN=1时, 接收器便以选定波特率的16分频的速率采样串行接收端口 RxD,当检测到RxD引脚输入电平发生负跳变时,则说明 起始位有效,将其移入移位寄存器,并开始接收这一帧信 息的其余位。
8.2.2 串口1的工作方式
3. 方式2和方式3 ➢ 串行口1工作在方式2和方式3时,其一帧的信息由11位组成:
8.2.1 串行口1的控制寄存器
➢ SM2:允许方式2或方式3多机通信控制位。 ➢ REN:允许/禁止串行接收控制位。由软件置位REN,即
REN=1为允许串行接收状态,可启动串行接收器RxD,开始 接收信息。软件复位REN,即REN=0,则禁止接收。 ➢ TB8:在方式2或方式3,它为要发送的第9位数据,按需要由 软件置位或清0。 ➢ RB8: 在方式2或方式3,是接收到的第9位数据,作为奇偶 校 验 位 或 地 址 帧 /数据帧的标志位 。方 式 0 中不用 RB8(置 SM2=0)。方式1中也不用RB8(置SM2=0, RB8是接收到的停止 位)。

第8章串行口通信

第8章串行口通信
22
8.3 串行口1的工作方式
8.3.4 多主机机通的信SM2位清0
在多机通信中方式2和 方式3更适合主从通信
通信过程举例
从机的SM2位置1
理论上,一个主机可以与256个 (3)主机收到从机回从发机的通地信址,后但,由检于验每是个否单与片主机机引先脚前发 送的地址一致,若不同,说的明输发入送阻过抗程及出总现线错上误阻,抗再的回存到在第,(1) 步,若相同,可以发出指令总或线数上据所信允息许(并TB联8从位机为的0)数。量要受 回 便发从(先机4)前能从约够机定接正好收确的主地应机接答再收信次到接少到号发限时通主给送制,信机主地。波错所机址如特误发,信果率送同息主应到时,机设的将本与置指次S过的M令主2多低或机位的一数与重从些据从新机以信机置连减息通1,后信以, 过程结束。
11
8.2 串行口1的相关寄存器
5. 唤醒控制寄存器WAKE_CLKO,地址为8FH
D7
D6
D5 D4
D3 D2 D1 D0
PCAWAKEU RXD_PIN_IE T1_PIN_ T0_PIN_ LVD_WAKE BRTCL T1CLKO T0CLKO
P
IE
IE
KO
RXD_PIN_IE=0时,禁止P3.0/RxD引脚的 下降沿置位RI,也禁止RxD引脚唤醒掉电 模式;
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中无(FM001该SS的E效0MM位)/S。时FO1用位时M010E两S只D当,在:MO1于为,0位有检硬的方位D2寄帧1接一接方方方:0测件工式时为存位错式式式收起收在到会作2,0012器为误和才确时到方停将方只P1检方能定,的式止该式C时有制 许R测式有同位式8信9信O串S第0时位位,位位正E位接中M步寄N3效行N9异异,确中串存。收0位,:步步。口、行器禁接,当信通通数该允在移方止T收该息据位许方B接到位当波特(独(;R必228串式SS特率立A收:BMM停为当U须行1率等波OO8XR信发止1中该RDD位为等于特接寄B时//息33送位,f于率位为存o2208收,))sf发;:。×数c器o时该×为1/s控生2(允c中f接定据o/,0器1s的时2cT收的的;R位/I计:溢U数第IU断:A数A断出R串据R9请T器串T率位请__行的MTM)求行1求0的0口第xx标6口溢6标=1=91志出01发时位志时接率位,,送位或收波中中

串行通信和并行通信的详解

串行通信和并行通信的详解
17:18:24
串行通信
通信双方使用一根或两根数据信号线相连,同一 时刻,数据在一根数据信号线上一位一位地顺序 传送,每一位数据都占据一个固定的时间长度. 与并行通信相比,串行通信的优点是传输线少、 成本低、适合远距离传送及易于扩展.缺点是速 度慢、传输时间长等. 如计算机上常用的COM设备、USB设备和网络 通信等设备都采用串行通信.
17:18:24
并行通信
以字节Byte或字节的倍数为传输单位 一次传送一个或一个以上字节的数据,数据的各 位同时进行传送 适合于外部设备与微机之间进行近距离、大量 和快速的信息交换.计算机的各个总线传输数据 时就是以并行方式进行的. 并行通信的特点就是传输速度快,但当距离较远、 位数较多时,通信线路复杂且成本高.
半双工通信方式类似对讲机,某时刻A发送B接
收,另一时刻B发送A接收,双方不能同时进行发送
A 和接收.
B
A

K
K
a)单工通信b方 )半 式双工通
17:18:24
图c为全双工通信方式Full Duplex.在这种方式 中,分别用2根独立的传输线来连接发送方和接 收方,A、B既可同时发送,又可同时接收.
17:18:24
外同步
外同步通信的数据格式中没有同步字符,而是用 一条专用控制线来传送同步字符,使接收端及发 送端实现同步.当每一帧信息结束时均用两个字 节的循环控制码CRC为结束.
17:18:24
②面向比特型的数据格式 根据同步数据链路控制规程SDLC,面向比特型 的数据每帧由六个部分组成.
第一部分是开始标志7EH; 第二部分是一个字节的地址场; 第三部分是一个字节的控制场; 第四部分是需要传送的数据,数据都是位bit的集 合; 第五部分是两个字节的循环控制玛CRC; 最后部分又是7EH,作为结束标志.

串行通信课件

串行通信课件

七■小结
本节课我们学习了串行通信的基本概念,包括: ▼串行通信的概念:即借助于1根传输线将数据1位1位地进行传输; ▼串行通信的特点:传输速度慢,节省传输线; ▼串行通信的数据传送方式:单工、半双工和全双工; ▼串行通信的基本方式:同步通信和异步通信; ▼异步通信的数据格式:1位低电平的起始位+5〜8位的数据位+校验位(可 选)+1~2位的高电平的停止位; ▼数据传输率:波特率。
并行通信的特点: ▼传输速度快,效率高; ▼需要的数据线多,所以传输成本高。
串行通信的特点: ▼传送速度较慢; ▼仅需要1根传输线,所以节省传输线。
二■串行通信的数据传送方式
按照数据在传输线上的传输方向,串行通信可分为:单工通信、半双工 通信和全双工通信。
半双工通信
三■串行通信基本方式
▼根据数据的分界及同步的方法不同,串行通信基本方式分为两种: 同步通信和异步通信。 ▼同步通信是以同步字符开始、以CRC校验字符结束的数据块为信息 单位,而每个数据块的长度根据需要而定,因此同步通信要求收发 双 方的时钟严格同步。 ▼异步通信是以起始位开始、以停止位结束的字符为信息单位,所以 收发双方的时钟不要求严格同步,只要在一个字符内收发双方的时钟 同步即可。
单片机的串行口 -串行通信
杨凌霄教授河南理工大学
一■串行通信及特点
▼通信是单片机与外界的信息传输。按每次传输的二进制数位数通信分为: 并行通信和串行通信。 ▼并行通信是将多位数据在多条并行传输线上同时传输;而串行通信则是通 过一根数据线,将数据一位一位地顺序传输;2种方式都需共地。
一■串行通信及特点
低位
校验位

空闲位
1---1
起始位
0 0/1

第八章串行通信技术

第八章串行通信技术

第八章串行通信技术§8。

1串行通信的概述及RS-232C总线教学方法:讲授法教学目的:1、了解单片机串行通信的基本方法。

2、掌握单片机串行通信的相关概念。

3、了解RS-232C总线。

4、了解RS-232C总线电平及计算机信号电平教学重点:串行通信的方式教学难点:波特率的理解和信号电平的理解教学过程:组织教学:授课课时:(2课时)扳书课题:§8。

1串行通信的概述及RS-232C总线引入新课:一、串行通信概述1、什么叫串行通信?并行、串行举生活中的例子(排横队行走,排纵队行走)说明;引出并行通信,串行通信的概念。

P00P01 外设1P02P0389C51RXD外设2TXD串行通信就是使计算机中的数据一位一位地按先后顺序在一根传输线上传送。

通常有两种基本的通信方式:异步通信和同步通信。

2、异步通信和同步通信回顾在数字电路中所学的移位寄存器工作原理。

可提问学生。

异步通信:异步——发送时钟不一定等于接收时钟。

如下图:数据传送是帧的形式传送,每一帧数据包括起始位、数据位、奇偶校验位、停止位四部分。

其中数据位可以是5位、6位、7位、8位。

在一帧格式中,先是一个起始位0,然后是8个数据位,规定低位在前,高位在后,接下来是奇偶校验位(可以省略),最后是停止位1。

用这种格式表示字符,则字符可以一个接一个地传送。

特点:不同速度的外设可相互传送,但传送数据比实际数据位数多(加起始位、停止位等),占用CPU时间,传送速度较慢。

同步通信同步——发送设备时钟等于接收设备时钟。

在同步通信中,每个字符要用起始位和停止位作为字符开始和结束的标志,占用了时间;所以在数据块传递时,为了提高速度,常去掉这些标志,采用同步传送。

由于数据块传递开始要用同步字符来指示,同时要求由时钟来实现发送端与接收端之间的同步,故硬件较复杂。

发送方和接收方时钟完全一样,只要双方同时准备好(同步),可直接传送数据,无需附加多余的控制位,传送数据效率高,但设备要求高。

《微机原理及应用》第八章串行通信及接口电路

《微机原理及应用》第八章串行通信及接口电路

思考题与讨论环节
1. 思考题
请比较RS-232、USB、SPI和I2C四种串 行通信技术的优缺点及适用场景。Leabharlann VS2. 讨论环节
随着物联网、智能家居等新兴技术的发展 ,串行通信技术将面临哪些挑战和机遇? 请结合实际应用案例进行讨论。
THANKS
感谢观看
SPI通信技术
SPI(Serial Peripheral Interface)是一种同步串行通信协议,主要用于嵌入式系统中微控 制器与外围设备之间的通信。SPI具有简单、高速和低成本等优点。
I2C通信技术
I2C(Inter-Integrated Circuit)是一种双向同步串行通信协议,主要用于连接微控制器和外 围芯片。I2C具有简单、低功耗和多主机支持等优点。
02
dcb.Parity = NOPARITY; // 不使用奇偶校验
03
SetCommState(hCom, &dcb); // 更新端口设置
实例演示:简单串行通信程序编写
• char data[] = "Hello, world!"; // 要发送的数据
实例演示:简单串行通信程序编写
DWORD bytesWritten;
功能
实现微处理器与外设或微处理器之间的数据交换,包括数据缓冲、电平转换、信 息格式转换等。
分类
根据传输方式可分为并行接口和串行接口;根据信号性质可分为数字接口和模拟 接口。
典型接口电路介绍
RS-232C接口电路
SPI接口电路
采用负逻辑电平标准,通过电平转换 芯片与微处理器连接,实现数据的串 行传输。
实例演示:简单串行通信程序编写
}
1
2

第八章 并行通信和串行通信

第八章  并行通信和串行通信

第八章: 第八章:并行通信和串行通信
8255A的引脚功能 的引脚功能 DIP封装,共40个引脚。 封装, 个引脚。 封装 个引脚 1. 连接系统总线的主要引脚 D0~D7:数据线,连CPU数据总线; 数据线, 数据总线; 数据总线 RESET:复位输入,接系统总线的RESET; :复位输入,接系统总线的 ; CS:片选信号,接译码器; :片选信号,接译码器; RD:读命令输入,接CPU的RD; :读命令输入, 的 ; WR:写命令输入,接CPU的WR; :写命令输入, 的 ; A0,A1:片内端口地址选择,根据 和A1可 片内端口地址选择,根据A0和 可 分别对芯片内的4个端口进行读写操作。 分别对芯片内的 个端口进行读写操作。 个端口进行读写操作
5 35
10 30
15 25
21
第八章: 第八章:并行通信和串行通信 8255A的引脚功能 8255A的引脚功能
A1、A0端口选择情况, A1、A0端口选择情况,见右表 端口选择情况 由CS、A1、A0、RD、WR引脚的不 CS、A1、A0、RD、WR引脚的不 同组合,实现各种不同的功能。见下表: 同组合,实现各种不同的功能。见下表:
第八章: 第八章:并行通信和串行通信 8255A的工作方式——方式0(基本输入/输出方式) 8255A的工作方式——方式0(基本输入/输出方式) 的工作方式——方式0(基本输入
OUT 8255数据端口地址 AL 数据端口地址, 数据端口地址
DB
;写操作 写操作
数据
8 输出锁存器
外设
AB
n
译码器
M / IO
5 35
10 30
15 25
21
第八章: 第八章:并行通信和串行通信 8255A的工作方式 8255A的工作方式

串行通讯的概念ppt课件

串行通讯的概念ppt课件
并行接口
目前,计算机中的并行针D形接头。所谓“并行”,是指8位数据同时通过并行线进行传送,这样数据传送速度大大提高,但并行传送的线路长度受到限制,因为长度增加,干扰就会增加,容易出错。 现在有五种常见的并口:4位、8位、半8位、EPP和ECP,大多数PC机配有4位或8位的并口,许多利用Intel386芯片组的便携机配有EPP口,支持全部IEEE1284并口规格的计算机配有ECP并口。 标准并行口4位、8位、半8位:4位口一次只能输入4位数据,但可以输出8位数据;8位口可以一次输入和输出8位数据;半8位也可以。 EPP口(增强并行口):由Intel等公司开发,允许8位双向数据传送,可以连接各种非打印机设备,如扫描仪、LAN适配器、磁盘驱动器和CDROM 驱动器等。 ECP口(扩展并行口):由Microsoft、HP公司开发,能支持命令周期、数据周期和多个逻辑设备寻址,在多任务环境下可以使用DMA(直接存储器 访问)。
RS-232C的接口信号 ---TxD RxD
(2)数据发送与接收线: 发送数据(Transmitted data-TxD)——通过TxD终端将串行数据发送到MODEM,(DTE→DCE)。 接收数据(Received data-RxD)——通过RxD线终端接收从MODEM发来的串行数据,(DCE→DTE)。 (3)地线 有两根线SG、PG——信号地和保护地信号线,无方向。
RS-232C的接口信号 RTS CTS
请求发送(Request to send-RTS)——用来表示DTE请求DCE发送数据,即当终端要发送数据时,使该信号有效(ON状态),向MODEM请求发送。它用来控制MODEM是否要进入发送状态。 允许发送(Clear to send-CTS)——用来表示DCE准备好接收DTE发来的数据,是对请求发送信号RTS的响应信号。当MODEM已准备好接收终端传来的数据,并向前发送时,使该信号有效,通知终端开始沿发送数据线TxD发送数据。 这对RTS/CTS请求应答联络信号是用于半双工MODEM系统中发送方式和接收方式之间的切换。在全双工系统中作发送方式和接收方式之间的切换。在全双工系统中,因配置双向通道,故不需要RTS/CTS联络信号,使其变高。

第8章串行数据通信

第8章串行数据通信
SJMP WAIT NEXT: MOV A,SBUF
MOV @R0,A CLR RI INC R0 SJMP WAIT
;查询等待
;读取接收数据 ;保存数据
;准备下一次接收
2.中断方式:
MAIN: H:
RINT:
ORG AJMP … SJMP CLR MOV MOV INC RETI
0023H
RINT
起始位 D0 D1 D2 D3 D4 D5 D6 D7 停止位
起始位 D0 D1 D2 D3 D4 D5 D6 D7 D8 停止位
一帧字符发送/接收结束,置位标志位(TI/RI), 并申请串行中断。
中断控制:中断允许位ES、总允许EA; 中断入口:0023H•。第8章串行数据通信
一、串行接口控制:
接收完一帧,若RI=0且第9位为1 (或SM2=0),将接收数据
装入接收SBUF,第9位装入RB8,使RI=1;否则丢弃接收数据,
不置位RI。
•第8章串行数据通信
时序图:
写入 SBUF
TXD输出
起始位
D0 D1 D2 D3 D4 D5 D6 D7 TB8 停止位
TI
检测 负跳变
RXD输入
起始位 D0
(1)方式0:同步移位寄存器方式
用于扩展并行I/O接口。 1. 一帧8位,无起始位和停止位。 2. RXD:数据输入/输出端。
TXD:同步脉冲输出端,每个脉冲对应一个数据位。
3. 波特率B=fosc/12 如:fosc=12MHz,B=1MHz,每位数据占1s。
4. 发送过程:写入SBUF,启动发送,
RXD
数据
低→高
QH
(2) SIN
S/L CLK

串行通信的基本概念概要课件

串行通信的基本概念概要课件
串行通信的基本概念概要
• 串行通信概述 • 串行通信 • 串行通信接口准 • 串行通信的数据式 • 串行通信的常与解 • 串行通信的展与未展望
01
串行通信概述
串行通信的定 义
01
串行通信是一种数据通信方式, 它通过一条传输线逐位传输数据, 数据在传输线上以位(bit)为单 位顺序传输。
02
在串行通信中,发送端将数据拆 分成一位一位的位流,然后依次 发送,接收端再将这些位流重新 组合成原始数据。
详细描述
无线串行通信技术利用无线电波或红 外线等介质传输数据,具有灵活、便 捷的优点,广泛应用于移动设备、智 能家居等领域。
物联网中的串行通信技术
总结词
物联网中的设备数量庞大,需要高效的串行通信技术进行数据传输。
详细描述
物联网中的串行通信技术需要支持大量设备的连接和数据传输,同时保证数据的安全性和稳定性。在 智能交通、智能农业等领域有广泛应用前景。
信,但实现起来相对复杂且成本较高。
多线制传
总结词
多线制传输是一种数据传输方式,它使用多条信号线 来同时传输多个信号。
详细描述
多线制传输通过使用多条信号线来同时传输多个信号, 可以实现更高的数据传输速率。常见的多线制传输方式 包括差分信号传输和多相时钟信号传输等。差分信号传 输使用一对差分线来传输信号,具有抗干扰能力强、低 电压摆幅等优点。多相时钟信号传输使用多个相位不同 的时钟信号来控制数据的发送和接收,可以提高数据传 输的可靠性。多线制传输适用于高速、高可靠性的通信 系统。
同步 传
总结词
同步传输是一种数据传输方式,它需要一个 同步时钟信号来控制数据的发送和接收。
详细描述
在同步传输中,数据以帧为单位进行传输, 每个帧由同步头和数据两部分组成。同步头
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
对于发送缓冲器,因为发送时CPU是主动的,不会产 生重叠错误,一般不需要用双缓冲器结构来保持最 大传送速率。

二、串行口控制字及控制寄存器
89C51串行口是可编程接口,对它初始化编程只 用两个控制字分别写入特殊功能寄存器SCON(98H) 和电源控制寄存器PCON(87H)中即可。
1. 串行口控制寄存器SCON(98H)
(a)并行传输
(b)串行传输
两种通信方式
二、 串行通信
串行数据通信要解决两个关键技术问题, 一个是数据传送,另一个是数据转换。所谓数 据传送就是指数据以什么方式进行传送。所谓 数据转换就是指单片机在接受数据时,如何把 接收到的串行数据转化为并行数据,单片机在 发送数据时,如何把并行数据转换为串行数据 进行发送。


在满足串行口接收中断标志位RI(SCON.0)=0的条 件下,置允许接收位REN(SCON.4)=1就会接收一 帧数据进入移位寄存器,并装载到接收SBUF中,同 时使RI=1。当发读SBUF命令时(执行“MOV A,SBUF” 命令),便由接收缓冲器(SBUF)取出信息通过 89C51内部总线送CPU。
奇偶校验位(D8):
占一位,用于对字符传送作正确性检查。奇偶校 验位是可选择的,共有三种可能,即奇校验、偶校验 和无校验,由用户根据需要选定。通信双方需约定已 知的奇偶校验方式。如果选择偶校验,那么组成数据 位和奇偶位的逻辑1的个数必须是偶数;如果选择奇校 验,那么逻辑1的个数必须是奇数。 也可用这一位(1/0)来确定这一帧中的字符所代表信 息的性质(地址/数据等)。
TXD(移位脉冲)
应用:扩展并IO输入口
RXD 8051 TXD
D0
......
D7
Q
CLK
74LS165
STB
P1.0
要实现数据接收,必须首先把SCON中的允许接收 位REN设置为1。当REN设置为1时,数据就在移位脉 冲的控制下,从RXD端输入。当接收到8位数据时,置 位接收中断标志位RI,发生中断请求。其接口逻辑如 下图所示。由逻辑图可知,通过外接74LS165,串行 口能够实现数据的并行输入。 CD4014
(三)串←→并转换
在接收数据时,来自通信线路的串行数据被压入 移位寄存器,满8位后并行送到单片机内部。 如下图 所示。
(三)串←→并转换
在串行通信控制电路中,串--并、并--串转换
逻辑被集成在串行异步通信控制器芯片中。 51单片机的串行口和IBM-PC相同。
§8.2 51单片机串行口及应用
(2) REN----允许串行接收位。由软件置REN=1,则启
动串行口接收数据;若软件置REN=0,则禁止接收。
(4) TB8——发送第9位数据
在方式2、3时,TB8的内容是要发送的第9位数据, 其值由用户通过软件来设置。可以用作数据的奇偶校验 位,或在多机通信中,作为地址帧/数据帧的标志位。 在方式0和方式1中,该位未用。 (5) RB8——接收的第9位数据 在方式2、3时,RB8是接收的第9位数据。作为奇 偶校验位或地址帧/数据帧的标志位。 在方式1时,若SM2=0, RB8是接收的停止位. 在方式0时,不使用RB8.
main() { SCON=0; ES=1; EA=1; SBUF=temp; while(1); } void ser()interrupt 4 { TI=0; delay(300); temp=_crol_(temp,1); SBUF=temp; }
2、方式0数据接收
REN=1 RI=0 RXD(数据输入) D0 D1 D2 D3 D4 D5 D6 D7
单片机串行口及串行通信技术
本章主要介绍串行通信概念及51系列单片机 的串行口问题,将具体介绍以下内容: 串行通信基础----基本概念 51单片机串行口----串行口结构、串行口的控制 寄存器、串行口的工作方式、应用举例。
§8.1 串行通信基础
一、 数据通信
计算机与外界的信息交换称为通信。 通信方式有:并行通信和串行通信。
2. 电源控制寄存器(PCON)
PCON不可位寻址,字节地址为87H。它主要是为 CHMOS型单片机80C51的电源控制而设置的专用寄存 器。其内容如下:
三、51单片机串行通信工作方式
串行口的工作方式由 SM0 和 SM1 确定,编码和功 能如下表所示
SM0 0 SM1 0 方式 方式0 功能说明 移位寄存器 波特率 fosc/12
1. 方式0数据发送
写入SBUF RXD(数据) TXD(移位脉冲) TI(中断标志)
D0 D1 D2 D3 D4 D5 D6 D7
应用:扩展并行IO输出口
应用:扩展并行IO输出口
RXD 8051 TXD
D0
。。。。。。
D7
A B
CLK
74LS164
STB
P1.0
当数据写入SBUF后,数据从RXD端在移位脉冲 (TXD)的 控制下,逐位移入74LS164,74LS164能 完成数据的串并转换。当8位数据全部移出后,TI由硬 件置位,发生中断请求。若CPU响应中断,控制数据 由74LS164并行输出。 CD4094
89C51通过引脚RXD(P3.0,串行数据接收端) 和引脚TXD(P3.1,串行数据发送端)与外界进行通 信。如下图所示:
一、结构
图中有两个物理独立的接收、发送缓冲器SBUF, 它们占用同一低值99H,可同时发送、接收数据。 发送缓冲器只能写入,不能读出;接收缓冲器只能 读出,不能写入。 串行发送与接收的速率与移位时钟同步。89C51用 定时器T1作为串行通信的波特率发生器,T1溢出率 经2分频(或不分频)后又经16分频作为串行发送 或接收的移位脉冲。移位脉冲的速率即是波特率。
89C51串行通信的方式选择、接收和发送控制以及 串行口的状态标志等均由特殊功能寄存器SCON控制和 指示,其控制字格式如下图所示
串行口控制寄存器SCON
SCON中各位说明如下: (1) SM0 、SM1——串行口工作方式选择位 其状态组合和对应工作方式为:
(1) SM2----多机通信控制位,主要用于方式2和方式3。


从图中可看出,接收器是双缓冲结构,在前一个字节 被从接收缓冲器SBUF读出之前,第二个字节即开始 被接收(串行输入至移位寄存器),但是,在第二个 字节接收完毕而前一个字节CPU未读取时,会丢失前 一个字节。 串行口的发送和接收都是以特殊功能寄存器SBUF的 名义进行读或写的。当向SBUF发“写”命令时(执 行“MOV SBUF,A”指令),即是向发送缓冲器 SBUF装载并开始由TXD引脚向外发送一帧数据,发 送完便使发送中断标志位TI=1。
(6) TI——发送中断标志位
在方式0时,发送完第8位数据后,该位由硬件置位。 在其它方式下,于发送停止位之前,由硬件置位。 TI=1表示帧发送结束,其状态既可供软件查询使 用,也可请求中断。TI由软件清“0”。 (7) RI——接收中断标志位 在方式0时,接收完第8位数据后,该位由硬件置位。 在其它方式下,接收到停止位之前,该位硬件置位。 RI=1表示帧接收结束,其状态既可供软件查询使用, 也可请求中断。 RI由软件清“0”。
0
1 1
1
0 1
方式1
方式2 方式3
8位UART
9位UART 9位UART
可变
fosc/64 或者 fosc/32 可变
方式0和方式2的波特率是固定的,而方式1和方 式3的波特率是可变的,由T1的溢出率决定。
(一)串行工作方式0
方式0为同步移位寄存器输入/输出方式,不
适用于两个51单片机之间的直接数据通信, 常用于扩展I/O口。 串行数据通过RXD输入或输出,发送和接 收均为8位数据,低位在先,高位在后。 TXD用于输出移位时钟,作为外接部件的 同步信号,波特率固定为fosc/12。
在串行通信中,数据位的发送和接收分别由发送 则波特率高,通信速度就快;反之,时钟频率低,波
特率就低,通信速度就慢。
时钟脉冲和接收时钟脉冲进行定时控制。时钟频率高,
(三)串←→并转换
在51单片机串行发送数据之前,单片机内部的并 行数据被送入移位寄存器并一位一位地输出,将并行 数据转换成串行数据。如下图所示。
停止位: 为逻辑“1”高电平,可是1位、1.5位或2位的高电平, 表示一帧字符传送完毕。接收设备收到停止位之后, 通信线路上便又恢复逻辑1状态,直至下一个字符数据 的起始位到来。
3.波特率(数据传送速率) 串行通信的速率用波特率来表示。 波特率:一秒钟传送数据位的个数。每秒钟传送
一个数据位就是 1 波特。即: 1 波特= 1bps (位 / 秒) 。 每一位代码的传送时间Td为波特率的倒数。
例:利用串行方式0和74ls164设计流水灯
源程序:
#include <at89x51.h> #include<intrins.h> #define uchar unsigned char #define uint unsigned int uchar temp=1; void delay(uint xms) { uint i,j; for(i=xms;i>0;i--) for(j=110;j>0;j--); }
(一)串行通信的数据传输方式
(a)单工方式
(b)半双工方式
(c)全双工方式
(二)串行通信方式
两种基本的通信方式:异步通信和同步通信。 1. 同步通信 同步通信中,在数据开始传送前用同步字符来指 示(常约定1个—2个),并由时钟来实现发送端和接 收端同步,即检测到规定的同步字符后,就连续按顺 序传送数据,直到通信告一段落。 同步传送时,字符与字符之间没有间隙,也不用 起始位和停止位,仅在数据块开始时用同步字符 SYNC来指示,其数据格式如下图所示。
同步通信数据格式
2. 异步通信
相关文档
最新文档