Wi-Fi無線網(wǎng)絡(luò)短距離數(shù)據(jù)傳輸以其無需布線、數(shù)據(jù)傳輸速度快等優(yōu)勢,在工業(yè)應(yīng)用中越來越普及。針對這類的應(yīng)用我們公司前段時間在EM9160、EM9260、EM9280等系列Linux嵌入式板卡板卡上移植了基于RT73的無線網(wǎng)絡(luò)驅(qū)動。
由于rt73芯片的諸多因素,目前市面上支持rt73的Wi-Fi無線模塊很難購買,根據(jù)這種情況,我們選擇了基于RT3070_RT5370芯片的無線上網(wǎng)模塊,對其Linux驅(qū)動進行了移植。RT3070_RT5370的Linux驅(qū)動在http://www.mediatek.com/可以直接進行下載,下載的最新驅(qū)動文件:
DPO_RT5572_LinuxSTA_2.6.1.3_20121022.tar.bz2
解壓之后獲得驅(qū)動源代碼,我們將RT3070_RT5370的驅(qū)動做成一個可加載的模塊rt3070sta.ko移植到工控主板中。EM9160和EM9260將驅(qū)動模塊放在根文件系統(tǒng)的目錄/lib/modules/2.6.30下,EM9280將驅(qū)動模塊放在/lib/modules/3.9.7下,客戶使用時只需調(diào)用Linux標(biāo)準(zhǔn)命令insmod進行加載。
移植工作還有一部分,因為Linux內(nèi)核中的wireless_tools工具不支持WPA認(rèn)證,而現(xiàn)在的無線Wi-Fi網(wǎng)絡(luò)大多是WPA加密,所以需要移植wpa_supplicant工具,目標(biāo)板上通過運行該工具軟件來激活無線網(wǎng)卡。
wpa_supplicant工具分為兩個部分,一個是可執(zhí)行程序wpa_supplicant,大小近2M左右,該文件直接放在根文件系統(tǒng)/usr/bin中,以方便客戶操作。
wpa_supplicant工具還有一個很重要的部分,wpa_supplicant運行時所需要的配置文件wpa_supplicant.conf,通過wpa_supplicant.conf配置文件,可以修改一些基本屬性,這里客戶需要了解的是連接Wi-Fi的名稱ssid和驗證的密碼psk。我們將設(shè)置好的一個示例配置文件放在目錄/etc下,客戶可將示例配置文件復(fù)制到/mnt/nandflash中修改成自己需要的配置。
下面就以目前市面上性價比較高基于RT3070_RT5370芯片的B-LINK公司的BL-LW05-H模塊為例,介紹英利嵌入式Linux工控主板連接無線Wi-Fi的具體方法??蛻粢部勺孕羞x擇基于RT3070_RT5370芯片的其他無線上網(wǎng)模塊進行開發(fā)。
1、首先需要設(shè)置wpa_supplicant的配置文件wpa_supplicant.conf。該示例配置文件在目錄/etc下。
建議客戶先把示例文件復(fù)制到/mnt/nandflash中,再進行設(shè)置。如果出錯還能在/etc中找到示例配置文件:
[root@EM9X60 /]#cp /etc/wpa_supplicant.conf /mnt/nandflash/.
復(fù)制成功以后,進入VI模式編輯wpa_supplicant.conf:
[root@EM9X60 /]#vi /mnt/nandflash/wpa_supplicant.conf
進入vi模式可以看見wpa_supplicant.conf的配置,按“i”切換到插入模式進行編輯,客戶只需修改其中的兩項:
ssid=” ” //填入需要連接的Wi-Fi名稱
psk=” ” //填入連接Wi-Fi的密碼
修改完成以后,按“ESC”進入命令行模式,并在底行輸入“:wq”(存盤退出),這樣就設(shè)置完成。
2、加載無線模塊的驅(qū)動:
[root@EM9X60 /]#insmod /lib/modules/2.6.30/rt3070sta.ko
加載成功之后,通過USB接口接入無線模塊系統(tǒng)能檢測到無線模塊。
3、啟動無線網(wǎng)卡:
[root@EM9X60 /]#ifconfig ra0 up
4、調(diào)用wpa_supplicant連接無線網(wǎng):
[root@EM9X60/]#wpa_supplicant -B -Dwext -ira0 -c /mnt/nandflash/wpa_supplicant.conf -d
參數(shù)說明:
-B 指定以守護進程模式運行,即程序?qū)⒁院笈_模式運行。連接Wi-Fi需要supplicant一直運行,所以采用后臺模式,不會影響客戶其他程序的運行。
-D 指定使用的驅(qū)動,這里是無線網(wǎng),所以用wext。
-i 指定網(wǎng)卡。
-c 指定使用的配置文件,這里是我們之前設(shè)置好放在/mnt/nandflash中的配置文件。
-d 添加調(diào)試信息。
這條指令調(diào)用成功之后,工控主板將成功連接上在supplicant.conf中設(shè)置的Wi-Fi。
5、成功連接上Wi-Fi之后,可以輸入指令自動獲取動態(tài)IP:
[root@EM9X60 /]#udhcpc –i ra0
至此已經(jīng)成功使用英利嵌入式Linux工控主板連接無線Wi-Fi。
-
Linux
+關(guān)注
關(guān)注
87文章
11342瀏覽量
210222 -
wi-fi
+關(guān)注
關(guān)注
14文章
2169瀏覽量
124876 -
嵌入式主板
+關(guān)注
關(guān)注
7文章
6086瀏覽量
35545
發(fā)布評論請先 登錄
相關(guān)推薦
評論