首页/文章/ 详情

为什么都喜欢用串口通讯?那为什么还用RS485,SPI和I2C?

9月前浏览135

1、为什么都喜欢用串口通讯?

之前在做单片机产品的时候,用的最多的就是串口通讯,凡是单片机的外设,优先选用带串口功能的,比如蓝牙模块,WIFI模块,4G模块,电表和显示屏等等。


为什么都喜欢用串口通讯?
因为简单啊,通常仅需2条通讯线,1电源线和1条地线相连

点击图片可详看串口介绍


双方约定好相同的速度,比如115200bps,以这种数据包的形式给对方发送数据,一次发送8位,也就是一个字节的数据。


2、串口通讯的缺点

虽然串口简单,但是它也有缺点:
1、远距离信号传输;
2、通讯速度较慢;

3、只支持一对一通讯,不能一对多通讯。

所以,针对这几个缺点,我们需要采用其它的方式来弥补串口的不足。


3、RS232,RS485,SPI通讯


3.1、RS232,RS485


像我开始举的例子,单片机跟外设之间距离短可以正常通信,要是我们长距离传输数据就容易受到干扰,导致通信异常,这时候聪明的人类就发明了RS232和RS485通信。


  • RS232通信距离可达30m左右;

  • RS485的通信距离理想情况下能超过1000m,且485的总线上可挂多个负载。

点击图片可详看485介绍

通常,串口通信最大的波特率为115200

如果没有校验位,就应该除以10,得到的是每秒字节数:115200÷10= 11520 (字节/秒)。再除以 1024,就是每秒 KB 数:11520÷1024=11.25 (KB/秒)

如果有一位奇偶校验位,就应该除以 11,得到的是每秒 KB 数:115200÷11÷1024= 10.27 (KB/秒)。

所以串口的速度是非常的慢,之所以这么慢是因为早期的单片机频率比较低,时钟精度也不高,所以通信双方的波特率不能做到完全一致,速率太快就会通信异常。


3.2、SPI


那如果在通信双方之间加一个clock时钟信号,不给通信双方约定相同的速度,我们只需根据时钟信号的上升沿进行发送接收数据,大大提高了通信速率,于是产生了SPI通信,它可以轻松突破10M。

点击图片可详看SPI介绍

3.3、I2C

如果我们的单片机要同时控制多个外设,用很多串口分别连接是很浪费的,要是一条通信线上可同时挂多个外设,那是相当的节约资源,所以就产生了I2C。

点击图片可详看I2C介绍

声明:


 
声明:原创文章转载请注明出处,部分图片整理于网络。本号对所有原创、转载文章的陈述与观点均保持中立,推送文章仅供读者学习和交流。文章、图片等版权归原作者享有,如有侵权,联系删除。


来源:硬件笔记本
电源电路电子通信控制
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2025-11-11
最近编辑:9月前
硬件笔记本
本科 一点一滴,厚积薄发。
获赞 158粉丝 51文章 1109课程 0
点赞
收藏
作者推荐

这个地,不好分。。。

在电路原理设计阶段,为了降低电路之间的互相干扰,工程师一般会引入不同的GND地线,作为不同功能电路的0V参考点,形成不同的电流回路。01GND地线的分类 02细究GND的原理 一个地线GND怎么会有这么多区分,简单的电路问题怎么弄得这么复杂?为什么需要引入这么多细分的GND地线功能呢?工程师一般针对这类GND地线设计问题,都简单的统一命名为GND,在原理图设计过程中没有加以区分,导致在PCB布线的时候很难有效识别不同电路功能的GND地线,直接简单地将所有GND地线连接在一起。虽然这样操作简便,但这将导致一系列问题: 1、信号串扰。假如将不同功能的地线GND直接连接在一起,大功率电路通过地线GND,会影响小功率电路的0V参考点GND,从而产生不同电路信号之间的串扰。 2、信号精度。模拟电路的考核核心指标就是信号的精度。失去精度,模拟电路也就失去了原本的功能意义。交流电源的地线CGND由于是正弦波,是周期性的上下波动变化,它的电压也是上下波动,不是像直流地线GND一样始终维持在一个0V上不变。将不同电路的地线GND连接在一起,周期性变化的交流地线CGND会带动模拟电路的地线AGND变化,这样就影响了模拟信号的电压精度值了。 3、EMC实验。信号越弱,对外的电磁辐射EMC也就越弱;信号越强,对外的电磁辐射EMC也就越强。假如将不同电路的地线GND连接在一起,信号强电路的地线GND,直接干扰了信号弱电路的地线GND,后果是原本信号弱的电磁辐射EMC,也成为了对外电磁辐射强的信号源,增加了电路处理EMC实验的难度。 4、电路可靠性。电路系统之间,信号连接的部分越少,电路独立运行的能力越强;信号连接的部分越多,电路独立运行的能力就越弱。试想,如果两个电路系统A和电路系统B,没有任何的交集,电路系统A的功能好坏是不能影响电路系统B的正常工作,同样电路系统B的功能好坏也不能影响电路系统A的正常工作。假如在电路系统中,将不同功能的电路地线连接在一起,就相当于增加了电路之间干扰的一个联系纽带,也即降低了电路运行的可靠性。 03手把手教你画“GND”“GND”在一块PCB板上的重要程度,不亚于水对人体的重要程度。怎么画好“GND”呢?只要注意下面这几点就可以了。 1、做好分区“GND” 在PCB板上,不同的模块功能会分布在不同的位置,而对应模块的“GND”要求也会不一样。下图是一个电源地与信号地冲突的画板,此电路中电源的GND实际作用是“电源负极”而不是“0V参考地”,而信号部分的GND实际作用是“0V参考地”。在这种情况下,电源地的不干净就导致了信号部分受干扰!这样的情况处理的方式分两种:1.将信号部分的地与电源部分的GND分开,不要直接连接;2.将信号部分的GND掏空,如果需要供电,就以走线的方式去供电。 2、不要跨步“GND” 还有一些受制于结构导致的,某一个模块本应完整的GND,被其他走线分割成多个区域的跨步GND。例如下图的PCB电路所示,电源输入的负极接上PCB板后直接变成“GND”也就是①位置,往电源模块过去的方向上,①与②之间被信号线隔断;②与③之间被5V输出隔断;而③与④之间被芯片的使能隔断。这样布局的GND虽然用万用表上测量是连通的,但是从原理图上的走线先后顺序,以及高频状态下的“地阻抗”来说都是不合理的。尤其是电源这个模块作为EMC问题的核心之一,地的布局一定要在同一层是完整的! 3、拒绝小蛮腰“GND” 在给PCB整个板子覆铜或者铺地时,经常会有一些地方因为其他位置的走线或者过孔导致“GND”与“GND”之间出现“小蛮腰”!例如下面两张图片里面,左边是“小蛮腰”类型的GND,右边是“猪尾巴”类型的GND,这两种样式的GND对于EMI和EMS来说,都不是一个好的layout!“小蛮腰”类型的GND可以对其进行加宽,或者过于狭小的区域直接禁止铺铜,而“猪尾巴”类型的GND最好不去铺铜切掉,如果是其他功能需要,就多增加过孔,确保接地OK。 PCB板上的“GND”需要工程师的反复检查,以及全局布局的考虑,不要图方便而敷衍了事,也不要为了接地而接地!在铺铜“GND”的时候,一定要注意区分各个部分的GND能否通铺,密密麻麻的走线之间是否有“不合理”的GND,以及“GND”在各个区域的实际作用! 声明: 声明:文章来源网络。本号对所有原创、转载文章的陈述与观点均保持中立,推送文章仅供读者学习和交流。文章、图片等版权归原作者享有,如有侵权,联系删除。来源:硬件笔记本

未登录
还没有评论
课程
培训
服务
行家
VIP会员 学习计划 福利任务
下载APP
联系我们
帮助与反馈