VxWorks 6.8和Windows间的UDP网络通信

概述

本文讨论了VxWorks 6.8和Windows间进行UDP网络通信的要点。

代码描述

在Windows端,我们运行了一个名为win_udpServer.ext的UDP服务器程序,由vxbus.com进行的代码设计。

在VxWorks6.8端, 我们设计了一个名为mkvxUdpClient.c的UDP客户端程序代码。

测试步骤

在windows端

打开命令行终端控制台,然后切换到win_udpServer.exe所在的目录,键入应用程序win_udpServer.exe的名称,请参见下图:

Windows上启动UDP 服务器端程序
Windows上启动UDP 服务器端程序

它将显示如何正确启动应用程序,在这里我们可以键入win_udpServer.exe 5002,请参见上图。

启动应用程序后,我们可以看到以下图片:

Windows上运行UDP 服务器端程序
Windows上运行UDP 服务器端程序

从上图可以看到Windows的IP地址为“192.168.128.240”。

在VxWorks 6.8端

在VxWorks 6.8的shell上,键入mkvxUdpClient“192.168.128.240”,如下图:

VxWorks 6.8上启动UDP 客户端程序
VxWorks 6.8上启动UDP 客户端程序

在windows端

我们可以看到VxWorks 6.8客户端不停向Windows服务器发送数据,请参见下图:

Windows上UDP 服务器端程序运行结果
Windows上UDP 服务器端程序运行结果

关键要点

在VxWorks上

为了接收和发送较大的数据缓冲区(例如每次10240字节),我们应扩大“默认套接字接收缓冲区大小”和“默认套接字发送缓冲区大小”的宏,此处我们将默认值更改为“ 10000” 到“ 200000”。

VxWorks Workbench 网络配置选项
VxWorks Workbench 网络配置选项

在Windows上

与VxWorks一样,我们应该扩大“ winUdpServer.c”程序的数据缓冲区。

并记住将“libwsock32.a”添加到项目选项的链接器中,请参见下图:

Windows编译选项
Windows编译选项