一、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’表示
四、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准备下一个数据。