一、通信方式
1. 单工
1. 发送方和接收方是固定的,数据只能从发送方发给接收方
2. 数据传输是通过一根信号线实现,数据传输的方向是固定的
2. 半双工:I2C
1. 通信双方既可以作为发送方也可以作为接收方
2. 数据传输是通过一根信号线实现,数据传输的方向可以是双向的
3. 同一时刻,数据传输的方向呈现单一性(A给B发的时候,B不能给A发,B只能去接收数据)
3. 全双工:UART
1. 通信双方既可以作为发送方也可以作为接收方
2. 数据传输是通过两根信号线实现,数据传输在任意时刻都是双向的(收发可以同时进行)
二、数据传输
1. 传输顺序
uart在传输数据时,遵循LSB优先原则,先发低位数据
2. 传输形式
1. 串行
通过一根信号线传输数据,按照先后次序逐个bit逐个bit去发送数据
2. 并行
多根信号线同时去传输数据
3. 传输区别
1. 串行:(UART)
(1)传输速率慢(只能通过一根线逐个bit去传输)
(2)硬件成本低,实现简单
(3)传输距离远,抗干扰性好
2. 并行:
(1)传输速率快(可以通过多根线同时传输多个bit)
(2)硬件成本高,实现复杂
(3)传输距离近,抗干扰性差
三、串口通信
1. 通信步骤
串口通信时,空闲状态为高电平 => 当由高电平变为低电平,代表发送了一个起始位,准备开始通信 => 发送数据(通常是8bit,遵循先发数据低位LSB原则) =>
再发送一个bit的校验位(奇偶校验) => 发送一个bit的停止位,代表这一次串口通信结束
2. 奇偶校验
1. 奇校验
校验位为'1',数据位中'1'的个数加上校验位中的'1',保持'1'的个数为奇数个,则代表校验通过
2. 偶校验
校验位为'0',数据位中'1'的个数加上校验位中的'0',保持'1'的个数为偶数个,则代表校验通过
3. 通信参数
1. 波特率
bps(bit per second),每秒钟传输bit的数量,常见的波特率:2400,4800, 9600,115200
2. 数据位
8,串口传输通常8bit数据位传输
3. 停止位
1,1bit停止位
4. 校验位
None,N,无校验 Even,E,偶校验 Odd,O,奇校验
4. 通信方式
1. 同步
通信的双方有一根共享的时钟线来约定通信的频率(同步发送数据/接收数据)
2. 异步
通信双方没有时钟线进行同步,如uart可以通过设置波特率来实现同步(发2400bps 收:2400bps)
5. 寄存器配置
1. 串口寄存器
1. SCON
2. PCON
2. 定时器寄存器
TMOD寄存器
3. 中断寄存器
IE寄存器