单片机串行通信代码和校验 (单片机并行通信协议)

单片机中在制定通讯协议时候,一定加入容错和重发机制

单片机中的通信协议怎么写进去的,单片机串行通讯协议有哪些

单片机中的通信协议怎么写进去的,单片机串行通讯协议有哪些

一、TTL电平

全双工(逻辑1: 2.4V--5V逻辑0: 0V--0.5V)

1、硬件框图如下,TTL用于两个MCU间通信

单片机中的通信协议怎么写进去的,单片机串行通讯协议有哪些

2、‘0’和‘1’表示

单片机中的通信协议怎么写进去的,单片机串行通讯协议有哪些

二、RS-232电平

全双工(逻辑1:-15V--5V逻辑0:+3V--+15V)

1、硬件框图如下,RS-232用于MCU与PC机之间通信

单片机中的通信协议怎么写进去的,单片机串行通讯协议有哪些

2、‘0’和‘1’表示

单片机中的通信协议怎么写进去的,单片机串行通讯协议有哪些

三、RS-485

半双工、(逻辑1:+2V--+6V逻辑0: -6V---2V)这里的电平指AB两线间的电压差。

1、硬件框图如下

单片机中的通信协议怎么写进去的,单片机串行通讯协议有哪些

2、‘0’和‘1’表示

单片机中的通信协议怎么写进去的,单片机串行通讯协议有哪些

3.终端匹配和485使用时候要注意的事情

1,485布线时候,要注意AB极性,不能接反。

2,要单独供电,并且千万不能把485的AB线接入电源,485的通讯电压是5V。接入电源可能会烧毁整个总线设备。

3,485通讯只能菊花链布线,不能分叉。也就是不支持树形,星形,混合型。

4,在一些长线场合,还要加终端电阻,为了吸收总线上的驻波与反射。

单片机中的通信协议怎么写进去的,单片机串行通讯协议有哪些

这些问题在施工布线时候一定要注意,在制定通讯协议时候,也一定加入容错和重发机制。

相比而言,二总线系统在现场则比485方便的多,例如POWERBUS,MBUS,KNX。这些问题全没有,额外还提供了供电,通讯协议也好指定一些。如果用于大规模或者稳定性要求高的现场布线,可以了解一下二总线。

四、CAN总线

逻辑1:-1.5V--0V逻辑0:+1.5V--+3V)这里的电平指CAN_High、CAN_Low两线间的电压差。

1、硬件框图如下

单片机中的通信协议怎么写进去的,单片机串行通讯协议有哪些

2、‘0’和‘1’表示

单片机中的通信协议怎么写进去的,单片机串行通讯协议有哪些

以上总结:

1、从单片机软件编程角度来说,RS232、RS-485最终结果都是转换为TTL电平方式与单片机通信(CAN收发器把差分信号转化为TTL-->CAN控制器(MCU))。其目的都是提高通信质量,提高抗干扰能力。

2、TTL、RS232是逻辑电平信号。RS-485、CAN为差分信号。

五、I2C

5.1 I2C物理层

单片机中的通信协议怎么写进去的,单片机串行通讯协议有哪些

5.2 I2C协议层

单片机中的通信协议怎么写进去的,单片机串行通讯协议有哪些

5.3数据的起始信号与停止信号

单片机中的通信协议怎么写进去的,单片机串行通讯协议有哪些

5.4数据有效性

单片机中的通信协议怎么写进去的,单片机串行通讯协议有哪些

I2C协议在 SCL高电平时对 SDA信号采样, SCL低电平时 SDA准备下一个数据。