admin管理员组

文章数量:1530871

2024年6月27日发(作者:)

RS232转RJ45

1.

RS232转RJ45的流控

RS232转RJ45转换器ZLAN2100是支持RS232流控和网口流控的高性能转换器。所谓流控即对数据流的速度进行控制,防止

接收方缓冲区满的时候发送方继续发送数据引起数据的丢失。RS232转网口中流控对于防止数据包丢失是相当重要的。

RS232转RJ45采用了不同的流控机制。RS232的流控分为无流控、软件流控、硬件流控。网口的流控一般采用TCP的窗口流

控机制。由于两种流控方式的不同,ZLAN2100在将RS232协议数据转换为网口协议数据的时候,也要进行流控方式的转换。

图1. RS232转RJ45转换器——ZLAN2100

RS232转RJ45的流控方式介绍如下:

1. 无流控:没有流控功能。

2. 软件流控:软件流控也称之为XON/XOFF流控,使用控制字符XON、XOFF来实现。在RS232数据通信过程中,如果发送方

收到XOFF字符则停止发送数据,反之如果收到XON字符则重新开始发送数据。XON一般定义为十六进制0x11,XOFF为十

六进制0x13。

3. 硬件流控:硬件流控又分为DSR/DTR流控和CTS/RTS流控。硬件流控是通过硬件的高低电平来通知发送方,接收方的缓

冲区是否快满了。CTS/RTS流控时,RS232(DB9)的8引脚为RTS,7引脚为CTS。DSR/DTR流控时,RS232(DB9)的6

引脚为DSR,4引脚为DTR。

网口流控方式:卓岚网口一般采用两种协议TCP协议和UDP协议。其中UDP协议是没有流控的,TCP协议采用窗口流控,即发

送方知道接收方的接收缓冲区大小,发送方从而不会发送超过接收方接收能力的数据量,接收方也会定期告诉发送方窗口大小的

变化。

ZLAN2100和ZLVircom相互配合实现RS232转RJ45的流控转化,例如当RS232给出硬件流控引脚高电平时(高电平表示开始

流控),ZLAN2100的内嵌TCP/IP协议栈自动通知TCP窗口减少;反之当TCP窗口减少时ZLAN2100自动设置硬件流控引脚高为高

电平。

2. RS232串口线与硬件流控

RS232串口线的接头分为公头和木头。另外有些RS232串口线是9芯的,有些只有GND、RXD、TXD这3芯。有些RS232串口线

是2、3交叉的(即RXD、TXD交叉),有些是不交叉的。要实现RS232的硬件流控必须采用9线的RS232串口线,否则硬件流控

信号无法传递过去。

3. 手动设置RS232转网口流控方式

用户可以根据实际需要手动设置ZLAN2100的流控方式,设置的方法是进入ZLVircom主界面的设备管理->对特定设备进行设

备编辑->进入设备设置对话框->选择串口流控参数。

4. RS232转网口的流控自适应

除了手动设置流控方式外,在使用虚拟串口时,为了能够实现ZLVircom软件对用户软件采用的流控方式的自动探测,必须启

用流控自适应。启用的方法是:进入zlvircom的菜单->“配置”->“软件配置”,弹出“vircom配置”对话框,将“选择需要自

使用的参数”中将“流控”打勾,默认情况下“流控”自适应功能是没有打勾的。

图2. vircom的流控配置

5. RS232转RJ45的手动控制硬件流控

在计算机的RS232(COM口)编程中,如果用户调用操作系统(例如windows的VC++环境下)底层的RTSEnalbe()函数可以手

动控制RTS引脚的电平,让其随时输出1或者0。该功能实际上可以作为IO口DOUT,即用该函数来直接控制一个IO输出引脚。

那么采用卓岚的ZLVircom虚拟串口驱动以后,用户打开虚拟串口COM5,同样可以用RTSEnalbe()来控制网口远端的ZLAN2100的

RS232口的RTS的电平。该功能属于较为高级的功能特性。 h

本文标签: 流控硬件发送接收