串行口及其通信
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
9.1.4 串行通信的过程及通信协议
一、串并转换与设备同步
两个通信设备在串行线路上成功地实现通信必须解决两 个问题:即串并转换和设备同步。 1、串并转换
2、设备同步
设备同步对通信双方有两个共同要求: 通信双方必须采用统一的编码方法; 通信双方必须能产生相同的传送速率。
二、串行通信协议
通信协议是对数据传送方式的规定,包括数据格式定义 和数据位定义等。通信双方必须遵守统一的通信协议。串行 通信协议包括同步协议和异步协议两种。异步协议包括: 1、数据格式:数据位、奇偶校验位、停止位约定 5、波特率设置 6、握手信号约定
同步字符的插入可以是单同步字符方式或双同步字符 方式,然后是连续的数据块。同步字符可以由用户约定, 当然也可以采用ASCII码中规定的SYNC代码,即16H。按 同步方式通信时,先发送同步字符,接收方检测到同步字 符之后,即准备接收数据。
三、波特率(Baud rate) 波特率,即数据传送速率,表示每秒钟传送二进制代码的 位数,它的单位是B/S。波特率对于CPU与外界的通信是很重 要的。 异步通信的传送速率在50B/S~19200B/S之间,常用于计算 机到终端机和打印机之间的通信、直通电报以及无线电通信的 数据发送等。
9.1.3 异步通信和同步通信
一、异步通信 在异步通信中,数据是一帧一帧(包括一个字符代码或一 字节数据)传送的,每一帧数据的格式如下所示:
二、同步通信
同步通信中,数据开始传送前用同步字符来指示(常 约定1个~2个),并由时钟来实现发送端和接收端同步,即 检测到规定的同步字符后,下面就连续按顺序传送数据, 直到通信告一段落。 为了保证接收工作正确无误,发送方除了传送数据外, 还要同时传送时钟信号。 同步传送可以提高传送速率(达56KB/S或更高),但 硬件比较复杂。 同步传送时,字符与字符之间没有间隙,也不用起始 位和停止位,仅在数据开始时用同步字符SYNC来指示,其 数据格式如下图所示:
(2)串行通信 串行通信指数据是一位一位按顺序传送的通信方式。它 的突出优点是只需一对传输线,这样就大大地降低了传输成 本,特别适用于远距离通信;其缺点是传送速度较低。 下图为两种方式的连接图:
9.1.2 串行通信的传输方式 串行通信的传送方向通常有三种: (1)单向(或单工)配置,只允许数据向一个方向传送。 (2)半双向(或半双工)配置,允许数据向两个方向中的任 一方向传送,但每次只能有一个站点发送。 (3)全双向(或全双工)配置,允许同时双向传送数据。 串行通信传输方式如下图所示。
9.2
串行口及应用
9.2.1 8051串行口 一、结构 结构如下图所示:
9.2
串行口及应用
9.2.1 8051串行口
一、结构
二、串行口控制字及控制寄存器 SCON(98H)、PCON(87H) 1、SCON(98H):可位寻址 D7 D6 D5 D4 D3 D2
SM0 SM1 SM2 REN TB8 RB8
9.1 串行通信基本知识
9.1.1 数据通信 1、什么是通信? 计算机的CPU与外部设备之间、计算机与计算机之间的信 息交换称为通信。 2、通信方式 串行通信和并行通信。如果距离小于30米可采用并行通信 方式;当距离大于30米时采用串行通行方式。 (1)并行通信 并行通信是指数据的各位同时进行传送(发送或接收)的 通信方式。其优点是传送速度快;缺点是数据有多少位,就需 要有多少根传送线。因此并行通信在位数多、传送距离又远时 就不太适合了。
3、串行口方式2、3: 11位通用异步接口
收发一帧数据的格式为1位起始位,8位数据位、 1位可编程第9位和1位停止位。在接收时,第9位进入 SCON的RB8。 RXD——发送数据端,TXD——接受数据端 方式2波特率固定;方式3波特率可变
1、串行口方式0:同步移位寄存器输入/输出方式
以8位数据为一帧,不设起始位和停止位,先发送最低位。。 RXD——为数据,TXD——为移位脉冲, 波特率为fosc/12
方式0常用于扩展并行I/O口,其扩展电路如下:
2、串行口方式1: 10位通用异步接口
收发一帧数据的格式为1位起始位,8位数据位、 1位停止位,在接收时,停止位进入SCON的RB8。 RXD——发送数据端,TXD——接受数据端 波特率可变
D1
TI
D0
RI
(1)SM0和SM1 串行口工作方式选择位,共有四种选择方式。
SM0
0
SM1
0
工作方式
方式0
说明
同步移位寄存器
波特率
Fosc/12
0
1 1
1
0 1
方式1
方式2 方式3
10位异步收发
11位异步收发 11位异步收发
由定时器控制
Fosc/32 fosc/64 由定时器控制
(2)SM2——多机通信控制位,主要用于方式2和方式3 当SM2=1时,允许多机通讯。多机通讯协议规定,第9 位数据(D8)为1,说明本帧数据为地址帧,若第9位数据为 0,则本帧为数据帧。 若SM2=0,则不属于多机通讯情况,则接收一帧数据后, 不管第9位数据是0还是1,都置RI=1,接收到的数据装入 SBUF中。 (3)REN——允许接收控制位 由软件置1或清0,只有当REN=1时才允许接收。 (4)TB8——发送数据的第9位(D8)装入TB8中。在方式2、 3中由编程设定,在方式0、1中没用。
2、PCON(87H)
电源控制寄存器PCON中只有SMOD位与串行口工作有 关。
2、PCON(87H)
D7
SMOD
SMOD(P源自文库ON.7)——波特率倍增位。在串行口方式1、2、3 时,波特率和2SMOD成正比,即SMOD=1时,波特率提高一倍。复 位时,SMOD=0。
三、串行通信工作方式
串行口方式0、方式1、方式2和3的帧格式:
(5)RB8——接收数据的第9位 在方式2、3中,接收到的第9位数据放在RB8中,它或 是奇偶校验位,或为地址/数据标志位;在方式1中,若 SM2=0,RB8中存放的是已接收到的停止位,在方式0中该 位没用。 (6)TI——发送中断标志 该位在一帧数据发送完时被置位,中断响应时不会自 动清0,必须由软件清0。 (7)RI——接收中断标志