激情综合丁香-激情综合六月-激情综合婷婷亚洲图片-激情综合图区-激情综合网五月

WinCE平臺高速WiFi實現方法

 2018-4-19     作者:Emtronix         
文章標簽:C/C++WiFi

ETA6210簡介


  ETA6210是一款標準mini PCIe尺寸的WiFi通訊模塊,模塊核心芯片為NXP的iMX6UL和AP6181 WiFi芯片。ETA6210主要是與英創公司WINCE工控主板配套使用,實現高速WiFi通訊,模塊支持應用程序WinSock編程。英創工控主板是通過mini PCIe上的USB接口來操作ETA6210模塊的。在實際應用中,ETA6210是插在客戶底板的mini PCIe插座上使用。開發評估階段,可插在英創的ESMARC EVB評估底板的mini PCIe插座上使用,也可利用ETA303模塊轉換成標準USB接口使用。


eta6210 wifi模塊.png

ETA6210高速WiFi模塊


  ETA6210本身預裝有完整的操作系統,在上電后自動進行WiFi連接。并同時打開2路虛擬串口COM17、COM18與WINCE工控主板進行通信:COM17用AT指令進行參數設置,模塊控制等;COM18用于網絡數據傳輸。


  ETA6210網絡模式與常規WiFi模塊略有區別。ETA6210直接連入WiFi網絡,同時作為路由器接受嵌入式主板的連接。ETA6210將WiFi網絡中的數據直接傳給嵌入式主板,所以對于嵌入式主板而言,與直接連入WiFi網絡沒有區別,只是無法直接調用API函數獲得WiFi網絡中的IP、掩碼、網關,而是需要通過AT指令訪問ETA6210獲得。


  連接到WiFi網絡后,可以使用SOCKET編程訪問網絡。


安裝


  對英創ESMARC主板,ETA6210可直接插入到英創ESMARC 評估底板上的mini PCIe插座,就可進行操作。連接形式如下圖所示:


WinCE平臺高速WiFi實現方法.png

ESMARC底板 + ESM6802 + ETA6210


  對其他主板,則可以通過ETA303模塊轉接標準USB接口上使用。


eta303正面.png

ETA6210 + ETA303


  英創工控主板將在最新內核中支持ETA6210,用戶可以接上主板后直接使用。使用原內核的客戶可以聯系英創工程師獲得ETA6210驅動安裝程序。


ETA6210的AT指令簡介


  ETA6210具有自動管理WiFi連接功能的模塊,其內部USB接口可響應WINCE 主控板的訪問。在英創的產品中,將USB連接的接口映射為兩個串口,一個用于發送AT指令,一個用于支持PPP撥號連接。


  ETA6210支持的AT指令格式必須以AT大寫作為開頭,并加上’\r’作為結束符,如:“AT\r”,以下為各個AT指令的響應及相應的參數說明。


指令描述
AT測試AT啟動
AT+LINK?查詢WiFi連接狀態,響應為 +LINK:UP/OFF
AT+IP?查詢WiFi的IP地址,響應為 +IP: string
AT+IP=...設置WiFi的IP地址,參數為IP地址
AT+GW?查詢WiFi的網關地址,響應為 +GW: string
AT+GW=...設置WiFi的網關地址,參數為地址
AT+NETMASK?查詢WiFi的子網掩碼,響應為 +NETMASK: string
AT+NETMASK=設置WiFi的子網掩碼,參數為地址
AT+SSID?查詢WiFi的SSID,響應為 +SSID:string
AT+SSID=….設置WiFi的SSID,參數為SSID string
AT+PSK=….設置WiFi的密碼,參數為密碼 string
AT+CSQ?查詢WiFi的信號強度,響應為 +CSQ:Number
AT+CNT啟動WiFi的連接
AT+DNT斷開WiFi的連接
AT+RST重啟ETA6210模塊


使用方法


  為了方便客戶的使用,英創的WINCE工控板卡在系統內部放置了兩個工具程序: RASEntry.exe和wt.exe,其中RAREntry.exe用于自動創建基于ETA6210的撥號連接,wt.exe用于對于ETA6210模塊進行WiFi的參數配置和基本的測試。這個兩個程序的運行可以通過telnet登錄連接到英創的WINCE工控板,可以在命令提示行下運行。


  以下介紹在ETA6210在英創的WINCE工控板上的使用方法,這里以ESM6802作為WINCE主控板。


網絡連接


  1、運行RASEntry.exe建立撥號連接,該程序目前設置的缺省狀態是建立ETA6210的連接。


WinCE平臺高速WiFi實現方法.png


  此時在ESM6802的界面上可以看到建立成功的ETA6210連接。


WinCE平臺高速WiFi實現方法.png


  RASEntry.exe一般只需要運行一次。


  2、運行wt.exe配置ETA6210 WiFi參數。

  wt.exe共支持9個命令,可以直接運行wt獲取這個9個命令的相關幫助和說明。


WinCE平臺高速WiFi實現方法.png


  配置WiFi參數可以通過 “wt -c”來實現,可通過一個文本文件來配置ETA6210 WiFi的SSID和密碼,這個文本文件的格式如下:

  [WIFI]

  SSID="Emtronix.20"

  PSK="0987654321"


  這部分內容可以獨立保存為一個txt文件,也可以增加到英創板卡使用的userinfo.txt文件中,這里是將以上內容保存為一個eta6210.txt的文件,并放置到ESM6802的\EDISK目錄下。


  運行 \>wt -c \EDISK\eta6210.txt


WinCE平臺高速WiFi實現方法.png


  將WiFi的SSID和相應的密碼設置成功。對于在一個確定的WiFi環境下,該命令只需執行一次即可。


  WiFi參數配置成功后,可調用 “wt -l” 來檢查WiFi的連接狀態,如果處于link up的狀態,即可進行后一步的撥號連接了。


WinCE平臺高速WiFi實現方法.png


  運行 “wt -i” 、“wt -g” 可以獲得WiFi模塊的IP地址以及網關地址。


  3、撥號連接。

  撥號的方式有兩種,一種為手動模式,可以用于測試;一種是通過程序來實現。

  手動方式可在ESM6802的顯示界面上雙擊ETA6210連接,即可實現WiFi模塊的自動連接。


WinCE平臺高速WiFi實現方法.png


  程序實現的方式根據所建立的連接名稱(ETA6210),直接調用標準的撥號函數RasDial(…)即可,在wt工具程序中,我們提供了撥號功能以及相應的掛斷功能。


  撥號連接:“wt -d”, 撥號之前建議先檢查WiFi的連接狀態,WiFi處于UP狀態才進行撥號操作。


WinCE平臺高速WiFi實現方法.png


  掛斷撥號:執行“wt -h”即可掛斷當前連接。


WinCE平臺高速WiFi實現方法.png


  以下為撥號連接和掛斷連接的部分代碼:


HRASCONN Dial( )
{
    DWORD                     dwRet = 0;
    RASDIALPARAMS     RasDialParams;
    DWORD                     dwSize;
    HRASCONN        hRasConn=0;
 
    dwSize = sizeof(RASDIALPARAMS);
    ZeroMemory(&RasDialParams, dwSize); 
    memset ((char *)&RasDialParams, 0, sizeof(RasDialParams));
    RasDialParams.dwSize = sizeof(RasDialParams);
 
    wcscpy(RasDialParams.szEntryName, L"ETA6210"); 
    wcscpy(RasDialParams.szPhoneNumber, L""); 
    wcscpy(RasDialParams.szUserName, L"");  
    wcscpy(RasDialParams.szPassword,L"");
 
    dwRet = RasDial( NULL, NULL, &RasDialParams, NULL, NULL, &hRasConn);
    if( dwRet == 0 )
       {
              wprintf( L"%s RasDial successful, hRasConn = 0x%08X\r\n", RasDialParams.szEntryName, hRasConn);
              SavehRasConn( hRasConn );
              return hRasConn;
       }
    else if( hRasConn ) 
              RasHangUp(hRasConn);
       return NULL;
}
 
BOOL HangUpDial( )
{
         HRASCONN  hRasConn=0;
       
         hRasConn = ReadhRasConn( );
         if( hRasConn )
         {
                wprintf( L"%s RasHangUp, hRasConn = 0x%08X\r\n", L"ETA6210", hRasConn);
                if(hRasConn) 
RasHangUp(hRasConn);
                DeleteFile(  _T("\\hRasconn.bin") );
                return TRUE;
          }
          else
          {
           wprintf( L"No Ras connection\r\n");
                 return FALSE;
          }
}


網絡測試


  ETA6210連接成功后,可以運行ipconfig來查看網絡參數:


WinCE平臺高速WiFi實現方法.png


  這里我們看到ETA6210 WiFi的IP地址為“192.168.1.2”,這個地址ETA6210 WiFi模塊內部網絡的一個固定IP,并不是真正代表了通過WiFi接入網絡的IP地址,對外真正的IP是通過AT指令來獲取的。在本文上面介紹中ETA6210 WiFi 連接成功后,獲取到的IP地址為:192.168.201.102,網關地址為:192.168.201.20。


WinCE平臺高速WiFi實現方法.png


  從上圖中可以看到在ENET1、ENET2均斷開的情況下,可以通過ping 網關地址來測試該網絡的通訊。同時也可以反過來通過telnet登錄“192.168.201.102”,顯示是連入到ESM6802上的。


WinCE平臺高速WiFi實現方法.png


  英創可提供了RASEntry和wt這個兩個程序源代碼,客戶可以參考其中相關部分放入到自己的應用程序中,有需要的客戶可以聯系英創工程師獲得。

文章標簽:C/C++WiFi
主站蜘蛛池模板: 色开心婷婷| 日韩在线视频免费看| 国产不卡的一区二区三区四区| 精品国产品国语在线不卡丶 | 动漫精品专区一区二区三区不卡| 欧美黄色a| 国产啪精品视频网给免丝袜 | 欧美精品一级毛片| 国产精品久久久久天天影视| 激情专区| 国产成人精品一区二区视频| 久久精品国产线看观看亚洲| 色综合手机在线| 野外啪啪抽搐一进一出| 二级黄色大片| 日本xxxx18高清免费| 毛片视频免费网站| 成年人毛片| 免费看成人国产一区二区三区| 国产成人高清一区二区私人| 香蕉啪啪网| 黄色在线观看网址| 91短视频在线观看| 国产精品入口麻豆免费看| 久久经典免费视频| 免费观看国产视频| 人碰人人| 日韩2区| 亚洲国产系列| 亚洲欧美日韩在线观看你懂的| 91约啪| 91久久免费视频| 一区二区三区无码高清视频 | 日韩欧美一区二区不卡| 亚洲欧美日韩国产精品久久| 7m凹凸国产刺激在线视频| 91精品福利在线| 91最懂男人的午夜社区| 99久久99久久精品国产片果冻| 一级黄色片aaa| 九九涩|