Linux环境下使用WIFI模块:使用IW工具配置和连接WIFI

使用IW工具配置和连接WIFI

实验版本

IW工具版本:iw-5.0.1
IW依赖库:libnl-3.2.25

安装包下载地址

iw :https://mirrors.edge.kernel.org/pub/software/network/iw/
libnl :http://www.infradead.org/~tgr/libnl/

安装libnl依赖库

解压下载好的libnl-3.2.25.tar.gzcd libnl-3.2.25/进入文件夹
在这里插入图片描述
配置./configure --host=arm-linux --prefix=$PWD/tmp,表示在arm主机上运行,生成的编译文件保存在当前文件夹下的tmp目录
然后依次运行makemake install

可以看到tmp目录下生成了这几个目录
在这里插入图片描述
如果不想在编译的时候加上- i- l 来指定链接库,我们需要把include目录下的所有文件放到自己交叉编译工具链下的include目录,lib目录也同理。

~/work/project/wifi/libnl-3.2.25/tmp/include/libnl3$ sudo cp netlink/ -rf /usr/local/arm/4.4.3/arm-none-linux-gnueabi/sys-root/usr/include/
~/work/project/wifi/libnl-3.2.25/tmp/lib$ sudo cp * -rf -d /usr/local/arm/4.4.3/arm-none-linux-gnueabi/sys-root/lib/

这边给出我的复制路径,大家根据自己的工具链调整。同时注意复制include目录的时候要到他的下一级目录,也就是netlink。
最后把lib下所有的 * so *文件复制到开发板的 /lib目录下

安装IW工具

解压下载好的iw-5.0.1.tar.gz

cd iw-5.0.1/
export PKG_CONFIG_PATH=/home/zyl/work/project/wifi/libnl3.2.25/tmp/lib/pkgconfig/:$PKG_CONFIG_PATH(就是libnl的安装路径下的 lib/)
make CC=arm-linux-gcc
make install

把生成的iw文件复制到开发板的/usr/bin/目录下。

测试IW工具

启动开发板接上WIFI模块。

  • iw list // 列出WIFI网卡的性能
  • ifconfig wlan0 up //启用wifi模块
  • iw dev wlan0 scan // 扫描可连接WIFI AP
  • iw wlan0 connect dswei // 连接到不加密的WIFI,WIFI名字为dswei
  • iw wlan0 connect dswei keys d:0:baiwenwang123 // 连接到WEP加密的WIFI,WIFI名为dswei,d: default, 0: 第0个密码
    连接成功以后可以在手机上看到有设备连接
    Linux环境下使用WIFI模块:使用IW工具配置和连接WIFI_第1张图片

你可能感兴趣的:(WIFI模块)