一、UART
universal async receiver transmitter,通用异步收发器 全双工、串行、异步
RXD:数据接收信号线
TXD:数据发送信号线
二、通信方式
1、单 工 :
数据接收方和数据发送方是固定的
数据传输是通过一根信号线实现
数据传输的方向是单一的
半 双 工
通信双方既可以作为数据发送方也可以作为数据接收方(接收方和发送方不固定)
数据传输是通过一根信号线实现
数据传输的方向可以是双向的(但同一时刻数据传输呈现单一性 )
例:I2C SCL 时钟线 SDA 数据线
全 双 工
通信双方既可以作为数据发送方也可以作为数据接收方
数据传输是通过两根信号线实现
任意时刻,数据传输方向是双向的
例:UART TXD RXD
SPI SCLK 时钟线 CS 片选线 MOSI MISO
2、
低位先行 : 先发送低位数据
高位先行 : 先发送高位数据
串口发送数据时,遵循 LSB优先发送原则
3、校验位
(1)奇偶校验: 无法检测偶数个 bit出错的问题
奇校验 :校验位为 '1',若数据位中'1'的个数加上校验位的 '1'保 持 '1'的总个数为奇数个,则代表奇校验通过
偶校验 :校验位'0',若数据位中 '1'的个数加上校验位的 '0'保持 '1'的总个数为偶数个,则代表偶校验通过
(2)无校验
(3)累加
4、
串行:通过一根信号线逐个bit发送数据
优缺点:
-
传输速度慢
-
硬件成本低 ,实现简单
-
传输距离远, 抗干扰性好( RS485 差分)
并行: 通过多根信号线多个bit同时发送
优缺点:
-
传输速度快
-
硬件成本高 ,实现复杂
-
传输距离近,抗干扰性差( 30米)
5、串行数据缓冲寄存器
SBUF 发送数据缓冲区
SBUF 接收数据缓冲区
6、
同步通信 :通信双方通过一根共享的时钟信号线规定数据传输的频率
异步通信 :通信双方没有共享时钟信号线规定数据传输频率,可用波特率实现类似同步
发:2400bps
收:2400bps
三、电平标准
TTL: 高电平1 :5V
低电平0: 0V,
传输距离近
四、串口通信参数
9600 8 N 1
波特率:bits per second,bps 每秒传输bit数量
2400 4800 9600 115200
8:数据位,8位数据位
N:None 无校验
O: Odd 奇校验
E:Even 偶校验
1: 停止位
五、串口中断
串口发送:轮询
串口接收:中断
练习:利用串口助手发送字符串



串口接收中断

串口发送ledon,灯亮,发送ledoff,灯灭

六、主从应答
主机 :可以发起通信,对通信具有绝对控制权
从机 :无法发起通信,只能根据主机下发指令完成对应的功能