Wi-Fi功能启用说明
1. Kernel使用配置¶
-
Spinand flash
make infinity2m_ssc011a_s01a_minigui_defconfig make menuconfig
进入
Networking support -> Wireless
,将下面选项由模块编译改为build-in
进入
Device Drivers->Generic Driver options
,将下面选项编译方式改为build-in
-
Nor flash
make infinity2m_ssc011a_s01a_minigui_defconfig make menuconfig
进入
Networking support -> Wireless
,将下面选项由模块编译改为build-in
2. 编译kernel¶
make clean –j16;make –j16
编译成功后会生成 kernel/arch/arm/uImage.xz
, 将此文件拷贝到sdk中,替换掉同名文件。
Spinand的目标路径为:project/release/nvr/i2m/011A/glibc/8.2.1/bin/kernel/spinand
Nor的目标路径为:project/release/nvr/i2m/011A/glibc/8.2.1/bin/kernel/
修改Sdk配置,在 project/release/customer_tailor/nvr_i2m_display_glibc_tailor.mk
下添加interface_wlan:=enable
,然后编译sdk即可。
3. 测试wifi¶
修改/appconfigs/wpa_supplicant.conf
,添加AP,如图:
测试的热点ssid为”SKY”,访问密码为”12345678”。
-
wifi模块初始化
cd /config/wifi ./ssw01bDeInit.sh export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib:/lib:/config/wifi
如果使用其它
wifi ko
,只需将对应ko 拷贝至/config/wifi
目录,然后修改ssw01bInit.sh
,insmod
依赖的ko即可。 -
测试wifi连接
./wpa_supplicant -Dnl80211 -i wlan0 -c /appconfigs/wpa_supplicant.conf -d & sleep 2 udhcpc -q -i wlan0 -s /etc/init.d/udhcpc.script &
-
扫描热点:
./iwlist wlan0 scanning
4. Wifi应用样例¶
Source code:
详见附件wifiDemo.rar
测试步骤:
-
修改sample code,添加指定的wifi热点信息,如图:
-
修改Makefile中的
PROJECT_PATH
,使用本地的sdk路径,然后编译demo code: -
将生成的testWifi拷贝到目标板中,运行
testWifi
App运行后会出现下面的提示
输入‘m‘, 切换STA/AP模式,默认是STA模式;
用户可在code里面预设需要连接的wifi热点列表,输入’a’,切换到列表中的下一个热点,默认从0开始循环;
输入‘n’,在STA模式下连接指定的wifi,在AP模式下,打开个人热点;
输入‘d’,在STA模式下断开连接,在AP模式下,关闭个人热点;
输入‘p’,在STA模式下打印当前扫描到的热点信息,在AP模式下,打印连接的设备信息;
输入‘q’,退出app。