ARM开发板使用USB WIFI模块实现上网

您所在的位置:网站首页 周润发没孩子吗知乎 ARM开发板使用USB WIFI模块实现上网

ARM开发板使用USB WIFI模块实现上网

2024-06-10 19:52| 来源: 网络整理| 查看: 265

一、搭建环境

        1)软件环境:VMware15 + Ubuntu16.04

        2)硬件模块:GEC6818开发板 + 雷凌RT3070USBWIFI模块

        3)所有资料下载链接:资料下载:提取码:ixl3 

二、编译 USB WIFI模块驱动

        1)先编译 GEC6818 开发板的内核源码,需要注意的是编译内核的时候需要选中如下选项,否则编译USBWIFI模块驱动会失败:

        2)根据USBWIFI模块型号选择对应的源码,当前选择源码版本:2011_0719_RT3070_RT8070_RT3370_RT5370_RT5372_RT2070_Linux_STA_V2.5.0.3_DPO.tar.bz2。本次是使用WIFI模块去连接别的WIFI,因此选择带有 STA 字样的源码,注意区分 AP、STA 、APSTA 这三种类型。

        3)解压源码之后查看相关的说明文档 README_STA_usb 文件。

                步骤一:进入源码。

                步骤二:修改 Makefilen 中 MODE=STA ,TARGET=LINUX,以及修改相应Linux内核源码路径。

                步骤三:修改 os/linux/config.mk 文件 中的 HAS_WPA_SUPPLICANT 和 HAS_NATIVE_WPA_SUPPLICANT_SUPPORT 值。

             4)Makefile 修改如下:

   

         5)os/linux/config.mk 修改如下:

         6)编译驱动

                执行编译命令:make ARCH=arm KBUILD_NOPEDANTIC=1 ,如果提示缺少头文件之类的,可以设置 export C_INCLUDE_PATH 的值进行指定对应头文件路径等。最后生成 ko 文件路径如下:

        可以使用对应交叉工具链中的 strip 工具去除 ko 文件中多余信息进行缩小 ko 文件的大小,具体如下:

三、交叉编译 wireless_tools 

        1)说明:wireless_tools 是一种Linux下的开源的无线管理软件,他提供了建立无线连接的基础工具。相关命令可以网上搜索即可。源码下载链接如下:wireless_tools下载

        2)修改 Makefile 源码,指定相关交叉编译器路径以及安装路径即可,具体如下:

        3)编译以及安装

                make

                make install

                提示:可能提示缺少头文件如:iwlib.h:20:23: fatal error: sys/types.h: No such file or directory 。

                解决办法:export C_INCLUDE_PATH=$C_INCLUDE_PATH:/usr/local/arm/arm-2009q3/arm-none-linux-gnueabi/libc/usr/include/ ,其实就是设置交叉工具链中的相关头文件为环境变量。

        4)查看编译安装成果

四、交叉编译 wpa_supplicant

        1)交叉编译 wpa_supplicant 还需要交叉编译 openssl ,下载链接如下:

openssl 下载链接 ,wpa_supplicant 下载链接。

        2)交叉编译 openssl,将两个包解压后,需要为opensll打上wpa的补丁:cp wpa_supplicant-0.7.3/patches/openssl-0.9.8e-tls-extensions.patch openssl-0.9.8e/ 。然后参考 openssl 交叉编译动态库 交叉编译出动态库。最后编译得到的结果如下:

       3)出现的问题以及解决办法如下:

        4)交叉编译 wpa_supplicant ,cd 进入 wpa_supplicant-0.7.3/wpa_supplicant 路径执行以下命令:cp defconfig .config 和 vim .config 进行修改,具体如下:

        主要是修改交叉编译工具,以及指定之前编译安装好的 openssl 头文件以及库文件。之后修改 Makefile 如下:

        make 编译之后得到如下结果:

        将 wpa_supplicant 和配置文件 wpa_supplicant.conf 下载到开发板中,wpa_supplicant替换掉原本开发板 /usr/sbin/ 目录或者是 /bin 目录下的 wpa_supplicant,wpa_supplicant.conf放在/etc目录下,在 wpa_supplicant.conf 最后编辑 network ,并且删除其他 network 选项,具体如下:

五、开发板测试

        1)将之前编译的 rt5370sta.ko 、iw开头的执行文件、openssl库文件、wpa_supplicanty以及wpa_supplicant.conf 文件拷贝到开发板相关路径。

        2)具体执行可以参考 "USBWIFI目标文件" 文件夹中 操作步骤.txt 文件即可。

        3)ping www.baidu.com 测试是否成功,结果如下:

  

六、参考链接

        usb wifi模块 RT3070移植



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3