首先先来看看各个关键词的的全称:
- 串口:串行通信接口,英文翻译可以是 serial interface 或者 cluster communication port(COM)
- UART:Universal Asynchronous Receiver/Transmitter 通用异步串行收发器
- USART:Universal Synchronous/Asynchronous Receiver/Transmitter 通用同步/异步串行接收/发送器
- RS232:recommended standard 232
- SPI:Serial Peripheral Interface 串行外设接口
- 从串口的全称可以知道串口就是串行通信接口,但它并不是严格意义的串行通信,它一般指 UART、USART、RS232、RS422、RS485 这几个,而这几种串口不能叫做协议,只能说是接口,它们都是属于串口,而它们之间的区别在于物理接口,逻辑电平的定义,电平标准。例如,UART 和 USART 是属于 TTL 电平的,而RS232则是使用RS232电平的。
- UART 和 USART 类似,常见的单片机一般都支持这两种接口,它们都是属于串口的一种。它们一般用在单片机系统上。
- SPI全称叫串行外设接口,从它的名字也可以看出,它也是属于串行通信协议的一种,但不是串口,是一个具体的通信协议。
下面的思维导图就很清晰的表明它们之间的关系: