当前位置:
文档之家› UART、SPI、I2C串口通信
UART、SPI、I2C串口通信
计数,当计数器为24=16+8时,采样的值为第0位数
据;当计数器的值为40时,采样的值为第1位数据,
依此类推,进行后面6个数据的采样。如果需要进行
奇偶校验,则当计数器的值152时,采样的值即为奇 偶位;当计数器的值为168时,采样的值为"1"表示停 止位,一帧数据接收完成。
12
2.51系列单片机UART通信
SPI0CN、数据寄存器SPI0DAT、配置寄存器
SPI0CFG和时钟频率寄存器SPI0CKR。
39
3.C8051F系列单片机的SPI应用
40
3.C8051F系列单片机的SPI应用
41
3.C8051F系列单片机的SPI应用
42
三、 I2C通信
1.I2C通信简介及特点 2.I2C通信原理
平切换表示停止条件。
49
2.I2C通信原理
50
2.I2C通信原理
51
2.I2C通信原理
52
2.I2C通信原理
53
2.I2C通信原理
54
谢谢!
55
型的例子打电话。
波特率:波特率是指每秒内传送二进制数据的位数以
b/s和bps(位/秒)为单位。
6
1.串行通信和并行通信
7
2.51系列单片机UART通信
UART作为异步串口通信协议的一种,工作原理是将传输数据的 每个字符一位接一位地传输。
起始位:先发出一个逻辑”0”的信号,表示传输字符的开始。
EEPROM,FLASH,实时时钟,AD转换器,还有数
字信号处理器和数字信号解码器之间。
SPI是一种高速的,全双工,同步的通信总线,并且
在芯片的管脚上只占用四根线,节约了芯片的管脚, 同时为PCB的布局上节省空间,提供方便,
29
1.SPI通信简介及特点
SPI总线系统可直接与各个厂家生产的多种标准外围器件直接 接口,该接口一般使用4条线:
器CKCON
的TIM位(定时器1时钟选择),定时器方式寄存器 TOMD,最后不要忘记打开UART的交叉开关。 (2)配置波特率:配置串口工作方式1,定时器使 用方式2(自动重装载的8位计数器/定时器)
T的使用
22
3.C8051F系列单片机UART的使用
43
1.I2C通信介绍及特点
I2C(Inter-Integrated Circuit)总线是PHILIPS公司 开发的两线式串行总线,用于连接微控制器及其外围
设备。是微电子通信控制领域广泛采用的一种总线标
准。它是同步通信的一种特殊形式,具有接口线少,
控制方式简单,器件封装形式小,通信速率较高等优
点。
13
2.51系列单片机UART通信
UART波特率发生器:波特率是衡量数据传输速率的指标,表 示每秒传送数据的字符数,单位为Baud。UART的接收和发
送是按照相同的波特率进行收发的。波特率发生器产生的时钟
频率不是波特率时钟频率,而是波特率时钟频率的16倍,目 的是为在接收时进行精确地采样,以提取出异步的串行数据。
(1)MOSI– SPI 总线主机输出/ 从机输入(SPI Bus Master
Output/Slave Input)。 (2)MISO– SPI 总线主机输入/ 从机输出(SPI Bus Master Input/Slave Output)。 (3)SCLK – 时钟信号,由主设备产生。
数据位:紧接着起始位之后。数据位的个数可以是4、5、6、7 、8等,构成一个字符。通常采用ASCII码。从最低位开始传 送,靠时钟定位。 奇偶校验位:数据位加上这一位后,使得“1”的位数应为偶数( 偶校验)或奇数(奇校验),以此来校验数据传送的正确性
8
2.51系列单片机UART通信
停止位:它是一个字符数据的结束标志。可以是1位、1.5位、2 位的高电平。由于数据是在传输线上定时的,并且每一个设备
(3)注意使用时要禁止定时器1终端ET1=0;TI0和 RI0也要注意软清零。
23
3.C8051F系列单片机UART的使用
C8051F系列UART1的使用
(1)UART1包含一个由16位定时器和可编程预分频
器构 成的专用波特率发生器,能产生很宽范围的波
特率。
(2)UART1有六个相关的特殊功能寄存器。三个用 于波特率发生器(SBCON1、SBRLH1和SBRLL1) ,两个用于数据格式、控制和状态功能(SCON1和 SMOD1),一个用于发送和接收数据(SBUF1)
25
3.C8051F系列单片机UART的使用
26
3.C8051F系列单片机UART的使用
27
二、 SPI通信
1.SPI通信简介及特点 2.SPI通信原理 3.C8051F系列单片机的SPI通信配置
28
1.SPI通信简介及特点
SPI是英语Serial Peripheral interface的缩写,顾名思 义就是串行外围设备接口。SPI接口主要应用在
有其自己的时钟,很可能在通信中两台设备间出现了小小的不
同步。因此停止位不仅仅是表示传输的结束,并且提供计算机 校正时钟同步的机会。适用于停止位的位数越多,不同时钟同
步的容忍程度越大,但是数据传输率同时也越慢。
空闲位:处于逻辑“1”状态,表示当前线路上没有数据传送。
9
2.51系列单片机UART通信
10
口芯片没有主机输出/从机输入数据线MOSI。
31
2.SPI通信原理
32
2.SPI通信原理
33
2.SPI通信原理
34
2.SPI通信原理
35
2.SPI通信原理
36
2.SPI通信原理
37
2.SPI通信原理
38
3.C8051F系列单片机的SPI应用
C8051F系列单片机的SPI0的访问和控制是通过系统 控制器中的4个特殊功能寄存器实现的:控制寄存器
的下降沿(线路电位由高电位变为低电位)时说明线路有数据 传输,按照约定的波特率从低位到高位接收数据,数据接收完 毕后,接着接收并比较奇偶校验位是否正确,如果正确则通知 后续设备准备接收数据或存入缓存。 11
2.51系列单片机UART通信
UART的接收数据时序为:当检测到数据的下降沿时 ,表明线路上有数据进行传输,这时计数器CNT开始
24
3.C8051F系列单片机UART的使用
(3)关于UART1我们应该知道的几点: <1>UART1波特率是由一个专用的16位定时器产生 的. <2>用三个寄存器(SBCON1、SBRLH1和SBRLL1
)来配置波特率发生器。UART1波特率发生器控制
寄存器(SBCON1,SFR定义19.4)使能或禁止波 特率发生器,并为定时器选择预分频值。 <3>对于可靠的UART操作,建议不要将UART波特 率配置为大于SYSCLK/16。
UART、SPI、I2C串口通信培训 主讲 赵建鹏
1
UART、SPI、I2C串口通信
一、 UART通信 二、 SPI通信 三、 I2C通信
2
一、 UART通信
1.串行通信和并行通信 2.51系列单片机UART通信原理 3.C8051F系列单片机的串口及波特率配置
3
1.串行通信和并行通信
数据通信:若干个数据设备之间的信息交换称为 数据通信。 两种方式:并行通信和串行通信。 并行通信:是指数据的各位同时传送,每一位数据都需
频率的十二分之一,并不受 PCON寄存器中SMOD
的影响,即: 方式0的波特率=fosc/12
16
2.51系列单片机UART通信
17
2.51系列单片机UART通信
方式l和方式3的波特率方式1和方式3的移位时钟脉冲由定时器 T1的溢出率决定,故波特宰由定时器T1的溢出率与SMOD值
同时决定,即: 方式1和方式3的波特率=2SMOD/32· T1溢出
率。其中,溢出率取决于计数速率和定时器的预置值。 计数速率与TMOD寄存器中C/T的状态有关。当C/T=0时, 计数速率=fosc/2;当C/T=1时,计数速率取决于外部输 入时钟频率。当定时器Tl作波特率发生器使用时,通常选用可 自动装入初值模式(工作方式2),在 工作方式2中,TLl作为计 数用,而自动装入的初值放在THl中,设计数初值为x,则每 过“256一x”个机器周期,定时器T1就会产生一次溢出。为了 避免因溢出而引起中断,此时应禁止T1中断。这时,溢出周 18 期为:
串行通信的特点:传输线少,长距离传输成本,但是传
输控制比并行要相对复杂。 数据传输方式:单工、半双工和全双工。
5
1.串行通信和并行通信
单工:A只能发信号,B只能收信号,信号单向传输。 半双工:A能发信号给B,B也能发信号给A,但是这两 个 过程不能同时进行。最典型的例子是对讲机。 全双工:A在给B发信号的同时B也能给A发信号。最典
2.51系列单片机UART通信
19
2.51系列单片机UART通信
20
3.C8051F系列单片机UART的使用
UART0的配置步骤: (1)UART0相关寄存器配置如:UART0控制寄存 器SCON0的REN0位(接受允许),定时器控制寄 存器TCON0的TR1位(开定时器1),时钟控制寄存
44
1.I2C通信介绍及特点
45
1.I2C通信介绍及特点
46
1.I2C通信介绍及特点
I2C总线上数据的传输速率在标准模式下可达100kbit/s 在快速模式下可达400kbit/s在高速模式下可达
3.4Mbit/s。
47
2.I2C通信原理
48
2.I2C通信原理
I2C的起始和结束条件: 起始条件:在SCL线是高电平时SDA线从高电平向低 电平切换这个情况表示起始条件。 停止条件:当SCL是高电平时SDA线由低电平向高电