1、簡述
這里先簡單介紹下英創公司現有的Linux產品系列,大致分為三個系列的產品:
產品系列 | 產品型號 | CPU | 內核版本 |
EM9X60 |
EM9160 / EM9460 EM9260 EM9360 EM9660 |
ATMEL AT91SAM9260 (200MHz) | Linux-2.6.30 |
EM928x |
EM9280 EM9281 EM9287 |
FreeScale iMX283/iMX287 (454MHz) | Linux-3.9.7 |
EM335x |
EM335x EM3352 |
Cortex-A8 AM3354 (1GHz) Cortex-A8 AM3352 (600MHz) |
Linux-3.12.10 |
Wi-Fi無線網絡短距離數據傳輸以其無需布線、數據傳輸速度快等優勢,在工業應用中越來越普及。針對這類的應用我們公司已經在EM9X60、EM928x、EM335X等系列Linux嵌入式板卡板卡上移植了基于rt2870sta、rt3070sta、rt5370sta、rt5572sta的無線網絡驅動,并在應用產品的開發中得以應用。
無線網卡rt3070還有一種驅動工作模式為SoftAP,即可以支持無線模塊工作在軟AP模式下,可以作為一個軟接入點。針對這類的應用,我們在公司Linux嵌入式系列板卡上做了相應的移植,實現AP熱點功能。
在實際應用中,若設備物理安放位置滿足WiFi的信號傳輸條件,則可利用AP熱點功能,方便地實現設備間的數據通訊,代替RS485、CAN等現場總線,大幅度降低系統布線的成本。
本文將介紹 rt3070 SoftAP驅動在EM9281產品上的移植和應用。無線模塊選擇了目前市面上性價比較高的B-LINK公司的BL-LW05-H模塊。
2、rt3070 SoftAP移植
rt3070 SoftAP的移植過程:
1、下載驅動文件:2010_0203_RT3070_SoftAP_v2.4.0.1_DPA.bz2
2、解壓后,分別修改MODULE、UTIL、NETIP三個目錄下的Makefile 以及os/linux/config.mk文件配置。
LINUX_SRC = /home/hl/em9280/linux-3.9.7
CROSS_COMPILE = arm-none-linux-gnueabi-
3、編譯make
編譯成功后,將在MODULE、UTIL、NETIP三個目錄下分別生成三個可加載模塊:rt3070ap.ko、rtutil3070ap.ko、rtnet3070ap.ko,將這三個文件復制到EM9281根文件系統中/lib/modules/3.9.7/下,同時把rt2870ap.dat文件復制到/etc/Wireless/RT2870AP/目錄下。
至此rt3070 SoftAP的驅動移植完成。
3、rt3070 AP的應用
Linux嵌入式板卡啟動完成后,可通過insmod命令來加載rt3070ap的驅動,這里我們編輯了一個腳本文件來自動加載和配置rt3070 AP的應用,腳本文件ap.sh內容如下:
#!/bin/sh
insmod /lib/modules/3.9.7/rtutil3070ap.ko
insmod /lib/modules/3.9.7/rt3070ap.ko
insmod /lib/modules/3.9.7/rtnet3070ap.ko
ifconfig ra0 up
ifconfig ra0 192.168.1.1
udhcpd /mnt/nandflash/udhcpd.conf
其中的udhcpd.conf用于配置AP接入點可分配的網段ip區域。
[root@EM9280 /]#./mnt/nandflash/ap.sh
[ 24.518019] rtusb init --->
[ 24.527379]
[ 24.527379]
[ 24.527379] === pAd = c8d22000, size = 417992 ===
[ 24.527379]
[ 24.538208] <-- RTMPAllocAdapterBlock, Status=0
[ 24.556368] usbcore: registered new interface driver rt2870
[ 25.105709] <-- RTMPAllocTxRxRingMemory, Status=0
[ 25.114482] -->RTUSBVenderReset
[ 25.117869] <--RTUSBVenderReset
[ 25.688699] Key1Str is Invalid key length(0) or Type(0)
[ 25.694479] Key2Str is Invalid key length(0) or Type(0)
[ 25.700364] Key3Str is Invalid key length(0) or Type(0)
[ 25.706197] Key4Str is Invalid key length(0) or Type(0)
[ 25.721043] 1. Phy Mode = 9
[ 25.723866] 2. Phy Mode = 9
[ 25.726670] NVM is Efuse and its size =2d[2d0-2fc]
[ 25.878998] 3. Phy Mode = 9
[ 25.964389] MCS Set = ff 00 00 00 01
[ 26.022838] SYNC - BBP R4 to 20MHz.l
[ 26.345731] SYNC - BBP R4 to 20MHz.l
[ 26.675462] SYNC - BBP R4 to 20MHz.l
[ 27.005730] SYNC - BBP R4 to 20MHz.l
[ 27.335732] SYNC - BBP R4 to 20MHz.l
[ 27.665994] SYNC - BBP R4 to 20MHz.l
[ 27.995606] SYNC - BBP R4 to 20MHz.l
[ 28.325587] SYNC - BBP R4 to 20MHz.l
[ 29.081255] Main bssid = 48:02:2a:40:2e:c5
[ 29.085390] <==== rt28xx_init, Status=0
[ 29.092623] 0x1300 = 00064320
至此,一個默認網絡名為RT2860AP的網絡就建立起來了,我們可以通過手機加入此接入點。
對實際的工控設備來說,只要加入此接入點,就可按照標準的socket方式,與其他設備進行數據通訊了。
-
Linux
+關注
關注
87文章
11500瀏覽量
213358 -
嵌入式主板
+關注
關注
7文章
6100瀏覽量
36239
發布評論請先 登錄
科普|信創是什么?一文讀懂“信息技術應用創新”戰略

龍芯主板是安全可信基石,可守護信息資產
信息安全管理必備!Linux系統使用SSH登錄root賬號的方法

龍芯中科榮獲2024年度信息技術應用創新工作委員會卓越貢獻成員單位
芯盛智能榮獲2024年信息技術應用創新工作委員會卓越貢獻成員單位
飛騰助力首屆教育信息技術應用創新大賽圓滿落幕
有方科技參編的信息技術團體標準發布
龍芯中科助力2024首屆教育信息技術應用創新大賽成功舉辦
中科創達榮獲2024年軟件和信息技術服務優秀企業
易智瑞榮獲“信息技術應用創新工作委員會技術活動單位”

評論