串行/并行通信
串行通信:数据逐位按顺序依次传输。
并行通信:数据各位通过多条线同时传输。
对比
- 传输速率:串行通信较低,并行通信较高。
- 抗干扰能力:串行通信较强,并行通信较弱。
- 通信距离:串行通信较长,并行通信较短。
- IO资源占用:串行通信较少,并行通信较多。
- 成本:串行通信较低,并行通信较高。
单工/半双工/全双工通信
单工通信:数据只能沿一个方向传输。(类似于广播站)
半双工通信:数据可以沿两个方向传输,但需要分时进行。
全双工通信:数据可以同时进行双向传输。
同步/异步通信
同步通信:共用同一种时钟信号。
异步通信:没有时钟信号,通过在数据信号中加入起始位和停止位等一些同步信号。
波特率
比特率:每秒钟传送的比特数,单位bit/s
波特率:每秒钟传送的码元数,单位Baud
比特率 = 波特率 * log2M,M表示每个码元承载的信息量。
二进制系统中,波特率数值上等于比特率。
常见的串行通信接口
- UART(通用异步收发器):接口引脚:TXD(发送端)、RXD(接收端)、GND(公共地);数据同步方式:异步通信;数据传输方向:全双工。
- 1-wire:接口引脚:DQ:发送/接收端;数据同步方式:异步通信;数据传输方向:半双工。
- IIC:接口引脚:SCL:同步时钟、SDA:数据输入/输出端;数据同步方式:同步通信;数据传输方向:半双工。
- SPI:接口引脚:SCK:同步时钟、MISO:主机输入,从机输出、MOSI:主机输出,从机输入、CS:片选信号;数据同步方式:同步通信;数据传输方向:全双工。
串口:串行通信接口:按位发送和接收的接口。如:RS-232/422/485等。
RS-232电平与COMS/TTL电平对比
- RS-232电平:逻辑1:-15V–3V,逻辑0:+3V-+15v
- CMOS电平(3.3V):逻辑1:3.3V,逻辑0:0V(STM32)
- TTL电平(5V):逻辑1:5V,逻辑0:0V
因此:CMOS/TTL电平不能与RS-232电平直接交换信息。
两个设备之间的TXD和RXD,必须交差连接,才能正常通信。