Menu Close

异步串行口(UART)的基本知识

异步串行口(UART)的基本知识

异步串行口是计算机的标准接口之一,应用非常广泛,在串行通信中占有非常重要的位置。在早期的的计算机中是标配接口,虽然目前的计算机的串行接口已经逐渐被USB(Universal Serial Bus)取代,可能在新的计算机接口中已经见不到标准的异步串行接口,但其应用并没有停止,尤其是计算机与嵌入式系统的连接调试依然使用异步串行接口,只不过是将USB总线的通信协议转换为UART。那么什么是异步串行接口(UART)呢?

  1. 异步串行接口UART

UART (universal asynchronous receiver-transmitter)通用异步串行收发器,俗称异步串行口,最早在计算机上是以9针(DB9)或25针(DB25)的方式出现,DB25尤其结构复杂,成本高,早早被淘汰,DB9目前在有些计算上仍然可以见到。如图1,

图1

  • DB9的接口定义

在计算机异步收发接口中DB25已经早早离开了大众视线,DB9在有的计算机中仍然存在,因此这里对DB9的接口定义进行介绍。

    • DB9的管脚定义,如图2
      • DCD载波检测,是指通过电话线相连的两个modem是否有载波(调制信号如FSK,QPSK等),该信号由modem产生,PC串口接收检测,也可以产生中断
      • RXD 数据接收端 RS232 电平
      • TXD数据发送端 RS232电平
      • DTR( Data Terminal Ready )数据终端准备就绪,对于计算机和modem而言,是指计算机已经准备就绪Modem可以正常收发数据。其它的用途,可以通过软件配置使该脚始终维持高电平,从而可以给外部设备供电。
      • SG(signal ground),信号地。
      • DSR(Data set Ready),一般是接收信号与DTR配对,如图3
      • RTS(request to send ),请求发送
      • CTS(clear to send), 准备好接收(发送端的数据)
      • RI(ring indicator), 振铃信号,表示收到有效载波。
串口
计算机串口

图2

 

图3

随着modem退出历史舞台,在简单的UART应用中一般指关注TXD,RXD,与SG的连接,TXD,RXD在使用中交叉连接,即发送端的TXD连接到接收端的RXD上,接收端的TXD连接到发送端的RXD上。如图4

图4

计算机的串口如DB9采用的是RS232电平标准。所以这里出现了两个概念UART与RS232,这两者是不是一回事呢?下面将对RS232电平标准进行介绍,再比较这些概念的异同。

2. RS232 电气标准

UART最早是和RS232电平一起使用的,RS232是一种电平标准,由美国电子工业联盟制定(EIA Electronic Industry Association)制定,全称为EIA-RS-232 (简称232或 RS232),RS( Recommended Standard)表示推荐标准。RS232的电压范围为 -15V~-3V为逻辑1, +3V~+15V为逻辑0, -3V~+3V之间没有定义,可见RS232是负逻辑电平。在实际使用中最高电压不一定是+15V/-15V ,也可能+12/-12V等,对于整个逻辑影响不大,只是噪声容限降低。

RS232电平与TTL,CMOS,LVTTL,LVCMOS等电平完全不兼容,因此在使用该电平与数字电路TTL,CMOS等电平对接时需要电平转换。推荐的转换电路如图5:

 图5,

图5中左边是TTL电平,右边是RS232电平。采用MAX232实现从TTL电平到RS232电平的转换。

3. RS485,RS422接口芯片的使用

UART除了与RS232电气接口芯片结合使用外,UART 也经常与RS485或RS422的电平标准一起使用如图6,7。RS485 ,RS422在传输线上采用差分电平。有关RS485的电气接口请参照MAX485的使用说明。

 

图6

图7

4. UART是串行通信协议标准

UART是串行异步收发通信协议标准,那么与RS232是否相同呢?答案是否定的。其区别如下:

  • UART是串行异步通信协议标准,规定数据采用什么格式进行发送和接收,至于在收发数据时采用什么电平标准,根据用户实际需要而定,如计算机上的DB9采用的232电气标准,在RS485采用差分信号在总线上传输。
  • RS232是电气标准,规定电压等级,-15V~-3V 为逻辑1,+3V~+15V为逻辑0, -3V~+3V 没有定义。
  • 在计算机异步串行口通信中,UART与RS232电气标准结合,形成一套异步串行口。
  • 由于目前RS232标准的接口逐渐被USB接口淘汰,但UART通信需求依然存在,因此出现众多USB到UART的协议转换芯片和电路。比较典型的如 silicon lab 研发CP2102从USB2.0 full speed 到UART的双向转换。

有关UART的协议内容请看下节内容,异步串行收发器UART 协议。

 

Posted in FPGA, 文章, 资料区

发表评论

您的电子邮箱地址不会被公开。

Leave the field below empty!

相关链接