»
(011) 我对UART、RS232、RS485的理解
UART、RS232、RS485 UART负责把发送过程转换为各条线的系列01方波、负责定义通过各条线的系列01方波进行数据传输或交换的逻辑、再负载把各条线的系列01方波转换为接收到的数据。 UART是逻辑层,是通信逻辑层。 RS232、RS485,定义如何把逻辑层的系列方波信号转换为物理层的系列电信号、把物理层的系列电信号转换为逻辑层的系列方波信号的电气转换过程。 RS232、RS485是物理层,是电气物理层。 同样,ETH是通信逻辑层,而PHY是电气物理层; SPI是通信逻辑层,与它对应的电气物理层就是导线。SPI四根线:MOSI、MISO、SCLK、SS/CS(Slave Select/Chip Select,片选)。 I2C是通信逻辑层,与它对应的电气物理层就是导线。I2C两根线:SDA(Serial Data Line)、SCL(Serial Clock Line)。I2C解决多设备冲突的方式始终以0优先,发送的同时读取高低电平,非自己的电平的冲突者自己退出。 I2C定义了:SCL是高电平时,SDA的电平变化表示一个数据位,这就是通信逻辑。所以,I2C是通信逻辑层。 而I2C直接通过导线相连,导线就是I2C的物理电气层,这就是I2C的PHY。 通信逻辑层就是收发数据与各线01方波的转换层,物理电气层就是各线方波与调频、调幅、调相的电信号的转换层,电气物理层需要与通信逻辑层对应,因为,逻辑线路数要匹配。 —— 个人理解