UART和RS232/RS485的关系是什么?

转载 2017年01月02日 21:51:37

http://wpp9977777.blog.163.com/blog/static/4625100720138411281980/

     串口通讯是电子工程师和嵌入式开发工程师面对的最基本问题,RS232则是其中最简单最常用的通讯方式。但是初学者往往搞不清有关的名词如UART和RS232或RS485之间是什么关系,因为它们经常被放到语句中同等的位置使用。在百度搜索二者的区别,可以看到排在最前面的答案充斥着混淆的概念。就此,谈谈我对这几个概念的理解,希望能帮初学者厘清它们之间的关系。

~
~
       通讯问题,和交通是一样的。串口通信,我们这里可以用公交来类比。
       UART和RS232/RS485的关系是什么? - cp4 - Red Stone  Blue Sky        UART和RS232/RS485的关系是什么? - cp4 - Red Stone  Blue Sky
       公交运行可以简单分成两个部分:
       1、车站
       2、公路
       其中车站决定了车上装什么(人),怎么发送(班次)等。
       当汽车跑在路上,就要遵守公路交通的规则,过桥有过桥的规则,高速有高速的规则,和车站没有关系了。
~
       回到串口通讯,其实,UART就相当于车站,而RS232/RS485则对应于公路的规则。
       UART,是通用异步收发传输器(Universal Asynchronous Receiver/Transmitter),既然是“器”,显然,它就是个设备而已,要完成一个特定的功能的硬件,它本身并不是协议。那么它要完成什么功能呢?它的最基本功能,是串行数据和并行数据之间的转换。我们知道,计算机中的数据以Byte为基本单位,对一个Byte的存取是并行的,即,同时取得/写入8个bit。而串行通信,需要把这个Byte“打碎”,按照时间顺序来收发以实现串行。例如:
       内存中的数据是: 1 1 1 0 0 1 0 1
       串行发送的实际效果是(按时间排序【注1】):
       1
       0
       1
       0
       0
       1
       1
       1
      接收则是上述过程的逆过程。
      这就是UART做的最基本工作,进一步的,它还要控制“发车的班次”,比如确认一个Byte的这8个bit是什么时候开始的,又是什么时候结束的,两个班次之间至少要隔多长时间的缓冲,等等。这一部分,也具有协议的特征,但是相对于道路上的协议,更具有一般性,或曰,是与车在什么道路上开,相对独立的。
       那么道路上的规定是什么样的呢?
       RS232/RS485,是两种不同的电气协议,也就是说,是对电气特性以及物理特性的规定,作用于数据的传输通路上,它并不内含对数据的处理方式。比如,最显著的特征是:RS232使用3-15v有效电平,而UART,因为对电气特性并没有规定,所以直接使用CPU使用的电平,就是所谓的TTL电平(可能在0~3.3V之间)。更具体的,电气的特性也决定了线路的连接方式,比如RS232,规定用电平表示数据,因此线路就是单线路的,用两根线才能达到全双工的目的;而RS485, 使用差分电平表示数据,因此,必须用两根线才能达到传输数据的基本要求,要实现全双工,必需用4根线。但是,无论使用RS232还是RS485,它们与UART是相对独立的,但是由于电气特性的差别,必须要有专用的器件和UART接驳,才能完成数据在线路和UART之间的正常流动。
        UART和RS232/RS485的关系是什么? - cp4 - Red Stone  Blue Sky
       RS232甚至规定了接口的具体样式,图为DB9接口
~
      总结:从某种意义上,可以说,线路上存在的仅仅是电流,RS232/RS485规定了这些电流在什么样的线路上流动和流动的样式;在UART那里,电流才被解释和组装成数据,并变成CPU可直接读写的形式。
~
~
      【注1】这里是例子是小端发送模式,是基本的串口传输方式,但是,大端模式的串口传输模式也是存在的,少见而已。

相关文章推荐

RS232与RS485的功能与区别!

RS232接口是1970年由美国电子工业协会(EIA)联合贝尔系统、调制解调器厂家及计算机终端生产厂家共同制定的用于串行通讯的标准。它的全名是“数据终端设备(DTE)和数据通讯设备(DCE)之间串行二...
  • kevinhg
  • kevinhg
  • 2012年03月19日 00:49
  • 57440

UART和RS232、RS485的基础知识

UART和RS232、RS485的关系:   通讯问题,和交通是一样的。串口通信,我们这里可以用公交来类比。         公交运行可以简单分成两个部分:        1、车站        ...

Stm32RS485串口通信——中断接收发送数据

main.c源码: /* *说明: *PA0:KEY1;PA1:KEY2; *PA2:LED1;PA3:LED2; *PA9:USART1_TX;PA10:USART1_RX */ #include...

stm32通过485接串口做IAP

在做一个工程测量的项目,由于探头要下放到100米深,因此采用了走485差分信号的方式来提高传输距离和增强抗干扰能力,为了防止出问题时一遍一遍的拆开设备,所以决定通过预留出来的485的A,B线来进行固件...

Delphi7高级应用开发随书源码

  • 2003年04月30日 00:00
  • 676KB
  • 下载

认识UART接口

内容待添加
  • junyeer
  • junyeer
  • 2015年07月06日 21:53
  • 52445

UART与RS-232

在之前的学习中一直不清楚UART与RS-232是什么关系。现在搞清楚了,希望能帮到和我一样的初学者。 因为UART控制器集成到芯片中或者通过嵌入式处理器异步总线连接,所以通常从UART发出异步串...

UART,串口,RS232,RS485等等,之间有什么联系和区别?

UART是指串口通信的芯片吧, 是一个并行输入成为串行输出的芯片,通常集成在主板上。串口就是串行通信的接口(区别于并口 因为数据是按bit串起来传输的)一般在主机上都有的DB9的接口 就是串口232 ...
  • qt4422
  • qt4422
  • 2011年07月13日 21:46
  • 1876

UART USB COM RS232/485的区别

UART是除了串口通信的芯片 串口是对所有物理串口的总称:如USB的物理串口、RS232的物理串口、RS485的物理串口。 而不同的物理串口他们所使用的协议,即通信标准,是不同的。 RS232/...

串口——RS232与UART

MCU上的UART是TTL电平的,3.3V是高电平,0是低电平;PC上的UART是RS232电平的,+5~+12为低电平,-5~-12为高电平...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:UART和RS232/RS485的关系是什么?
举报原因:
原因补充:

(最多只允许输入30个字)