当前位置:首页 > 公众号精选 > 射频工程师的日常
[导读]串口是“串行接口”的简称,即采用串行通信方式的接口。串行通信将数据字节分成一位一位的形式在一条数据线上逐个传送,其特点是通信线路简单,但传输速度较慢。因此串口广泛应用于嵌入式、工业控制等领域中对数据传输速度要求不高的场合。串行通信分为两种方式:同步串行通信和异步串行通信。同步串行通信需要通信双方在同一时钟的控制下,同步传输数据;异步串行通信是指通信双方使用各自的时钟控制数据的发送和接收过程。UART是一种采用异步串行通信方式的通用异步收发传输器(universal asynchronous receiver-transmitter),它在发送数据时将并行数据转换成串行数据来传输,在接收数据时将接收到的串行数据转换成并行数据。UART串口通信需要两根信号线来实现,一根用于串口发送,另外一根负责串口接收。UART在发送或接收过程中的一帧数据由4部分组成,起始位、数据位、奇偶校验位和停止位,如下图所示。其中,起始位标志着一帧数据的开始,停止位标志着一帧数据的结束,数据位是一帧数据中的有效数据。校验位分为奇校验和偶校验,用于检验数据在传输过程中是否出错。奇校验时,发送方应使数据位中1的个数与校验位中1的个数之和为奇数;接收方在接收数据时,对1的个数进行检查,若不为奇数,则说明数据在传输过程中出了差错。同样,偶校验则检查1的个数是否为偶数。

1. 串口介绍

串口是“串行接口”的简称,即采用串行通信方式的接口。串行通信将数据字节分成一位一位的形式在一条数据线上逐个传送,其特点是通信线路简单,但传输速度较慢。因此串口广泛应用于嵌入式、工业控制等领域中对数据传输速度要求不高的场合。串行通信分为两种方式:同步串行通信和异步串行通信。同步串行通信需要通信双方在同一时钟的控制下,同步传输数据;异步串行通信是指通信双方使用各自的时钟控制数据的发送和接收过程。UART是一种采用异步串行通信方式的通用异步收发传输器(universal asynchronous receiver-transmitter),它在发送数据时将并行数据转换成串行数据来传输,在接收数据时将接收到的串行数据转换成并行数据。UART串口通信需要两根信号线来实现,一根用于串口发送,另外一根负责串口接收。UART在发送或接收过程中的一帧数据由4部分组成,起始位、数据位、奇偶校验位和停止位,如下图所示。其中,起始位标志着一帧数据的开始,停止位标志着一帧数据的结束,数据位是一帧数据中的有效数据。校验位分为奇校验和偶校验,用于检验数据在传输过程中是否出错。奇校验时,发送方应使数据位中1的个数与校验位中1的个数之和为奇数;接收方在接收数据时,对1的个数进行检查,若不为奇数,则说明数据在传输过程中出了差错。同样,偶校验则检查1的个数是否为偶数。异步串行通信数据格式图如上图所示,UART通信过程中的数据格式及传输速率是可设置的,为了正确的通信,收发双方应约定并遵循同样的设置。数据位可选择为5、6、7、8位,其中8位数据位是最常用的,在实际应用中一般都选择8位数据位;校验位可选择奇校验、偶校验或者无校验位;停止位可选择1位(默认),1.5或2位。串口通信的速率用波特率表示,它表示每秒传输二进制数据的位数,单位是bps(位/秒),常用的波特率有9600、19200、38400、57600以及115200等。在设置好数据格式及传输速率之后,UART负责完成数据的串并转换,而信号的传输则由外部驱动电路实现。电信号的传输过程有着不同的电平标准和接口规范,针对异步串行通信的接口标准有RS232、RS422、RS485等,它们定义了接口不同的电气特性,如 RS-232是单端输入输出,而RS-422/485 为差分输入输出等。2. 常见的串行通信接口针对异步串行通信的接口标准有RS232、RS422、RS485,其对比区别如下:RS-232,RS-422和RS-485也都是常用的串行通信接口标准,它们定义了接口不同的电气特性,如 RS-232 是单端输入输出,而 RS-422/485为差分输入输出等。2. 串行通信传输方式串口通信过程中有单端传输与差分传输的差别。单端传输是指在发送或接收过程中,用信号线对地线的电压值来表示逻辑“0”和“1”。而差分传输使用两根信号线来传输一路信号,这两根信号线上传输的信号幅值相等,相位相差 180 度(极性相反),用它们的差值来表示逻辑“0”和“1”,如下图所示。


在传输过程中,当信号线上叠加了频率、幅值和相位都相同的干扰信号时(共模干扰),对于单端传输而言,由于地线电位为 0,则传输的信号就包含了干扰信号;而在差分传输方式下,干扰可以通过两个信号线上电压的差值抵消,相当于抑制了共模干扰,如下图所示。因此相对于单端传输方式,差分传输大大提高了信号在传输过程中的抗干扰能力,但是需要多余的信号线来实现信号传输。


RS-232接口标准出现较早,信号采用负逻辑电平、单端传输方式工作。通过一根信号线发送,一根信号线接收,加上一根地线,RS-232可实现全双工通信。由于单端传输方式抗干扰能力差,导致RS-232 标准通信距离短(小于15米),数据传输速率低等问题。另外 RS-232仅支持一对一通信,存在无法实现多个设备互联的缺点。RS-422由RS-232发展而来,它是为弥补 RS-232 之不足而提出的。RS-422 采用差分传输(又称平衡传输)方式,将最大传输速率提高到 10Mbps;当传输速率在100kbps以下时,传输距离可达1200米。由于采用差分传输方式,RS-422需要4根信号线来实现全双工通信,两根用于发送、两根用于接收,一般会再加上一根地线。RS-422 允许在一条传输总线上连接最多10个接收器,从而实现单个设备发送,多个设备接收的功能。为扩展应用范围,在 RS-422 基础上又制定了 RS-485 标准。RS-485同样采用差分传输方式,但是RS-485只有2根信号线,由发送和接收共用,因此发送和接收不能同时进行,只能实现半双工通信。RS-485增加了多点、双向通信能力,即允许多个发送器连接到同一条总线上,各设备通过使能信号控制发送和接收过程。4. 单工、半双工及全双工之间的区别1、单工数据传输只支持数据在一个方向上传输;在同一时间只有一方能接受或发送信息,不能实现双向通信,举例:电视,广播。2、半双工数据传输允许数据在两个方向上传输,但是,在某一时刻,只允许数据在一个方向上传输,它实际上是一种切换方向的单工通信;在同一时间只可以有一方接受或发送信息,可以实现双向通信。举例:对讲机。3、全双工数据通信允许数据同时在两个方向上传输,因此,全双工通信是两个单工通信方式的结合,它要求发送设备和接收设备都有独立的接收和发送能力;在同一时间可以同时接受和发送信息,实现双向通信,举例:电话通信。

5. RS232基础介绍

RS232 接口标准出现较早,可实现全双工工作方式,即数据发送和接收可以同时进行。在传输距离较短时(不超过15m),RS232是串行通信最常用的接口标准。RS-232标准的串口最常见的接口类型为DB9(如下图1所示),工业控制领域中用到的工控机一般都配备多个串口,很多老式台式机也都配有串口。但是笔记本电脑以及较新一点的台式机都没有串口,它们一般通过USB转串口线来实现与外部设备的串口通信(如下图2所示)。DB9 接口定义以及各引脚功能说明如图,我们一般只用到其中的 2(RXD)、3(TXD)、5(GND)引脚,其他引脚在普通串口模式下一般不使用。3线连接中,使用TXD和RXD两条数据线,无法实现硬件流控功能。

6. 典型硬件电路设计

SP3232的作用:ZYNQ PL端串口输入输出引脚为TTL电平,用3.3V代表逻辑“1”,0V 代表逻辑“0”;而计算机串口采用RS-232电平,它是负逻辑电平,即-15V~-5V 代表逻辑“1”,+5V~+15V 代表逻辑“0”。因此当计算机与ZYNQ通信时,需要加电平转换芯片SP3232,实现RS232电平与TTL电平的转换。P1的座子的作用:SP3232芯片端口的U2_RX和U2_TX并没有直接和ZYNQ的引脚相连接,而是连接到了P1排针上。RS232串口和RS485串口共用P1排针的UART2_TX和UART2_RX,而UART2_TX和UART2_RX是直接和ZYNQ的引脚相连接的。在使用时,使用跳线帽选择与ZYNQ 相连接的串口类型,这样的设计方式实现了有限IO的复用。因此,在做RS232的通信实验时,需要使用杜邦线或者跳线帽将U2_RX和UART2_TX连接在一起,U2_TX和UART2_RX连接在一起。原理说明:
P1端子的3脚是连接FPGA的发送端,4脚是连接FPGA的接收端。COM2的2脚是接收数据端,3脚是发送数据端。发送数据的过程:如果我们想实现FPGA与外部的串口设备进行通信。那我们就需要将串口的发送端与外部设备串口的接收端进行连接。所以用跳线帽把P1的3脚和P1的1脚连接。另外,我们还需要把串口的接收端与外部的发送端连接,即把P1的2脚和P1的4脚连接。U1的11脚在芯片的内部与14管脚连接,在这个过程中,完成了TTL电平到RS232电平的转换。通过第14管脚连接到DB9的第二个管脚。DB9的2脚是接收数据端。DB9通过串口线与外部的串口设备进行连接。接收数据的过程:外部的串口设备会发送数据通过串口线连接到DB9的第3管脚,数据通过SP3232管脚的13管脚,再连接到12管脚,在这个过程中,完成电平转换的过程。最终数据会通过P2的2脚和4脚连接,送到FPGA的接收端。7. MAX232与MAX3232常用232电平转换芯片的区别
  • MAX232是5V电压供电的,而max3232是5v或3.3V电压供电的。
  • MAX232功耗较大,供电电压5V时,耗电5mA;而MAX3232功耗较小,供电电压5V或3.3V时,耗电 0.3mA。
  • MAX232外接4个1uF电容;而MAX3232外接4个0.1uF电容。
  • MAX232一般民用产品应用;而MAX3232一般军用(如航天等对功耗要求苛刻的地方)。
  • 价格上略有差别。
本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

串行通信需要传输的数据通过调制器(Modulator)将数据转换为模拟信号,经过信号调制(Modulation)后在传输线上传输,接收端通过解调器(Demodulator)将信号解码还原成原始数据。

关键字: 串口 串行通信 并行通信

RS485是一种常见的通信接口标准,广泛应用于工业自动化、智能家居等领域。它采用差分信号传输方式,具有传输距离远、抗干扰能力强、数据传输速率高等特点。

关键字: rs485 RS232

异步通信的工作原理基于事件驱动模型。例如,当一个进程想要向另一个进程发送数据时,它会发送一个请求并继续执行。当接收方准备好处理该请求时,它会触发一个事件来通知发送方,从而达到异步通信的目的。

关键字: 异步通信 RS232

串口通信的原理是采用串行异步通信协议,以字符帧作为数据传输单位,通过串口按位依次传输字符帧的每个位,完成数据的传输。在串口通信中,字符帧由起始位、数据位、可选的校验位和停止位组成。起始位用于标识字符帧的开始,占1位;数据...

关键字: 串口通信 RS232

51 单片机内部有一个全双工串行接口。什么叫全双工串口呢?一般来说,只能接受或只能发送的称为单工串行;既可接收又可发送,但不能同时进行的称为半双工;能同时接收和发送的串行口称为全双工串行口。串行通信是指数据一位一位地按顺...

关键字: 单片机 全双工 串口

串口作为单片机开发的一个常用的外设,应用范围非常广。大部分时候,串口需要接收处理的数据长度是不定的。那么怎么才能判断一帧数据是否结束呢,今天就以STM32单片机为例,介绍几种接收不定长数据的方法。

关键字: 单片机 串口 STM32

这是FPGA之旅设计的第十例啦,在上一例中,已经成功驱动了OLED屏幕,本例将结合上一例,以及第四例多bytes串口通信做一个有趣的例程。

关键字: FPGA OLED屏 串口

接下来测试烧写功能,本次采用串口和USB烧写方式。使用ISP串口烧写这是51单片机常用的方案,本次测试比较顺利,没有遇到什么问题。但是USB烧写没有测试成功,USB烧写方式不需要任何的驱动和硬件支持,直接将USB线和ST...

关键字: PCB控制板 USB 串口

摘要:多功能电能表在配电系统中应用广泛,其计量的准确度对企业管理和考核至关重要,因此在设计多功能电能表时需要对其进行校准,满足一定应用等级。常规的多功能电能表校准方法是以电能脉冲校准为主,现提出一种基于C#和功率校表法的...

关键字: 多功能电能表 串口 波特率

摘 要:为了能通过串口采集电能参数,完成一种基于串口的三相电能采集设备的研制,设计了电能采集设备的硬件和软件部分。其中硬件采用MCU+专用电能计量芯片的结构,结构简单;软件则用于实现输入、输出、三相电能参数的采集和串行通...

关键字: 电能采集 ATT7022B MSP430 串口
关闭