嵌入式硬件第三弹——51单片机(3)
·
(续接上篇)
5. 通信协议
UART、I2C、SPI、USB、CAN
UART(universal async receiver transmitter):通用异步收发器 全双工、串行、异步
RXD:数据接收信号线
TXD:数据发送信号线

单工
- 数据接收方和数据发送方是固定的
- 数据传输是通过一根信号线实现
- 数据传输的方向是单一的
半双工
- 通信双方既可以作为数据发送方也可以作为数据接收方 (接收方和发送方不固定)
- 数据传输是通过一根信号线实现
- 数据传输的方向可以是双向的(但同一时刻数据传输呈现单一性)
全双工
- 通信双方既可以作为数据发送方也可以作为数据接收方
- 数据传输是通过两根信号线实现
- 任意时刻,数据传输方向是双向的
低位先行:先发送低位数据
高位先行:先发送高位数据 串口发送数据时,遵循LSB优先发送原则
串行:
通过一根信号线逐个bit逐个bit发送数据
- 1. 传输速度慢
- 2. 硬件成本低,实现简单
- 3. 传输距离远,抗干扰性好(RS485 差分)
并行:
通过多根信号线多个bit同时发送
- 1. 传输速度快
- 2. 硬件成本高,实现复杂
- 3. 传输距离近,抗干扰性差(30米)

奇偶校验: 无法检测偶数个bit出错的问题
奇校验:校验位为'1',若数据位中'1'的个数加上校验位的'1'保持'1'的总个数为 奇数个,则代表奇校验通过
偶校验:校验位'0',若数据位中'1'的个数加上校验位的'0'保持'1'的总个数为 偶数个,则代表偶校验通过
串口通信参数:
eg :9600 8 N 1
- 9600 :波特率,bits per second,bps 每秒传输bit数量
- 8:数据位,8位数据位
- N:None 无校验
O: Odd 奇校验
E:Even 偶校验 - 1: 停止位
同步通信:通信双方通过一根共享的时钟信号线规定数据传输的频率
异步通信:通信双方没有共享时钟信号线规定数据传输频率
6. 串口中断


7. 主从应答
主机:可以发起通信,对通信具有绝对控制权
从机:无法发起通信,只能根据主机下发指令完成对应的功能
主机下发Modbus协议格式指令,从机接收指令并解析,完成对应功能 并给主机回复应答

更多推荐
所有评论(0)