隨著網(wǎng)絡(luò)設(shè)備的增加,網(wǎng)絡(luò)的布線顯得十分復(fù)雜,為了解決這種矛盾,無(wú)線網(wǎng)卡應(yīng)運(yùn)而生。無(wú)線網(wǎng)卡以其無(wú)需布線、健康安全、長(zhǎng)距離工作等優(yōu)點(diǎn)得到廣泛應(yīng)用,然而,在嵌入式領(lǐng)域,由于受操作系統(tǒng)的限制,無(wú)線網(wǎng)卡被嵌入式系統(tǒng)拒之門外。英創(chuàng)公司經(jīng)過技術(shù)攻關(guān),突破了這一限制,使無(wú)線網(wǎng)卡在嵌入式領(lǐng)域得到方便應(yīng)用。但是,由于WinCE的硬件驅(qū)動(dòng)不像在臺(tái)式機(jī)機(jī)上安裝硬件驅(qū)動(dòng)那么方便,英創(chuàng)公司只提供支持特定型號(hào)——RT2870無(wú)線網(wǎng)卡的驅(qū)動(dòng)。
無(wú)線網(wǎng)卡RT2870是USB接口,如圖1所示,可以直接插在英創(chuàng)嵌入式主板的USB接口。RT2870也有板卡式產(chǎn)品,可以固定在底板上。RT2870插到嵌入式主板后,燈會(huì)一直閃爍,說(shuō)明RT2870工作正常。英創(chuàng)公司已經(jīng)把無(wú)線網(wǎng)卡的驅(qū)動(dòng)做到了內(nèi)核,用戶使用的時(shí)候,只需建立與AP節(jié)點(diǎn)的連接,就可以把嵌入式主板接入局域網(wǎng)。下面介紹基于英創(chuàng)嵌入式模塊通過無(wú)線網(wǎng)卡接入局域網(wǎng)的方法。
EM9000配置網(wǎng)卡IP地址等信息已經(jīng)在《基于WinCE的無(wú)線網(wǎng)卡應(yīng)用方案》中介紹過,本文主要介紹沒有WINCE標(biāo)準(zhǔn)界面的ARM9嵌入式主板(EM9160、EM9260、EM9360等)無(wú)線網(wǎng)卡的配置方法。
英創(chuàng)公司提供了登陸無(wú)線AP節(jié)點(diǎn)工具——WiFiConfig,其命令格式為:
WiFiConfig AP節(jié)點(diǎn)名 密碼
下面以EM9260為例詳細(xì)說(shuō)明:
把WiFiConfig.exe拷貝到Nandflash下,用telnet工具登錄開發(fā)板。并運(yùn)行WiFiConfig,注意,AP節(jié)點(diǎn)的名字要區(qū)分大小寫。連接成功后,運(yùn)行IPCONFIG命令,可以看到無(wú)線網(wǎng)卡的信息。由于無(wú)線網(wǎng)卡的ip地址為自動(dòng)獲得,所以,在局域網(wǎng)內(nèi),要有DHCP服務(wù)器。如果沒有DHCP服務(wù)器,無(wú)線網(wǎng)卡的ip地址為全0,接下來(lái)的文章將介紹通過軟件設(shè)置固定IP的方法,注意,無(wú)線網(wǎng)卡的名字為RT2870。
如果需要設(shè)置靜態(tài)IP地址等信息,可以通過程序更改配置。為了方便用戶使用,我們提供了NetIP.lib庫(kù),頭文件定義如下。
///////////////////////////////////////////////////////////////////////////////////////
// 功能描述:將IP地址字符串形式轉(zhuǎn)化為DWORD值,在NETWORK_ADPT_INFO中
// 需要代//入IP地址的DWORD值。
// 輸入參數(shù): IPAddressString: IP地址的字符串,如: _T(‘192.168.201.182’)
// 輸出參數(shù):IPAddressValue: IP地址的DWORD值。
// 返回值 = TRUE: 操作成功
// = FALSE: 操作失敗
///////////////////////////////////////////////////////////////////////////////////////
BOOL StringToIPAddr(TCHAR *IPAddressString, DWORD *IPAddressValue);
///////////////////////////////////////////////////////////////////////////////////////
// 功能描述:設(shè)置本地網(wǎng)絡(luò)適配器的相關(guān)參數(shù),包括IP、子網(wǎng)掩碼、網(wǎng)關(guān)等。
// 輸入?yún)?shù):pAdptInfo: 需要設(shè)置的NETWORK_ADPT_INFO結(jié)構(gòu)參數(shù)。
// 返回值 = TRUE: 操作成功
// = FALSE: 操作失敗
///////////////////////////////////////////////////////////////////////////////////////
BOOL SetNetWorkAdapterInfo(LPTSTR szAdapterName, PNETWORK_ADPT_INFO pAdptInfo );
根據(jù)頭文件中的API函數(shù),填充NETWORK_ADPT_INFO結(jié)構(gòu)體后,調(diào)用設(shè)置函數(shù)SetNetWorkAdapterInfo就可以把無(wú)線網(wǎng)卡的IP地址設(shè)置為靜態(tài)IP。具體示例如下:
NETWORK_ADPT_INFO AdptInfo;
TCHAR AdpName[30];
_tcscpy( AdpName, _T( ‘RT28701’ ) ); // 無(wú)線網(wǎng)卡名字為RT28701
AdptInfo.fUseDHCP=false; // 不使用DHCP
AdptInfo.szAdapterName=AdpName; // 網(wǎng)卡名字
StringToIPAddr( _T(‘192.168.201.193’), &AdptInfo.IPAddr ); // 網(wǎng)卡IP地址
StringToIPAddr(_T(‘192.168.201.19’), &AdptInfo.Gateway ); // 網(wǎng)關(guān)
StringToIPAddr(_T(‘255.255.255.0’), &AdptInfo.SubnetMask );// 子網(wǎng)掩碼
SetNetWorkAdapterInfo( AdpName, &AdptInfo ); // 設(shè)置生效
。
-
嵌入式主板
+關(guān)注
關(guān)注
7文章
6081瀏覽量
34936
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論