4.1 测试步骤
调用函数 OpenWiMinetShell 打开通讯端口,确保操作成功
调用函数GetModuleVersion 读取固件的版本函数,如果可以正确读取版本号码,就说明通讯端口打开是正确的,和设备的连接是正常的。
使用本手册中的其他函数,展开测试和集成工作。
4.2 **个程序“Hello World”
#include <stdio.h>
#include <Winsock2.h>
#include "API-WiMinet.h"
int main( int argc, char* argv[] )
{
char iRetVal;
VersionInfo version;
// COM port interface
iRetVal = OpenWiMinetShell( "COM3",115200, 0X01 );
// Ethernet interface
//iRetVal = OpenWiMinetShell( "192.168.0.240",12580, 0X01 );
// Validate the shell open interface
if ( !iRetVal )
{
printf( "Open shell failed!\r\n" );
return 0X00;
}
// Get the module firmware version
iRetVal = GetModuleVersion(0X00, &version);
// Validate the operation status
if ( !iRetVal )
{
printf( "GetModuleVersion failed!\r\n" );
}
// The version information
printf( "Size=%d Bytes\r\n", ntohl( version.m_dwInfoSize ) );
printf( "Major=%d\r\n", version.m_dwMajorVersion );
printf( "Minor=%d\r\n", version.m_dwMinorVersion );
printf( "Build=%d\r\n", version.m_dwBuildNumber );
printf( "Platform=0X%08lX\r\n", version.m_dwPlatformId );
printf( "Description=%s\r\n\r\n", version.m_pVersion );
return 0X01;
}
4.3 运行结果与分析

该程序首先打开串口或者网口,建立和设备的连接。在确保连接成功之后,读取设备的固件版本信息,并打印出版本信息的各个字段,具体详见下面各个字段的定义。
版本信息的结构体定义
// -----------------------------------------------------------------------------
// DESCRIPTION:
// -----------------------------------------------------------------------------
typedef struct _VersionInfo
{
// --------------------------------------------------------------------------
// DESCRIPTION: 结构体的长度
// --------------------------------------------------------------------------
unsigned long m_dwInfoSize;
// --------------------------------------------------------------------------
// DESCRIPTION: 主要版本号码
// --------------------------------------------------------------------------
unsigned long m_dwMajorVersion;
// --------------------------------------------------------------------------
// DESCRIPTION: 次要版本号码
// --------------------------------------------------------------------------
unsigned long m_dwMinorVersion;
// --------------------------------------------------------------------------
// DESCRIPTION: 编译号码
// --------------------------------------------------------------------------
unsigned long m_dwBuildNumber;
// --------------------------------------------------------------------------
// DESCRIPTION: 处理器的平台号码,0X00=8051, 0X01=ARM
// --------------------------------------------------------------------------
unsigned long m_dwPlatformId;
// --------------------------------------------------------------------------
// DESCRIPTION:
// --------------------------------------------------------------------------
char m_pVersion[0X40];
} VersionInfo;