一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

RW007 Wi-Fi 實(shí)戰(zhàn)分享

RT-Thread官方賬號(hào) ? 2024-08-10 08:35 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

1.開發(fā)環(huán)境

本文將會(huì)介紹如何使用RT-Thread env 工具創(chuàng)建一個(gè)基于RT-Thread RTOS的軟件項(xiàng)目;如何使用RT-Thread env 工具對項(xiàng)目進(jìn)行配置,實(shí)現(xiàn)FRDM-MCXN947開發(fā)板通過RW007模組進(jìn)行WiFi聯(lián)網(wǎng);以及如何使用RT-Thread env 工具對項(xiàng)目進(jìn)行配置,實(shí)現(xiàn)WiFi網(wǎng)絡(luò)延遲和帶寬測試。

ENV環(huán)境

2.步驟說明

2.1 RW007模組介紹

RW007模組是由上海睿賽德電子科技有限公司開發(fā)的一款支持WiFi和藍(lán)牙功能的無線通信模塊,它提供了基于SPI和UART 兩種接口通信方式。

SPI接口相對于UART接口,具有更高的通信速率,因此本文采用SPI接口進(jìn)行實(shí)驗(yàn)。

RW007模組工作在SPI模式下時(shí),主控芯片為模組需要提供1組SPI信號(hào),一個(gè)中斷輸入,一個(gè)IO輸出,包含電源和地總,一共8個(gè)引腳。

RT-Thread官方也提供了RW007模組的Arduino評(píng)估板(以下簡稱RW007評(píng)估板),如下圖所示:

7cfa1b0c-56b0-11ef-817b-92fbcf53809c.jpg

圖片中間部分為RW007模組。

查閱RW007評(píng)估版原理圖,可以看到SPI和UART接口部分,如下圖所示:

7cfe503c-56b0-11ef-817b-92fbcf53809c.png

可以看到,Arduino接口與RW007模組引腳的連接關(guān)系,如下表所示:

7d0241e2-56b0-11ef-817b-92fbcf53809c.png

2.2 Arduino接口簡介

本文使用的硬件平臺(tái)是恩智浦 NXP FRDM-MCXN947, 開發(fā)板提供了Arduino接口,如下圖藍(lán)色部分:

7d0cf3b2-56b0-11ef-817b-92fbcf53809c.jpg

FRDM-MXCN947開發(fā)板 Arduino接口,和RW007評(píng)估版通信的引腳如下:

7d114a3e-56b0-11ef-817b-92fbcf53809c.jpg

其中,D10~D13為SPI信號(hào),D9為中斷信號(hào)(INT),D8為復(fù)位控制(RST);

FRDM-MCXN947開發(fā)板和RW007評(píng)估板連接如下圖:

7d1c9d76-56b0-11ef-817b-92fbcf53809c.jpg

2.3 RW007軟件包簡介

RT-Thread RW007軟件包實(shí)現(xiàn)了MCU主控端與RW007模組的SPI/UART接口的底層通訊,同時(shí)實(shí)現(xiàn)了與RT-Thread的WiFi框架、網(wǎng)絡(luò)協(xié)議棧對接。借助此軟件包,開發(fā)者可以在RT-Thread系統(tǒng)上輕松實(shí)現(xiàn)WiFi聯(lián)網(wǎng)或BLE功能。

軟件包源碼倉庫鏈接:https://github.com/RT-Thread-packages/rw007

軟件包源碼倉庫鏈接(國內(nèi)鏡像):https://gitee.com/RT-Thread-Mirror/rw007

2.4 RT-Thread env工具簡介

RT-Thread Env 工具 包括配置器和包管理器,用來對內(nèi)核和組件的功能進(jìn)行配置,對組件進(jìn)行自由裁剪,對線上軟件包進(jìn)行管理,使得系統(tǒng)以搭積木的方式進(jìn)行構(gòu)建,簡單方便。

2.5 新建工程

首先,克隆RT-Thread主線源碼到本地(Windows系統(tǒng)使用git-bash):

7d218b56-56b0-11ef-817b-92fbcf53809c.png

接著,跳轉(zhuǎn)到 FRDM-MXCN947 板級(jí)支持包(BSP)目錄:

7d2a3dc8-56b0-11ef-817b-92fbcf53809c.png

$ cd bsp/nxp/mcx/mcxn/frdm-mcxn947/

最后,使用 scons 命令創(chuàng)建獨(dú)立的項(xiàng)目目錄(可以在env命令行,或者gitb-bash中執(zhí)行):

7d4e1f22-56b0-11ef-817b-92fbcf53809c.png

其中,target參數(shù)用于指定項(xiàng)目模板(可以使用mdk、iar等),project-name參數(shù)和project-path參數(shù)分別表示項(xiàng)目名稱和項(xiàng)目目錄,可以根據(jù)實(shí)際需要修改修改。

注意:git-bash執(zhí)行scons之前,需要保證已經(jīng)安裝了Python,并且已使用pip install scons安裝scons軟件包。否則會(huì)報(bào) scons 命令找不到。

scons命令執(zhí)行成功,命令輸出,如下圖所示:

7d57f236-56b0-11ef-817b-92fbcf53809c.png

scons命令創(chuàng)建的目錄,內(nèi)容如下圖所示:

7d6337cc-56b0-11ef-817b-92fbcf53809c.jpg

其中,rtt_n947開頭的兩個(gè)文件,就是scons生成的項(xiàng)目文件。如果不加—project-name參數(shù),則是project開頭的兩個(gè)文件。

2.5.1 添加RW007軟件包

在env命令行環(huán)境中,跳轉(zhuǎn)到上一小節(jié)創(chuàng)建的項(xiàng)目目錄 E:\DIY\FRDM-MCXN947\rtt_n947目錄,

然后,使用 menuconfig 命令:

7d6dfa18-56b0-11ef-817b-92fbcf53809c.png

2.5.2 打開RW007配置項(xiàng)

類似的,依次選擇:

│ -> Hardware Drivers Config

│ -> Board extended module Drivers

如下圖所示:

7d758ad0-56b0-11ef-817b-92fbcf53809c.png

空格選中Enable RW007選項(xiàng)。

選中該選項(xiàng)后,將會(huì)自動(dòng)選中RW007軟件包,以及片上SPI1配置。

左右移動(dòng)光標(biāo)到Save上,回車保存配置。

保存配置之后,.config和rtconfig.h文件將會(huì)更新。

保存配置后,就可以退出配置界面了。

2.5.3 啟用pin驅(qū)動(dòng)

類似的,依次進(jìn)入菜單:

→ Hardware Drivers Config → On-chip Peripheral Drivers

如下圖所示:

7d79e27e-56b0-11ef-817b-92fbcf53809c.jpg

如圖,選中Enable GPIO。

這樣,就開啟了pin驅(qū)動(dòng)。開啟pin驅(qū)動(dòng)的原因是,SPI的CS使用了pin接口進(jìn)行控制。

左右移動(dòng)光標(biāo)到Save上,回車保存配置。

保存配置之后,.config和rtconfig.h文件將會(huì)更新。

保存配置后,就可以退出配置界面了。

2.5.4 禁用RW007的STM32驅(qū)動(dòng)

類似的,依次選擇:

RT-Thread online packages → IoT - internet of things → Wi-Fi → rw007: SPI WIFI rw007 driver

進(jìn)入RW007軟件包配置界面:

7d7e3f40-56b0-11ef-817b-92fbcf53809c.jpg

上下移動(dòng)光標(biāo)到”example driver port (RW007 for stm32)”上,回車,進(jìn)入這個(gè)配置項(xiàng):

7d82d3ac-56b0-11ef-817b-92fbcf53809c.png

選中,not use example driver porting by myself。

選中之后,自動(dòng)返回RW007軟件包配置頁面:

7d86f734-56b0-11ef-817b-92fbcf53809c.jpg

此時(shí),RW007的STM32驅(qū)動(dòng)就被禁用掉了。

左右移動(dòng)光標(biāo)到Save上,回車保存配置。

保存配置之后,.config和rtconfig.h文件將會(huì)更新。

保存配置后,就可以退出配置界面了。

2.5.5 下載軟件包

剛剛我們用menuconfig選中了“RT-Thread online packages”中的RW007軟件包,RW007軟件包的代碼默認(rèn)不在本地。menuconfig選中并保存配置后,需要運(yùn)行pkgs —update命令,才能將RW007軟件包的代碼下載到本地。

執(zhí)行pkgs —update命令,輸出如下圖所示:

7d901968-56b0-11ef-817b-92fbcf53809c.png

2.5.6 更新MDK項(xiàng)目文件

使用menuconfig命令修改配置之后(尤其是增加軟件包之后),需要更新MDK項(xiàng)目文件,新增的代碼才會(huì)被編譯。

對于scons創(chuàng)建時(shí)添加了project-name參數(shù)的,更新時(shí)也要加project-name參數(shù):

7db40936-56b0-11ef-817b-92fbcf53809c.png

2.6 編譯運(yùn)行

2.6.1 打開MDK項(xiàng)目

鼠標(biāo)雙擊打開rtt_n947.uvprojx文件,打開后看到如下圖所示:

7dbe87bc-56b0-11ef-817b-92fbcf53809c.png

可以看到,RW007的代碼已經(jīng)在里面了。

2.6.2 編譯下載程序

Keil中,按F7編譯項(xiàng)目,按F8下載固件。

下載固件之前,需要使用USB Type-C線,將PCUSB口連接到FRDM-MCXN947開發(fā)板的MCU-LINK口上。

默認(rèn)的下載固件設(shè)置是正確的,如果不能下載固件很可能是沒有安裝MCXN947的支持包。

下載固件完成,Keil輸出如下

7dc2f8ce-56b0-11ef-817b-92fbcf53809c.png

2.6.3 運(yùn)行RT-Thread

打開串口終端,配置如下:

7de7fa02-56b0-11ef-817b-92fbcf53809c.jpg

連接串口后,

按下開發(fā)板復(fù)位鍵,串口終端可以看到,輸出了RW007固件的版本信息:

7deead2a-56b0-11ef-817b-92fbcf53809c.png

2.7 WIFI測試

接下來,我們進(jìn)行一些簡單的WiFi測試。

接下來我們查看wifi命令的使用方式:

7df3fbe0-56b0-11ef-817b-92fbcf53809c.png

2.7.1 掃描測試

嘗試掃描周圍的WiFi熱點(diǎn):

7dff37da-56b0-11ef-817b-92fbcf53809c.png

可以看到,成功掃描到了周圍的WiFi熱點(diǎn)。

2.7.2 連接測試

嘗試連接其中的一個(gè)熱點(diǎn)(這里連接的是無線路由器):

7e04cbfa-56b0-11ef-817b-92fbcf53809c.png

可以看到,成功連接上了WiFi熱點(diǎn),并且獲取到了IP地址。

2.8 延遲測試

ping命令可以輸出網(wǎng)絡(luò)延遲信息,可以作為網(wǎng)絡(luò)延遲的簡單測試工具。

2.8.1 ping百度

接下來,用 ping 命令測試一下,板子能不能ping通baidu.com:

7e09db2c-56b0-11ef-817b-92fbcf53809c.png

可以ping通baidu.com,說明TCP/IP協(xié)議基本沒有太大問題(域名解析OK,而且可以發(fā)送數(shù)據(jù)到公網(wǎng)主機(jī))。

2.8.2 ping路由器

接下來,ping一下局域網(wǎng)的無線路由器:

7e131b74-56b0-11ef-817b-92fbcf53809c.png

ping局域網(wǎng)的路由器,延遲明顯小了很多。

作為對比,可以看一下筆記本ping路由器的延遲:

7e18c9ac-56b0-11ef-817b-92fbcf53809c.png

我的筆記本電腦連接的也是同一個(gè)無線路由器。

模組比筆記本的WiFi延遲稍微高一點(diǎn)點(diǎn),差別不大。

2.9 帶寬測試

2.9.1 添加netutils軟件包

RT-Thread的netutils組件中提供了iperf命令,可以用于測試網(wǎng)絡(luò)帶寬。

menuconfig界面,依次選擇:

7e3e5e4c-56b0-11ef-817b-92fbcf53809c.png

選中netutils軟件包,然后回車進(jìn)入軟件包配置頁面:

7e456976-56b0-11ef-817b-92fbcf53809c.png

如圖,選中Enable iperf-liked network performace tool。

左右移動(dòng)光標(biāo)到Save上,回車保存配置。

保存配置之后,.config和rtconfig.h文件將會(huì)更新。

保存配置后,就可以退出配置界面了。

執(zhí)行pkgs —update命令,輸出如下圖所示:

7e51704a-56b0-11ef-817b-92fbcf53809c.png

更新MDK項(xiàng)目文件:

7e572c56-56b0-11ef-817b-92fbcf53809c.png

重新編譯固件,下載固件,復(fù)位運(yùn)行,串口終端就有iperf命令了:

7e5c3926-56b0-11ef-817b-92fbcf53809c.png

2.9.2 iperf命令參數(shù)

直接運(yùn)行iperf,默認(rèn)輸出幫助信息:

7e621440-56b0-11ef-817b-92fbcf53809c.png

可以看到iperf的命令參數(shù)使用方法。

注意:

RT-Thread的iperf命令實(shí)現(xiàn)中,對參數(shù)的順序由要求,如果使用過程中發(fā)現(xiàn)參數(shù)報(bào)錯(cuò),需要查看源碼定位原因;

RT-Thread的iperf不支持持續(xù)時(shí)間選項(xiàng),一般是先啟動(dòng),后通過stop選項(xiàng)停止的方式控制測試時(shí)長;

2.9.3 PC端的iperf

PC端的iperf可以到iperf項(xiàng)目官網(wǎng)下載:https://iperf.fr/iperf-download.php

我使用的mobaxterm,里面自帶了iperf命令,所以就不單獨(dú)下載了:

7e684d56-56b0-11ef-817b-92fbcf53809c.png

2.9.4 iperf測試準(zhǔn)備工作

進(jìn)行iperf測試之前,需要準(zhǔn)備:

最好用PC創(chuàng)建熱點(diǎn),用無線路由器也行,但是需要確保信號(hào)強(qiáng)度足夠;

確保開發(fā)板和PC直接的距離不要太遠(yuǎn),否則WiFi信號(hào)較弱,測試的結(jié)果可能會(huì)偏??;

最好在WiFi熱點(diǎn)較少的環(huán)境下進(jìn)行測試,否則測出的結(jié)果數(shù)據(jù)也會(huì)偏??;

2.9.5 進(jìn)行iperf帶寬測試

下面進(jìn)行測試,測試步驟如下:

在PC上,啟動(dòng)iperf服務(wù)端:iperf -s -p 5678

在開發(fā)板上,通過ping命令測試開發(fā)板和PC直接IP是否可達(dá)

在開發(fā)板上,啟動(dòng)iperf客戶端:iperf -c 192.168.3.6 -p 5678 (其中192.168.3.6是PC的IP地址)

啟動(dòng)后,可以通過ps命令查看正在運(yùn)行的線程

一段時(shí)間后,在開發(fā)板上,停止iperf客戶端:iperf —stop

開發(fā)板上iperf停止后,PC端應(yīng)該可以看到iperf的輸出;

開發(fā)板上整個(gè)過程的輸出如下:

7e6fb67c-56b0-11ef-817b-92fbcf53809c.png

PC端輸出:

7e7bf25c-56b0-11ef-817b-92fbcf53809c.png

可以看到帶寬為7.02Mbps。

2.9.6 iperf測試小結(jié)

實(shí)際上,影響WiFi帶寬測試結(jié)果數(shù)據(jù)的因素很多。我們這里,其中,起決定性的的主要由以下幾個(gè)方面:

模組本身支持的最高WiFi傳輸速率;

模組接口支持的最高工作頻率;

主控芯片接口最高支持的工作頻率;

熱點(diǎn)的WiFi最高傳輸速率;

各種環(huán)境因素,例如開發(fā)板和PC直接的距離、環(huán)境是否有其他熱點(diǎn)干擾等等;

為了測出比較高的數(shù)據(jù),我把開發(fā)板直接放到路由器天線邊上,才測到以上的結(jié)果:

7e821df8-56b0-11ef-817b-92fbcf53809c.jpg

2.10 補(bǔ)充說明

如果有時(shí)候測試發(fā)現(xiàn)棧溢出,則需要修改TCPIP線程棧大?。?/p>

7e8c52fa-56b0-11ef-817b-92fbcf53809c.png

將其修改為4096即可。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • WIFI
    +關(guān)注

    關(guān)注

    81

    文章

    5406

    瀏覽量

    208353
  • 開發(fā)板
    +關(guān)注

    關(guān)注

    25

    文章

    5682

    瀏覽量

    104798
  • RT-Thread
    +關(guān)注

    關(guān)注

    32

    文章

    1409

    瀏覽量

    41959
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    睿賽德(RT-Thread) RW007 WIFI模塊免費(fèi)試用申請

    RW007是RT-Thread推出的一款高性價(jià)比 SPI或SDIO 接口 的Wi-Fi模塊,內(nèi)置RT-Thread,提供基于 802.11 b/g/n 的高速 無線 數(shù)據(jù) 傳輸 功能,降低高速
    的頭像 發(fā)表于 05-25 16:20 ?3603次閱讀

    【Vision Board創(chuàng)客營連載體驗(yàn)】RW007 WIFI模塊聯(lián)網(wǎng)

    : RT-Thread online packages —> 、IoT - internet of things —>、Wi-Fi —>,勾選 rw007: SPI WIFI
    發(fā)表于 04-29 21:55

    RT-Thread RW007 SPI WiFi 模塊使用

    、安全固件功能。支持快速連接、airkiss 配網(wǎng)支持存儲(chǔ)多達(dá) 5 條連接信息更多相關(guān)信息資料見 RW007 介紹頁面:睿賽德科技推出高速Wi-Fi模塊RW007:內(nèi)置RT-Thread物聯(lián)網(wǎng)操作系統(tǒng)
    發(fā)表于 06-11 13:56

    【睿賽德 RW007 WiFi 模塊試用連載】RW007 WIFI模塊聯(lián)網(wǎng)與使用(一)

    packages---> 、IoT - internet of things--->、Wi-Fi--->,勾選 rw007: SPI WIFI rw007 driver---> 選項(xiàng)接著進(jìn)一步
    發(fā)表于 06-16 07:06

    【睿賽德 RW007 WiFi 模塊試用連載】基于RT-STUDIO配置RW007的過程

    一、工具背景開發(fā)板,本次測試用的是原子的探索者407,為什么呢?因?yàn)槠涟?。網(wǎng)絡(luò)模塊,就是本文的核心RW007,藍(lán)色的PCB,跟探索者一起情侶裝。二、新建RT-STUDIO工程目前RT-STUDIO
    發(fā)表于 07-12 12:57

    【睿賽德 RW007 WiFi 模塊試用連載】基于RT-STUDIO配置RW007

    `一、工具背景開發(fā)板,本次測試用的是原子的探索者407,為什么呢?因?yàn)槠涟?。網(wǎng)絡(luò)模塊,就是本文的核心RW007,藍(lán)色的PCB,跟探索者一起情侶裝。二、新建RT-STUDIO工程目前
    發(fā)表于 07-12 12:58

    【睿賽德 RW007 WiFi 模塊試用連載】RW007模塊調(diào)試心路歷程

    本篇帖子是我拿到RW007后的試用記錄,也算是心路歷程了吧,我的試用文章:https://bbs.elecfans.com/jishu_2099349_1_1.html,歡迎各位去逛逛。2021
    發(fā)表于 07-12 22:20

    【睿賽德 RW007 WiFi 模塊試用連載】STM32F411連接RW007

    ` 本帖最后由 TLLED 于 2021-7-13 09:50 編輯 官網(wǎng)的例程是使用STM32F401 Nucleo-64開發(fā)板來驅(qū)動(dòng)RW007,手上有一塊STM32F411
    發(fā)表于 07-13 00:15

    手把手教你適配RW007 Wi-Fi模塊

    RW007是什么?RW007 Wi-Fi模塊有何功能?RW007Wi-Fi模塊有哪些基本參數(shù)呢?
    發(fā)表于 02-28 09:33

    請問RW007是否可以作為WIFI主機(jī)?

    請問RW007是否可以作為WIFI主機(jī),手機(jī)連接RW007的熱點(diǎn)。
    發(fā)表于 05-27 11:41

    在柿餅派上更新RW007固件與驅(qū)動(dòng)并測試RW007的BLE功能

    1、通過RW007的BLE 功能讀取米家藍(lán)牙溫濕度計(jì)數(shù)據(jù)  一直在關(guān)注 RT-Thread 的柿餅派和 RW007 模塊,聽說最近新版的 RW007 模塊支持 BLE 功能了,于是便向客服咨詢在柿餅
    發(fā)表于 09-29 14:15

    rw007不確定原因的不定時(shí)重啟何解

    使用rw007 spi lwip連接,經(jīng)常性會(huì)發(fā)生下圖這樣當(dāng)發(fā)送失敗的時(shí)候,個(gè)人感覺是rw007重啟了,導(dǎo)致rtt wlan框架沒法自動(dòng)重連wifi。打印的wifi信息目前是已經(jīng)把wlan框架的自動(dòng)
    發(fā)表于 02-21 11:17

    配置rw007 SPI WiFi模塊的步驟教程

    RW007是RT-Thread推出的一款高性價(jià)SPI的Wi-Fi模塊,內(nèi)置RT-Thread,提供基于802.11b/g/n的高速無線數(shù)據(jù)傳輸功能,減低高速Wi-Fi模塊的應(yīng)用門檻。
    的頭像 發(fā)表于 09-14 14:17 ?7044次閱讀
    配置<b class='flag-5'>rw007</b> SPI WiFi模塊的步驟教程

    RW007系列綜合實(shí)戰(zhàn)1】STM32+RW007實(shí)現(xiàn)BLE透傳功能

    本期文章將分為5篇連載,前2篇將圍繞模塊功能詳解展開,其后3篇將為大家講解基于RW007相關(guān)DEMO的實(shí)現(xiàn),文章目錄如下:
    發(fā)表于 01-25 18:05 ?2次下載
    【<b class='flag-5'>RW007</b>系列綜合<b class='flag-5'>實(shí)戰(zhàn)</b>1】STM32+<b class='flag-5'>RW007</b>實(shí)現(xiàn)BLE透傳功能

    基于RT-Thread測試RW007(SPI接口)的無線網(wǎng)絡(luò)功能

    本文主要基于 PSoC? 62 with CAPSENSE? evaluation kit開發(fā)板 X RT-Thread,測試RW007(SPI接口)的無線網(wǎng)絡(luò)功能。
    發(fā)表于 08-09 16:23 ?2419次閱讀
    基于RT-Thread測試<b class='flag-5'>RW007</b>(SPI接口)的無線網(wǎng)絡(luò)功能