开发板上电自动连接 WiFi

开发板自动连接 wifi 配置

#技术笔记#

按照 WiF i模块要求连接合适的天线,选择相应的路由器。

由于现有的开发板上电没有 wifi 网口,所以需要先修改配置,加载 wifi 驱动模块。

若上电通过 ifconfig 命令可查看到WiFi网口,可自动跳过加载驱动模块。

1.加载WiFi驱动模块

修改配置参数文件,自定义和配置 wifi 模块的参数和行为,这个配置文件通常包含了一些设备的特定参数,用于初始化和配置驱动程序:

vi /lib/firmware/nxp/wifi_mod_para.conf

SDIW612={

cfg80211_wext=0xf   //指定使用的内核 API 类型,在这里是 cfg80211,对应的值为 0xf

wfd_name=p2p     //指定 WiFi Direct(P2P)的名称

max_vir_bss=1    //指定最大的虚拟基础设施数目

cal_data_cfg=none  //指定校准数据的配置方式,这里设置为 none 表示没有校准数据配置

drv_mode=7     //指定驱动模式,在这里设置为 7,具体的含义需要参考厂商的文档来确定

fw_name=nxp/sduart_nw61x_v1.bin.se  //指定固件的名称,用于驱动该 WiFi 模块

}

使用modprode命令加载驱动,modprobe 命令用于动态加载 Linux 内核模块,它会在指定的模块路径中查找并加载对应的模块。

modprobe moal mod_para=nxp/wifi_mod_para.conf

modprobe moal:这部分是调用 Linux 内核的 modprobe 命令加载 moal 模块。mod_para=nxp/wifi_mod_para.conf:这部分是通过命令参数传递给 moal 模块的配置参数。它告诉 moal 模块要使用的配置文件路径是 nxp/wifi_mod_para.conf

使用 ifconfig -a 就可以看到已加载的网络接口。

2.wifi 连接配置

为了方便后续实现开机自启动连接 wifi ,将连接 wifi 使用的命令写进 wifi.sh 脚本中。脚本如下:

#!/bin/sh

#这里的<wifi interface>即为你所使用的无线网络接口,打开WiFi接口

ifconfig <wifi interface> up  

#生成一个包含网络名称和密码的 WPA-PSK 配置文件
wpa_passphrase <your wifi ssid> <password> > wpa_supplicant.conf

#杀死之前的 wpa_supplicant 进程
killall wpa_supplicant

systemctl start wpa_supplicant

#通过 wpa_supplicant 工具启动 WiFi 连接
wpa_supplicant -B -i <wifi interface> -c/etc/wpa_supplicant.conf

#杀死之前的 DHCP 进程
killall udhcpc 

#启动 DHCP 自动分配 ip 地址
udhcpc -b -i <wifi interface>

#如果系统中没有udhcpc命令,可以尝试手动配置static ip
#ifconfig <wifi interface> <ip> //注意配置的IP应与连接的路由器处于同一网段

 赋予脚本可执行权限:

sudo chmod +x  /root/wifi.sh    //此处的 /root/wifi.sh 应替换成你实际编写的 wifi.sh 脚本位置

 

3.自动连接配置

修改 /etc/rc.local 自启动文件,将加载驱动命令和可执行 wifi.sh 脚本添加到 rc.local 文件中,保存重新启动即可看到 wifi 已经自动连接。

修改文件命令如下:

sudo vi  /etc/rc.local

exit 0 行之前添加以下命令:

modprobe moal mod_para=nxp/wifi_mod_para.conf

/root/wifi.sh &

将开发板掉电重启,使用 ping 命令 ping 路由器 ip ,可以发现 wifi 已经自动连接。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

童话喵

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值