【嵌入式】常用串口协议与转换芯片详解

文章目录

  • 0 前言
  • 1 一个通信的协议的组成
  • 2 常用协议名词解释
    • 2.1 UART
    • 2.2 RS232
  • 3 常用的芯片
    • 3.1 MAX232
    • 3.2 CP2102
    • 3.3 CH340
    • 3.4 FT232

0 前言

  最近有点想研究USB协议,正好也看到有评论说对如何选择USB转串口模块有些疑惑,其实我也一直很想写一篇关于串口的总结式的文章,借此契机来完善一下。

1 一个通信的协议的组成

  所谓通信协议,顾名思义,其本质就是一个协议,即一个约定,大家约定好通信的一些标准,这样大家就能根据这个标准来设计并生产产品,而避免了A产品不兼容B这样的情况发生。
  那不妨先想一下,一个通信协议需要规定哪些内容呢?
  一般来说,主要包括三个方面:

  • 物理属性  主要是约定插头或接口的外在特性。包括这个插头长啥样(物理形状),有几个引脚(引脚定义)等等。
  • 逻辑属性  逻辑属性主要是约定这个协议传输数据时的时序。因为在实际传输数据过程中,并不是直接把需要传输的数据依次传输的,这样接收端就不知道从哪里开始接收,数据传输就会错乱,因此往往是把数据切分为小块然后加上一些固定的字符,组成“一帧”,再传输,同样接收端也按照约定好的帧格式来进行解析。这样数据传输才能有序进行。
  • 电气属性  在常见的串行数据传输协议中,都是传输数字信号,即用0 和 1来表示需要传输的数据,因此就需要明确多少电压代表0,多少电压代表1。

以下的内容也将按照上述思路来进行展开。

2 常用协议名词解释

2.1 UART

  对于玩单片机的同学来说,UART可能是接触的最早的串行通信协议了,在使用时,我们更多关注的其实是UART的时序,即设置波特率、设置几位数据位,是否有奇偶校验等,即所谓的配置串口,但其实这个更多的是规定串行通信的时序。
  但我们对于这个串口其实主要理解的是

但其实UART代指的是一种时序,即

起始位 + 数据位 + 奇偶校验位 + 停止位

这种代表时序

2.2 RS232

  需要注意的是,RS232的时序其实也是UART时序,即上面这些。他主要的特点体现在电气属性和物理属性上

3 常用的芯片

3.1 MAX232

3.2 CP2102

3.3 CH340

3.4 FT232

你可能感兴趣的:(嵌入式专栏,串行通信,UART,RS232,RS485,TTL,RS422)