前言
RTL8XXXXX 定频工具移植编译,用于wifi模块认证配置WiFi工作在定频模式下。
一、rtl8xxxx的WiFi内核配置
1.使用说明: | ||||||||
1.先确认driver\rtl8XXXXX下的Makefile中的 | ||||||||
CONFIG_MP_INCLUDED 是否等于 y,不等于y,需修改后重新make重新编译驱动生成 .ko文件 | ||||||||
2.测试时需等系统正常运行并加载WIFI驱动后再按以下命令进行测试. | ||||||||
3.本文档是参考 Realtek_RF_MP_Tool_Guidelines_V14_20150605 整理的; | ||||||||
4.各指令的含义可以参考 Realtek_RF_MP_Tool_Guidelines_V14_20150605; | ||||||||
5.本手册适用于 rtl8XXXA的模块,需要在串口工具下测试。 |
二、移植rtwpriv软件到buildroot平台编译
1.建立rtwpriv包配置
添加menuconfig 索引
buildroot-2019.02.6/package/Config.in文件中添加如下配置
menu "My App"
source "package/rtwpriv/Config.in"
endmenu
如下图所示:在package下创建rtwpriv目录,并添加Config.in 和rtwpriv.mk文件
Config.in 文件内容如下
config BR2_PACKAGE_RTWPRIV
bool "rtwpriv"
help
An wifi tools.
rtwpriv.mk
文件内容如下
ifeq ($(BR2_PACKAGE_RTWPRIV), y)
RTWPRIV_VERSION:=1.0.0
RTWPRIV_SITE=$(TOPDIR)/board/art93xx/packets/rtwpriv
RTWPRIV_SITE_METHOD=localdefine RTWPRIV_BUILD_CMDS
$(TARGET_MAKE_ENV) $(MAKE) CC=$(TARGET_CC) CXX=$(TARGET_CXX) -C $(@D)
endefdefine RTWPRIV_CLEAN_CMDS
$(TARGET_MAKE_ENV) $(MAKE) -C $(@D) clean
endefdefine RTWPRIV_INSTALL_TARGET_CMDS
$(TARGET_MAKE_ENV) $(MAKE) -C $(@D) install
endefdefine RTWPRIV_UNINSTALL_TARGET_CMDS
$(TARGET_MAKE_ENV) $(MAKE) -C $(@D) uninstall
endef$(eval $(generic-package))
endif
2.源码准备
源码获取地址,我分享的csdn资源:wifi定频工具源码和使用手册
源代码如下:
Makefile文件内容
DEPS =
OBJ = rtwpriv.o
CFLAGS = -lm
CXXFLAGS= -lmrtwpriv: rtwpriv.cpp rtw_api.cpp rtw_udpsrv.cpp
$(CC) -o $@ $^ $(CXXFLAGS).PHONY: clean
clean:
rm -f *.o *~ rtwpriv.PHONY: install
install:
cp -f rtwpriv $(TARGET_DIR)/usr/bin/.PHONY: uninstall
uninstall:
rm -f $(TARGET_DIR)/usr/bin/rtwpriv
3.编译rtwpriv
在buildroot根目录输入 make menuconfig
选中Target packages → My App 下面的rtwpriv
保存,并退出
最后执行make rtwpriv 就可以编rtwpriv包,输出rtwpriv可执行程序
三、RTL8XXXXX 定频软件操作手册
WIFI2.4G测试指令 ifconfig wlan0 up ;开启网卡 rtwpriv wlan0 mp_start ;加载测试程序 一: 11b 发射模式 11M =22 步骤 1)11M 11b 模式 20M 带宽 #ifconfig wlan0 up ;开启网卡 #rtwpriv wlan0 mp_start ;加载测试程序 (1)频道 1 rtwpriv wlan0 mp_channel 1 ;设定通道(1-13) rtwpriv wlan0 mp_bandwidth 40M=0,shortGI=0 ;设定带宽(40M=0 20M/40M=1 40M/40=2 80M) rtwpriv wlan0 mp_ant_tx a rtwpriv wlan0 mp_txpower patha=40 ;设定 power 值(0-63) rtwpriv wlan0 mp_rate 22 ;设定模式(22=11M) rtwpriv wlan0 mp_ctx count=%100,pkt ;连续发包 rtwpriv wlan0 mp_ctx stop ;停止发包 (2)频道 7 rtwpriv wlan0 mp_channel 7 ;设定通道(1-13) rtwpriv wlan0 mp_bandwidth 40M=0,shortGI=0 ;设定带宽(40M=0 20M/40M=1 40M/40=2 80M) rtwpriv wlan0 mp_ant_tx a rtwpriv wlan0 mp_txpower patha=40 ;设定 power 值(0-63) rtwpriv wlan0 mp_rate 22 ;设定模式(22=11M) rtwpriv wlan0 mp_ctx count=%100,pkt ;连续发包 rtwpriv wlan0 mp_ctx stop ;停止发包 (3)频道 13 rtwpriv wlan0 mp_channel 13 ;设定通道(1-13) rtwpriv wlan0 mp_bandwidth 40M=0,shortGI=0 ;设定带宽(40M=0 20M/40M=1 40M/40=2 80M) rtwpriv wlan0 mp_ant_tx a rtwpriv wlan0 mp_txpower patha=40 ;设定 power 值(0-63) rtwpriv wlan0 mp_rate 22 ;设定模式(22=11M) rtwpriv wlan0 mp_ctx count=%100,pkt ;连续发包 rtwpriv wlan0 mp_ctx stop ;停止发包 二: 11g 发射模式 54M =108 步骤 1)54M 11g 模式 20M 带宽 #ifconfig wlan0 up ;开启网卡 #rtwpriv wlan0 mp_star