串口通信的基本原理是什么?
扫描二维码
随时随地手机看文章
1. 串口通讯
串口通讯(Serial Communication),是指外设和计算机间,通过数据信号线、地线等,按位进行传输数据的一种通讯方式。
串口是一种接口标准,它规定了接口的电气标准,没有规定接口插件电缆以及使用的协议。
串口按电气标准及协议来划分,包括RS-232-C、RS-422、RS485等。
2.串口通讯的数据格式
一个字符一个字符地传输,每个字符一位一位地传输,并且传输一个字符时,总是以“起始位”开始,以“停止位”结束,字符之间没有固定的时间间隔要求。
每一个字符的前面都有一位起始位(低电平),字符本身由7位数据位组成,接着字符后面是一位校验位(检验位可以是奇校验、偶校验或无校验位),最后是一位或一位半或二位停止位,停止位后面是不定长的空闲位,停止位和空闲位都规定为高电平。实际传输时每一位的信号宽度与波特率有关,波特率越高,宽度越小,在进行传输之前,双方一定要使用同一个波特率设置。
3.通讯方式
单工模式(Simplex Communication)的数据传输是单向的。通信双方中,一方固定为发送端,一方则固定为接收端。信息只能沿一个方向传输,使用一根传输线。
半双工模式(Half Duplex)通信使用同一根传输线,既可以发送数据又可以接收数据,但不能同时进行发送和接收。数据传输允许数据在两个方向上传输,但是,在任何时刻只能由其中的一方发送数据,另一方接收数据。因此半双工模式既可以使用一条数据线,也可以使用两条数据线。半双工通信中每端需有一个收发切换电子开关,通过切换来决定数据向哪个方向传输。因为有切换,所以会产生时间延迟,信息传输效率低些。
全双工模式(Full Duplex)通信允许数据同时在两个方向上传输。因此,全双工通信是两个单工通信方式的结合,它要求发送设备和接收设备都有独立的接收和发送能力。在全双工模式中,每一端都有发送器和接收器,有两条传输线,信息传输效率高。
显然,在其它参数都一样的情况下,全双工比半双工传输速度要快,效率要高。
4.偶校验与奇校验
在标准ASCII码中,其最高位(b7)用作奇偶校验位。所谓奇偶校验,是指在代码传送过程中用来检验是否出现错误的一种方法,一般分奇校验和偶校验两种。奇校验规定:正确的代码一个字节中1的个数必须是奇数,若非奇数,则在最高位b7添1;偶校验规定:正确的代码一个字节中1的个数必须是偶数,若非偶数,则在最高位b7添1。
5. 停止位
停止位是按长度来算的。串行异步通信从计时开始,以单位时间为间隔(一个单位时间就是波特率的倒数),依次接受所规定的数据位和奇偶校验位,并拼装成一个字符的并行字节;此后应接收到规定长度的停止位“1”。所以说,停止位都是“1”,1.5是它的长度,即停止位的高电平保持1.5个单位时间长度。一般来讲,停止位有1,1.5,2个单位时间三种长度。
6.波特率
波特率就是每秒钟传输的数据位数。
波特率的单位是每秒比特数(bps),常用的单位还有:每秒千比特数Kbps,每秒兆比特数Mbps。串口典型的传输波特率600bps,1200bps,2400bps,4800bps,9600bps,19200bps,38400bps。
PLC/PC与称重仪表通讯时,最常用的波特率是9600bps,19200bps。PLC/PC或仪表与大屏幕通讯时,最常用的波特率是600bps。
7. 典型的串口通讯标准
EIA RS232(通常简称“RS232”): 1962年由美国电子工业协会(EIA)制定。
EIA RS485(通常简称“RS485”): 1983年由美国电子工业协会(EIA)制定。
8.RS232串口
RS232是计算机与通信工业应用中最广泛一种串行接口。它以全双工方式工作,需要地线、发送线和接收线三条线。RS232只能实现点对点的通信方式。
串口通信的基本原理是利用串行数据传输的方式,通过单条线路按顺序发送一个比特的信息。在串行通信中,数据传输方向是单一的,可以是单向或双向,但需要在发送设备和接收设备之间建立通信协议,以便正确地传输和接收数据。
串行通信可以通过串行接口将计算机或其他设备的信号传输到另一台计算机或设备,也可以将其他设备的信号传输到计算机或其他设备。串行通信的传输速率、校验方式、数据位数和停止位等参数需要预先设置,以确保传输数据的准确性和可靠性。
根据传输方式的不同,串行通信可以分为同步通信和异步通信两种。同步通信使用一个时钟信号来同步数据传输,要求发送设备和接收设备的时钟频率相同或相近,并且需要在发送设备和接收设备之间建立同步协议。异步通信则不需要时钟信号来同步数据传输,发送设备和接收设备可以在不同的时钟频率下工作,但需要在发送和接收端设置帧同步域,以便在接收端恢复字节边界,并通过位数逐个地进行帧的识别。
在实际应用中,串口通信通常采用RS-232、RS-485、I2C等协议进行数据传输。串口通信协议通常包括起始位、数据位、校验位和停止位等,其中起始位用于标识数据包的开始,数据位用于传输实际的数据,校验位用于检测数据传输过程中的错误,停止位用于标识数据包的结束。在串口通信过程中,发送设备和接收设备必须遵循相同的协议和设置,才能正确地传输和接收数据。
串行数据传输的方式相比并行数据传输具有以下优势:
传输距离更长:由于串行通信只使用一条线路进行数据传输,因此可以在长距离上实现数据的传输,而并行通信由于线路的限制,其传输距离较短。
成本更低:串行通信使用的线路数量较少,因此可以减少硬件成本,并且可以节省空间,这对于一些应用场景尤为重要。
可靠性更高:由于串行通信只使用一条线路进行数据传输,因此可以避免并行通信中存在的数据干扰问题,从而提高了数据传输的可靠性。
更广泛的应用范围:串行通信被广泛应用于各种设备之间的通信,如串行接口、USB、1394等。这些接口具有很高的数据传输速率和可靠性,使得串行通信在计算机和外设之间得到了广泛的应用。
可以支持多种传输协议:串行通信可以支持多种传输协议,如ASCII、二进制、I2C、SPI等,这些协议可以根据不同的应用场景进行选择,使得串行通信具有更高的灵活性和可扩展性。
串行通信的优点主要体现在以下几个方面:
传输线路简单,成本低:串行通信只需要一条传输线路,相比并行通信的多个线路,大大降低了硬件成本和线路复杂度。
易于实现:串行通信的实现方式相对简单,只需通过串口就能实现数据的发送和接收,因此可以方便地实现各种通信协议。
可扩展性强:串行通信可以通过多条线路同时传输数据,使得其具有更强的可扩展性,可以满足各种不同应用场景的需求。
长距离传输:串行通信可以在长距离上实现数据的传输,使得数据可以在更远的距离间传递,满足不同设备间的通信需求。
可靠性高:由于串行通信只使用一条线路进行数据传输,因此可以避免并行通信中存在的数据干扰问题,从而提高了数据传输的可靠性。
总之,串行通信的优点主要体现在其传输线路简单、成本低、易于实现、可扩展性强、长距离传输以及可靠性高等方面,这些优点使得串行通信在各种不同应用场景中得到广泛应用。