1、串口 vs COM
1.1 串口
串口,即串行接口,与之相对应的另一种接口叫并口,并行接口。两者的区别是,传输一个字节(8个位)的数据时,串口是将8个位排好队,逐个地在1条连接线上传输,而并口则将8个位一字排开,分别在8条连接线上同时传输。+在相同的数据传输速率下,并口的确比串口更快,但由于并口的各个连接线之间容易互相干扰,高速情况下难以同步各连接线的数据,而且硬件成本也相对串口更高(线多),因而串口取代并口成为了现在的主流接口,
常见串口:
- 较具代表性的要数Universal+Serial+Bus,通用串行总线,也就是USB。
- 其它在嵌入式领域常见的串行接口还包括:I2C,SPI,RJ-45,UART,USART等。
注意:串口、UART/USART通常指的是硬件接口,而RS-232指的是属于物理层范畴的串行通信接口标准,简而言之,RS-232就是个标准。
1.2 COM口
电脑上的异步串行通信接口,有时也称之为串口(其实这个叫法并不严谨
)。
电脑COM口使用DB9连接器,遵循RS-232标准,RS-232规定了通信口的电气特性(比如多少伏为逻辑“1”)和接口机械特性(形状,针脚定义)等内容。
COM口多见于旧式电脑,用于连接鼠标,调制调解器等设备,现在已被USB取代。
1.3 单片机与电脑的连接
既然单片机有串囗(UART/USART),电脑也有串囗(COM),那么两者就可以通过串口进行通信。
如果电脑有实体COM囗,由于COM口使用的RS一232电平跟单片机的UART/USART使用的TTL电平不一样,这时就需要使用MAX232之类的电平转换芯片,将TTL电平转换成RS一232电平,连接示意如下:
电脑COM口<——>MAX232<——>单片机UART/USART
【串口调试时,用这种】
如果电脑没COM囗,就要通过CH340之类的USB转TTL串囗芯片,来实现用USB模拟COM口,这样电脑的USB口就变成了一个TTL串囗,可以跟单片机的UART/USART通信,连接示意如下:
电脑USB口<——>CH340<——>单片机UART/USART
参考:
https://blog.csdn.net/qq_26904271/article/details/79829363
2、CAN总线
CAN节点通常由三部分组成:CAN收发器、CAN控制器和MCU。
CAN总线是一种广播类型
的总线,可支持线形拓扑、星形拓扑、树形拓扑和环形拓扑等。CAN网络中至少需要两个节点设备才可进行通信,无法仅
向某一个特定节点
设备发送消息,发送数据时所有节点都不可避免地接收所有流量
。但是,CAN总线硬件支持本地过滤
,因此每个节点可以设置对有效的消息做出反应。
参考:
https://zhuanlan.zhihu.com/p/548772223
4、CAN vs 1553B总线
二者都是广播形式、只能本地过滤。1553B和CAN的速度都能达到1Mbps。
CAN常用于汽车,1553B安全性较高、用于航天。