单片机串行通讯
波特率=2smod/32 •Timer1溢出率 = 2smod/32 •fosc/(12 •(216-初值))
2020/8/3
泉州信息职业技术学院
第11页
第16章 单片机串行通讯
(1)发送过程
在TI=0时,当CPU执行一条向SBUF写数据的指令时, 如SBUF=A,就启动了发送过程。数据由TXD引脚送出, 发送时钟由定时/计数器T1送来的溢出信号经过16分频 或32分频后得到,
① 如果RI=0、SM2=0,接收控制器发出“装载SBUF”信号,将 输入移位寄存器中的8位数据装入接收数据寄存器SBUF,停止位 装入RB8,并置RI=1,向CPU申请中断。
② 如果RI=0、SM2=1,那么只有停止位为“1”才发生上述操作。 ③ RI=0、SM2=1且停止位为“0”,所接收的数据不装入SBUF, 数据将会丢失。 ④ 如果RI=1,则所接收的数据在任何情况下都不装入SBUF, 即数据丢失。
(1)没有数据发送时,数据线保持“1”状态
(2)发送数据时,先发起始位“0”,其后是数据
(3)数据后再发一位停止位“1“ 因此对于8位数据至少要发送10位
例:若比特率为9600bps,则每传输960帧,即960字符/秒
2020而/8/3每位传输时间:T=1/9600≈0.104(ms)
第3页
泉州信息职业技术学院
2020/8/3
泉州信息职业技术学院
第13页
第16章 单片机串行通讯
16.2.3 串行口初始化 ➢ 在使用串行口之前,应对它进行编程初始化,主要
是设置产生波特串的定时器1、串行口控制和中断 控制。具体步骤如下: ➢ 1)确定定时器l的工作方式——编程TMOD寄存器; ➢ 2)计算定时器l的初值——装载THl、TL1 ➢ 3)启动定时器1——编程TCON中的TRl位; ➢ 4)确定串行口的控制——编程SCON; ➢ 5)串行口在中断方式工作时,须开CPU和源中断— —编程IE寄存器。
并-串
1
时钟
发送
串-并 8 时钟
接收
(2)USRT (Universal Synchronous Receiver/Transmitter) 通用同步接收器/发送器
2020/8/3
泉州信息职业技术学院
第5页
第16章 单片机串行通讯
5、RS-232C标准 美国电子工业协会EIA公布的串行总线标准
DB-25
第16章 单片机串行通讯
第16章 单片机串行通讯
➢ 教学目的: 1. 懂得单片机串行通讯的硬件组成; 2. 熟练掌握单片机串行通讯的软件编制; 3. 掌握串行多机通讯软件编制; 4. 了解远距离串行通讯的实现。
➢ 重点难点: 1. 串行多机通讯软件编制; 2. 远距离串行通讯的实现
2020/8/3
泉州信息职业技术学院
TI 内部DB
发送 SBUF(99H)
TxD
接收 SBUF(99H)
2020/8/3
RI
输入移位 寄存器
Rx
D
泉州信息职业技术学院
第7页
第16章 单片机串行通讯
二、串行口控制寄存器SCON(98H )
1、SM0、SM1 控制串行口方式
SM0 SM1 00 01 10
11
工作方式 方式0 方式1 方式2
在发送时钟的作用下,先通过TXD端送出一个低电平的起 始位,然后是8位数据(低位在前),其后是一个高电平 的停止位,当一帧数据发送完毕后,由硬件使发送中断标 志TI置位,向CPU申请中断,完成一次发送过程。
2020/8/3
泉州信息职业技术学院
第12页
第16章 单片机串行通讯
(2)接收过程
当允许接收控制位REN被置1,启动接收控制器开始接收数据。 当8位数据及停止位全部移入后,根据以下状态,进行响应操 作。
4、TB8 在方式2、3中要发送的第九位数据,由软件置/复 位5、RB8 在方式2、3中是接收的第九位数据
在方式1中若SM2=0,RB8是接收的停止位。
在方式0中不用RB8。
2020/8/3
泉州信息职业技术学院
第9页
第16章 单片机串行通讯
6、RI 接收到第8位结束时自动置位。 在方式1、2、3中串行接收到停止位的中间时置位。
方式3
功能简述
8位同步移位寄存器
10位 UART 11位 UART
11位 UART
波特率 fosc/12 可变 fosc/12
可变
2、SM2 允许方式2、3的多机通讯特征位
2020/8/3
泉州信息职业技术学院
第8页
第16章 单片机串行通讯
3、REN 允许串行接收位,由软件置/复位 1:允许接收 0:不允许接收(允许发送)
DB-9 -15V:逻辑1 +15V:逻辑0
最少3根线 RxD (3) TxD (2) 地 (5)
6、调制解调
计算器机
Mod
RS23 em
2C
2020/8/3
公用电 话网
泉州信息职业技术学院
Mode m
RS23 2C
计算机
第6页
第16章 单片机串行通讯
16.2 51单片机串行接口
51单片机内部有一个全双工的串行接口,具有4种工作方式。 与串行口有关的特殊功能寄存器(SBUF、 SCON) 一、串行口数据绶冲器SBUF(99H) 接收、发送对应于同一地址(99H),但实际上是两个绶冲器。
第16章 单片机串行通讯
3、单工、双工、半双工方式
单工:广播
双工:电话
半双工:对讲机
2020/8/3
泉州信息职业技术学院
第4页
第16章 单片机串行通讯
4、串行通信接口
(1)UART (Universal Asynchronous Receiver/Transmitter 通用异步接收器/发送器
8
7、TI 发送中断标志(必须由软件清除) 在方式0中串行发送第8位结束时自动置位。 在方式1、2、3中串行发送停止位的开始时置位
2020/8/3
泉州信息职业技术学院
第10页
第16章 单片机串行通讯
16.2.2串行口的工作方式
2、工作方式1(甲、乙通信(P272))
▪一位起始位(0),8位数据,一位停止位(1),共10位 ▪发送:写数据到SBUF后,立即开始发送,发完后置“1” TI ▪接收:接收完,将8位数据送入SBUF,同时后置“1” RI ▪接收或发送速率由波特率确定
第1页
第16章 单片机串行通讯
16.1 串行通信基础
1、数据通信简介
并行
串行通信
串行
数据是一位一位传送的
并行 串行
串
行
优点:传输线少,连线简单
缺点:速度慢 适用于远距离 或数据量少的通信
通信
2020/8/3
1位 泉州信息职业技术学院 串行
第2页
第16章 单片机串行通讯
2、异步通信方式
异步通信协议: