艾巴生活网

您现在的位置是:主页>科技 >内容

科技

干气密封原理动画解析(数据通信的几种基本方式以及原理解析)

2024-05-06 17:34:52科技帅气的蚂蚁
数据通信的基本方法可分为并行通信和串行通信:并行通信:指使用多条数据传输线同时传输一个数据的多个位。其特点是传输速度快,适合短距离

干气密封原理动画解析(数据通信的几种基本方式以及原理解析)

数据通信的基本方法可分为并行通信和串行通信:

并行通信:指使用多条数据传输线同时传输一个数据的多个位。其特点是传输速度快,适合短距离通信,但对通信速度要求高。

串行通信:指的是使用传输线一位一位地顺序传输数据。其特点是通信线路简单,使用简单的电缆即可实现通信,降低了成本。适合远距离通信,但传输速度较慢。

一、异步通信及其协议

异步通信以一个字符为传输单位,通信中两个字符之间的时间间隔是不固定的,但同一字符中两个相邻位码之间的时间间隔是固定的。

通信协议(Communication protocol):指双方约定的一些规则。使用异步串口传输字符信息时,数据格式有以下约定:有空闲位、起始位、数据位、奇偶位和停止位。

异步通信的时序如图5-1所示。

其中每一个的含义如下:

起始位:首先发出一个逻辑“0”信号,表示传输字符的开始。

数据位:紧接在起始位之后。数据位数可以是4、5、6、7、8等。形成性格。通常使用ASCII码。传输从最低位开始,由时钟定位。

奇偶校验位:数据位加上这个位后,“1”的个数应该是偶数(偶校验)或奇数(奇校验),以检查数据传输的正确性。

停止位:它是字符数据的结束标记。它可以是1位、1.5位或2位高电平。

空闲位:处于逻辑“1”状态,表示当前线路上没有数据传输。

波特率:衡量数据传输速率的指针。表示每秒传输的二进制位数。例如,如果数据传输速率为120字符/秒,每个字符为10位,则传输的波特率为10 120=1200字符/秒=1200波特。

注意:异步通信是通过字符传输的。接收设备收到初始信号后,只要能在一个字符的传输时间内与发送设备保持同步,就能正确接收。下一个字符起始位的到达使得同步重新校准(通过检测起始位,发送方和接收方的时钟自同步)。

二、数据传输模式

根据数据传输的方向有三种方式。如图5-2所示。

(1)单工模式(2)半双工模式(3)全双工模式

图5-2数据传输模式

1、单工模式

数据总是从设备A发送到设备b。

2、半双工模式

数据可以从设备A传输到设备B,也可以从设备B传输到设备A.任何时候都不能同时双向传输数据,即一次只能有一个设备发送,另一个设备接收。但是,通信双方按照一定的通信协议依次发送和接收。

3、全双工模式

允许双方同时发送和接收。这时,A设备也可以边发送边接收,B设备也可以。全双工模式相当于将两个方向相反的单工模式组合在一起,所以需要两条数据传输线。半双工和全双工模式主要用于计算机串行通信。

三、信号传输模式

1、基带传输模式

未调制的二进制信号在传输线上的直接传输,如图所示。它要求传输线具有宽频带,并且传输的数字信号是矩形波。

基带传输模式只适合短距离低速通信。

2、波段传输模式

发送调制的模拟信号

在远距离通信中,发送方会用调制器将数字信号转换成模拟信号,接收方会用解调器将接收到的模拟信号转换成数字信号,这就是信号调制解调。

实现调制和解调任务的设备称为调制解调器。当采用频带传输时,通信双方分别连接一个调制解调器,数字信号在模拟信号(载波)上传输。因此,这种传输模式也称为载波传输模式。此时,通信线路可以是电话交换网络或专用线路。

有三种常用的调制方法:

调幅、调频和调相分别如下图所示。

四、串行接口标准

串行接口标准:指计算机或终端(数据终端设备DTE)的串行接口电路与调制解调器(数据通信设备DCE)之间的连接标准。

RS-232C标准

RS-232C是标准接口,D形插座,采用25针或9针连接器,如图5-5所示。

图5-5

按照RS-232C标准设计的接口电路实现了微机之间的串行通信。如果使用电话线进行通信,计算机和调制解调器之间的连接基于RS-232C标准。其连接和通信原理如图5-6所示。

图5-6

RS232信号定义

RS-232C标准规定有25个在线接口。只有以下9种信号被频繁使用。

引脚和功能如下:

1.TXD(第2针):发送数据线和输出。向调制解调器发送数据。

2.RXD(引脚3):接收数据线和输入。向计算机或终端接收数据。

3.(脚4):请求发送和输出。计算机通过此引脚通知调制解调器并请求发送数据。

4.(引脚5):允许发送和输入。计算机只有在成对发送回复时才能发送数据。

5.(针脚6):数据设备就绪(即调制解调器就绪),输入。表示可以使用调制解调器,这个信号有时候是直接接在电源上的,所以在设备连接的情况下是有效的。

6.CD(针脚8):载波检测(接收器信号测试仪),输入。表示调制解调器已经连接到电话线。

7.如果通信线路是交换电话的一部分,至少需要以下两种信号:

8.RI(引脚22):振铃指示,输入。如果调制解调器从交换机接收到振铃呼叫信号,它将发送信号通知计算机或终端。

9.(引脚20):数据终端准备输出。收到RI信号后,计算机向调制解调器发送一个信号作为应答,以控制其交换设备并建立通信链路。

10.GND(引脚7):信号地。

逻辑电平

RS-232C标准采用EIA等级,规定:

“1”的逻辑电平在-3v和-15v之间。

“0”的逻辑电平在3v和15v之间。

因为EIA电平和TTL电平完全不同,所以必须进行相应的电平转换。MCl488完成从TTL电平到EIA电平的转换,MCl489完成从EIA电平到ITL电平的转换。而MAX232可以同时完成TTL-》EIA和EIA-》TTL电平转换。

除了RS-232C标准,还有一些其他通用异步串行接口标准,例如:

RS-423A标准

为了克服RS-232C的缺点,提高传输速率,增加通信距离,并考虑与RS-232C的兼容性,美国电子工业协会于1987年提出了RS-423A标准。该标准的主要优点是在接收端采用差分输入。而差分输入对共模干扰信号有很高的抑制作用,提高了通信的可靠性。RS-423A用-6v表示逻辑“1”,用6v表示逻辑“0”,可以直接与RS-232C连接。采用RS-423A标准,获得比RS-232C更好的通信效果。图5-7是RS423A的连接示意图。

图5-7

RS-422A标准

RS-422A总线采用平衡输出发送器和差分输入接收器。如图5-8所示。

图5-8

RS-422A输出信号线间电压为2V,接收器识别电压为0.2v,共模范围25v。高速传输信号时,要考虑通信线路的阻抗匹配,一般在接收端加一个终端电阻来吸收反射波。电阻网络也应该是平衡的,如图5-9所示。

图5-9是RS-422A平衡输出差分传输的原理图。

RS-485标准

RS-485适用于发送方和接收方共用一对线路进行通信,也适用于多点共用一对线路进行总线组网,但通信只能是半双工的,线路a

典型的RS232转RS422/485转换芯片有:MAX 481/483/485/487/488/489/490/491、SN75175/176/184等。所有这些都可以在5v单电源下工作(芯片由电荷泵升压)。具体用法请参考相关技术手册。

五、S3C2410内置UART控制器

S3C2410有三个独立的UART控制器,每个控制器都可以工作在中断模式或DMA模式,这意味着当CPU和UART控制器传输数据时,UART控制器可以产生中断或DMA请求。并且每个UART都有一个16字节的FIFO(先进先出寄存器),支持的最高波特率可以达到230.4Kbps。

图5-11是S3C2410内部UART控制器的结构图。

图5-11

UART操作

UART的操作分为以下几个部分:数据发送、数据接收、中断产生、波特率产生、回送模式、红外模式和自动流量控制模式。

数据传输

发送的数据帧的格式可以被编程。它包含起始位、5~8个数据位、可选的奇偶校验位和1~2个停止位。这些都是通过UART的控制寄存器ULCONn设置的。

数据接收

与发送一样,接收数据帧的格式也可以编程。此外,它还具有溢出错误、奇偶错误和帧错误等错误检测,每个错误都可以用相应的错误标志进行标记。

自动流量控制模式

S3C2410的UART0和UART1可以通过各自的nRTS和nCTS信号实现自动流量控制。

在自动流量控制(AFC)模式下,nRTS取决于接收器的状态,而nCTS控制发送和停止操作。具体来说,只有当nCTS有效时(表示接收器的FIFO准备好接收数据),UART才会发送FIFO中的数据。在UART接收数据之前,只要接收FIFO至少有2个字节空闲,nRTS就会被设置为有效。图5-12显示了UART自动流量控制模式的连接模式。

图5-12

中断/DMA请求生成

S3C2410的每个UART有七种状态,分别是:溢出错误、奇偶错误、帧错误、断线错误、接收就绪、发送缓冲空闲、发送移位器空闲。它们在UART状态寄存器UTRSTATn/UERSTATn中有相应的标志位。

波特率发生器

每个UART控制器都有自己的波特率发生器来产生用于发送和接收数据的串行时钟。波特率发生器的时钟源可以是CPU内部的系统时钟,也可以从CPU外部的UCLK引脚获取时钟信号,每个时钟源都可以通过UCONn选择。

波特率生成的具体计算方法如下:

选择CPU内部时钟时:

UBRDIVn=(int)(PCLK/(bps*16))-1,其中bps是所需的波特率值,PCLK是CPU内部外设总线(APB)的工作时钟。

当需要更精确的波特率时,可以选择由UCLK引入的外部时钟来产生。

UBRDIVn=(int)(UCLK/(bps*16))-1

环回操作模式

S3C2410 CPU的UART提供了一种测试模式,这里称为回送模式。在设计系统的具体应用时,为了判断通信失败是因为外部数据链路的问题还是CPU内部的驱动程序的问题,还是CPU本身的问题,需要使用环回的方式进行测试。在环回模式下,数据发送方TXD与UART内部的接收方RXD逻辑连接,可以验证数据是否正常发送或接收。

UART控制寄存器

下面将逐一解释UART的每个控制寄存器,以便进一步了解UART的操作和设置。

ULCONn (UART线路控制寄存器)如图5-13所示。

图5-13

字长:数据位长度

停止位数:停止位数。

奇偶校验模式:奇偶校验位类型

红外模式:UART//红外模式选择(在UART模式下工作时设置为“0”)

UCONn (UART控制寄存器)如图5-14所示。

接收模式:选择接收模式。如果采用DMA模式,还需要指定所使用的DMA通道。

传输模式:同上。

发送中断信号:选择是否在传输1帧数据的中途发送中断信号。

回送模式:选择是否将UART置于回送测试模式。

Rx错误状态中断使能:选择当接收异常发生时是否使能产生接收错误中断。

Rx超时使能:是否使能接收超时中断。

Rx中断类型:选择接收中断类型。

选择0:脉冲(脉冲/边沿中断。在非FIFO模式下,一旦接收缓冲器中有数据,就会产生一个中断;在FIFO模式下,一旦FIFO中的数据达到某个触发电平,就会产生中断)

选择1:电平(电平模式中断。在非FIFO模式下,只要接收缓冲区有数据,就会产生中断;在FIFO模式下,只要FIFO中的数据达到触发电平,就会产生中断)

Tx中断类型:类似于Rx中断类型。

时钟选择:选择UART波特率发生器的时钟源。

图5-14

UFCONn (UART FIFO控制寄存器)如图5-15所示。

FIFO使能:FIFO使能选择。

Rx FIFO复位:选择复位接收FIFO时是否自动清除FIFO的内容。

发送FIFO复位:选择复位发送FIFO时是否自动清除FIFO的内容。

Rx FIFO触发电平:选择接收FIFO的触发电平。

发送FIFO触发电平:选择发送FIFO的触发电平。

图5-15

Umconn (UART调制解调器控制寄存器)如图5-16所示。

请求发送:如果在AFC模式下,该位将由UART控制器自动置1;否则必须由用户的软件控制。

自动流量控制:选择是否启用自动流量控制(AFC)。

图5-16

Utrstadn (UART tx/rx状态寄存器)如图5-17所示。

接收缓冲数据就绪:当接收缓冲寄存器从UART接收端口接收到有效数据时,它将自动置位“1”。否则,“0”意味着缓冲区中没有数据。

发送缓冲区为空:当发送缓冲区寄存器为空时,自动置为“1”;反之,则表示缓冲区中有数据等待发送。

发送器空:当发送缓冲器中没有有效数据时,自动置“1”;反之,则表示仍有数据未发送。

图5-17

UERSTATN (UART错误状态寄存器)如图5-18所示。

超限错误:为“1”,表示发生了超限错误。

帧错误:是“1”。表示发生了帧错误。

图5-18

Ufstatn: (UART FIFO状态寄存器)如图5-19所示。

Rx FIFO计数:当前存储在接收FIFO中的字节数。

发送FIFO计数:当前存储在发送FIFO中的字节数。

Rx FIFO已满:“1”表示接收FIFO已满。

发送FIFO已满:“1”表示发送FIFO已满。

图5-19

Umstatn: (UART FIFO状态寄存器)如图5-20所示。

清除发送:“0”表示CTS无效;值“1”表示CTS有效。

Delta CTS:表示自从上一次CPU访问该位以来,nCTS的状态是否已经改变。

“0”表示没有变化;反之,则表示nCTS信号发生了变化。

图5-20

UTXHn和URXHn分别是UART发送和接收数据寄存器。

这两个寄存器存储发送和接收的数据。当然,8位数据只有一个字节。需要注意的是,发生溢出错误时,必须将接收到的数据读出,否则会造成下一次溢出错误。

Ubrdivn: (UART波特率分频器寄存器)如图5-21所示。

图5-21

UART波特率的计算方法在前面的内容中已经详细介绍过了,这里就不做多余的解释了。

总结:读写状态寄存器UTRSTAT和错误状态寄存器UERSTAT可以反映芯片当前的读写状态和错误类型。FIFO状态寄存器UFSTAT和MODEM状态寄存器UMSTAT,通过它们可以读取当前FIFO是否已满以及其中的字节数;通过后者,可以读出当前调制解调器的CTS状态。责任编辑;基线