重庆李家沱网站建设,中国100强企业排行榜,建站推广外包,网站开发中 视频播放卡文章目录 0 前言1 一个通信的协议的组成2 常用协议名词解释2.1 UART2.2 RS-2322.3 RS-4852.4 RS-422 3 常用的芯片3.1 MAX2323.2 CP21023.3 CH3403.4 FT232 0 前言 最近有点想研究USB协议#xff0c;正好也看到有评论说对如何选择USB转串口模块有些疑惑#xff0c;其实我也一… 文章目录 0 前言1 一个通信的协议的组成2 常用协议名词解释2.1 UART2.2 RS-2322.3 RS-4852.4 RS-422 3 常用的芯片3.1 MAX2323.2 CP21023.3 CH3403.4 FT232 0 前言 最近有点想研究USB协议正好也看到有评论说对如何选择USB转串口模块有些疑惑其实我也一直很想写一篇关于串口的总结式的文章借此契机来完善一下。
1 一个通信的协议的组成 所谓通信协议顾名思义其本质就是一个协议即一个约定大家约定好通信的一些标准这样大家就能根据这个标准来设计并生产产品而避免了A产品不兼容B这样的情况发生。 那不妨先想一下一个通信协议需要规定哪些内容呢 一般来说主要包括三个方面
物理属性 主要是约定插头或接口的外在特性。包括这个插头长啥样物理形状有几个引脚引脚定义等等。逻辑属性 逻辑属性主要是约定这个协议传输数据时的时序。因为在实际传输数据过程中并不是直接把需要传输的数据依次传输的这样接收端就不知道从哪里开始接收数据传输就会错乱因此往往是把数据切分为小块然后加上一些固定的字符组成“一帧”再传输同样接收端也按照约定好的帧格式来进行解析。这样数据传输才能有序进行。电气属性 在常见的串行数据传输协议中都是传输数字信号即用0 和 1来表示需要传输的数据因此就需要明确多少电压代表0多少电压代表1。 以下的内容也将按照上述思路来进行展开。 最后再简单解释一些基本名词的概念
单工指信息传输是单向的只能由A到B不能B到A双工信息传输是双向的A B之间可以交互信息半双工首先信息传输是双向的但不能同时进行即要么A给B传要么B给A传二者不能同时进行。全双工不仅信息传输是双向的还可以同时进行。
2 常用协议名词解释
2.1 UART 对于玩单片机的同学来说UART可能是接触的最早的串行通信协议了基本每个单片机都有TXDRXD两个引脚此即所谓的Universal Asynchronous Receiver/Transmitter异步串行通信。
物理属性接口方面一般没什么要求可以根据自己的需求自定义但一般来说是三根线RXDTXDGND有时会加上电源信号VCC。逻辑属性即数据传输时的时序这个可能是我们最关注的信息了。也是代码编写的主要内容体现设置波特率、设置几位数据位是否有奇偶校验等即所谓的配置串口。电气属性采用正逻辑电平即5V/3.3V为10V为0。这即是所谓的TTL电平所以一般来说单片机串口也叫TTL。 实际上现在大多数单片机使用的都是CMOS电路电平容限比TTL要大一些但由于TTL出现较早目前仍然把这种电平称为TTL电平。
总结 UART没有规定接口的具体样式只是规定了引脚所以在实际使用中比较灵活。但是引脚的电平要注意和单片机的电源保持一致要注意区分3.3V和5V。UART是单片机中的基础外设一般称之为串口通过USB转TTL模块可以实现单片机与上位机之间的通讯。
2.2 RS-232 RS-232其实是出现比较早且应用较为广泛的标准。由美国电子工业协会Electronic Industries AssociationEIA联合多家公司于1970年制定目前最新的标准是RS232C前面是A和B。所谓RS即Recommended Standard推荐标准232为代号。
物理属性RS232规定了25根线但其实常用的只有9根线另外16根线包括①9根线电流环信号目前很少设备使用这些引脚②6个空引脚③一个保护地信号这也是为什么目前很多RS232的接口都是DB9而很少见到DB25的插头。DB9插头如下图所示。 形状和VGA接口很像但只有9个针脚。这9个针脚定义如下所示
简写符DTE25芯公DCE25芯母DTE9芯公DCE9芯母信号功能解释TXD2332发送数据 Transmit DataRXD3223接收数据 Receive DataGND7755信号地 GroundRTS4578请求发送 Require to SendCTS5487清除请求 Clear to SendDSR62064数据装置就绪 Data Set ReadyDCD8811接收线信号检测 Data Carry DetectedDTR20646数据终端准备好 Data Terminal ReadyRI222299振铃指示
其中前面三根线为必须的线后面6根线其实都是流控信号在实际使用时其实不一定会使用。
逻辑属性值得一提的是RS232的时序其实和上面提到的UART是一样的也需要设置波特率、数据位、校验位、停止位等。但是需要注意的是RS232波特率设置一般不超过19200因为RS232传输的上限为20kbps。电气属性RS-232采用负逻辑电平逻辑1-15V ~ -3V 逻辑03V ~ 15V
总结 RS-232是一种全双工通信方式时序和UART相同只是电气属性存在差异。此外它只能实现单点通信且最大通信速率为20kbps最大通信距离为15m。
2.3 RS-485 RS-485相比于RS-232最大的特点就是传输距离更远信号更加稳定因为它的基于差分信号进行传输的传输时只看两个引脚之间的电压之差从而来判断是逻辑0还是逻辑1. RS-485相比于RS-232协议通信距离更远可以达到4000英尺约1219米最高传输速率可以达到10Mbps40英寸内约12.2米
2.4 RS-422
物理属性逻辑属性电气属性
总结
3 常用的芯片 由于目前很多电脑都不再配备老式的RS-232和RS-485等串口主要以USB为主流所以为了实现设备与普通计算机之间的通讯往往需要使用一些转换成USB协议的芯片这里主要列举一些并阐述其作用。
3.1 MAX232
3.2 CP2102
3.3 CH340
3.4 FT232