Toggle navigation
首页
问答
文章
积分商城
专家
专区
更多专区...
文档中心
返回主站
搜索
提问
会员
中心
登录
注册
RA8-M85-vision-board
SPI
WIFI模块_RW007
RA8D1 Vision Board上的RW007实践——WiFi延迟和带宽测试
发布于 2024-04-21 22:02:10 浏览:605
订阅该版
[tocm] 本文主要介绍如何使用RT-Thread Studio创建在VisionBoard开发板上运行的RT-Thread项目,以及如何配置RW007模组实现WiFi联网,以及如何进行WiFi延迟和带宽测试。本文主要在RT-Thread Studio环境下进行,只需要进行一些配置即可完成全部操作,整个操作过程不需要写代码,非常简单。 ## 一、准备环境 ### 1.1 安装RT-Thread Studio RT-Thread Studio可以在RT-Thread官网下载,安装没啥难度,这里不再介绍了。 ### 1.2 安装开发板支持包 打开RT-Thread Studio后,找到SDK Manager(SDK管理器)图标,并单击: ![Untitled](https://pics-1303990412.cos.ap-shanghai.myqcloud.com/202404212159225.png) 在弹出的RT-Thread SDK管理器界面中,找到Vision-Board支持包,选中并安装: ![Untitled](https://pics-1303990412.cos.ap-shanghai.myqcloud.com/202404212159226.png) ### 1.3 安装调试器支持包 继续在SDK管理器界面中,下拉到PyOCD下方,安装最新板的调试器支持包: ![Untitled](https://pics-1303990412.cos.ap-shanghai.myqcloud.com/202404212159227.png) 可以看到,最新一条更新记录里面写了支持RA8系列。 ### 1.4 安装工具链支持包 工具链,建议下载最新的: ![Untitled](https://pics-1303990412.cos.ap-shanghai.myqcloud.com/202404212159228.png) ## 二、创建项目 ### 2.1 创建RT-Thread项目 接着,通过RT-Thread Studio菜单栏,”文件”→“新建” → “RT-Thread项目”打开新建项目界面。 ![rs_create_project.png](https://pics-1303990412.cos.ap-shanghai.myqcloud.com/202404212159229.png) 新建项目界面,按照如下步骤操作: 1. 选中“基于开发板”; 2. 开发板下拉菜单选择“VISION-BOARD”; 3. 类型选择“示例工程”; 4. 示例选择“vision_board_wifi”; 5. 如果一开始没有填写project name,第4步选择后,project name将会变成vision_board_wifi; 如下图所示: ![Untitled](https://pics-1303990412.cos.ap-shanghai.myqcloud.com/202404212159230.png) 此时,点“完成”,就会创建项目文件了: ![Untitled](https://pics-1303990412.cos.ap-shanghai.myqcloud.com/202404212159231.png) ## 三、编译下载 ### 3.1 编译代码 点击工具栏的锤子图标,或者使用快捷键Ctrl+B,编译项目: ![Untitled](https://pics-1303990412.cos.ap-shanghai.myqcloud.com/202404212159232.png) 编译完成后,可以看到控制台输出了RAM和Flash占用: ![Untitled](https://pics-1303990412.cos.ap-shanghai.myqcloud.com/202404212159233.png) ### 3.2 下载程序 下载固件之前,首先安装好VISION-BOARD的WiFi天线,如下图所示: ![visionboard_rw007_ant.jpg](https://pics-1303990412.cos.ap-shanghai.myqcloud.com/202404212159234.jpg) 然后,使用USB Type-C线将PC和开发板连接起来,注意连接到板子的USB-DBG口,如下图所示: ![visionboard_rw007_usb.jpg](https://pics-1303990412.cos.ap-shanghai.myqcloud.com/202404212159235.jpg) 连接好USB线之后,回到RT-Thread Studio中,使用“下载”按钮(或者Ctrl+Alt+D快捷键),开始下载程序: ![Untitled](https://pics-1303990412.cos.ap-shanghai.myqcloud.com/202404212159241.png) 或Ctrl+Alt+D即可进行烧录。 下载完成后,控制台窗口可以看到: ![Untitled](https://pics-1303990412.cos.ap-shanghai.myqcloud.com/202404212159242.png) ## 四、WiFi测试 接下来连接串口终端,我用的是MobaXterm,参数配置如下: ![Untitled](https://pics-1303990412.cos.ap-shanghai.myqcloud.com/202404212159243.png) 连接串口后,按下板子上的复位键,可以看到: ![Untitled](https://pics-1303990412.cos.ap-shanghai.myqcloud.com/202404212159244.png) 有RT-Thread系统启动日志,以及RW007模组的固件信息。 接下来,我们进行一些简单的WiFi测试。 首先,输入wifi命令,可以查看wifi命令的使用方式: ![Untitled](https://pics-1303990412.cos.ap-shanghai.myqcloud.com/202404212159245.png) ### 4.1 扫描测试 使用wifi scan命令,尝试扫描周围的WiFi热点: ![Untitled](https://pics-1303990412.cos.ap-shanghai.myqcloud.com/202404212159246.png) 可以看到,成功扫描到了周围的WiFi热点。 ### 4.2 连接测试 执行wifi join命令,尝试连接其中的一个热点(这里连接的是无线路由器): ![Untitled](https://pics-1303990412.cos.ap-shanghai.myqcloud.com/202404212159247.png) 其中,马赛克的部分是WiFi密码。 可以看到,成功连接上了WiFi热点,并且获取到了IP地址。 ## 五、延迟测试 ping命令可以输出玩咯延迟信息,可以作为网络延迟的简单测试工具。 ### 5.1 ping百度 接下来,用 ping 命令测试一下,板子能不能ping通baidu.com: ![Untitled](https://pics-1303990412.cos.ap-shanghai.myqcloud.com/202404212159248.png) 可以ping通baidu.com,说明TCP/IP协议基本没有太大问题(域名解析OK,而且可以发送数据到公网主机)。 ### 5.2 ping路由器 接下来,ping一下局域网的无线路由器: ![Untitled](https://pics-1303990412.cos.ap-shanghai.myqcloud.com/202404212159249.png) 作为对比,可以看一下笔记本ping路由器的延迟: ![Untitled](https://pics-1303990412.cos.ap-shanghai.myqcloud.com/202404212159250.png) 我的笔记本电脑连接的也连接在同一个无线路由器上。 模组比笔记本的WiFi延迟高一点点,正题相差不大。 ## 六、带宽测试 ### 6.1 netutils软件包 RT-Thread的netutils组件中提供了iperf命令,可以用于测试网络带宽。 RT-Thread Studio中,双击“RT-Thread Settings”,如下图所示: ![Untitled](https://pics-1303990412.cos.ap-shanghai.myqcloud.com/202404212159251.png) 可以看到,已经有netutils软件包了,不需要手动添加了。 鼠标放到netutils组件上,点击悬浮菜单的“配置项”,如下图所示: ![Untitled](https://pics-1303990412.cos.ap-shanghai.myqcloud.com/202404212159252.png) 此时RT-Thread Settings窗口将会跳转到netutils软件包配置页面,如下图: ![Untitled](https://pics-1303990412.cos.ap-shanghai.myqcloud.com/202404212159253.png) 可以看到iperf选项已经打开了。 也就是说,默认的vision_board_wifi示例已经有netutils软件包,并且打开了iperf配置项了。 如果没有意外,刚刚编译的程序中已经有 iperf命令,不需要重新编译了。 串口终端中,输入help,可以看到: ![Untitled](https://pics-1303990412.cos.ap-shanghai.myqcloud.com/202404212159254.png) ### 6.2 iperf命令参数 在RT-Thread的msh中运行iperf,默认输出帮助信息: ![Untitled](https://pics-1303990412.cos.ap-shanghai.myqcloud.com/202404212159255.png) 可以看到iperf的命令参数使用方法。 **注意:** 1. RT-Thread的iperf命令实现中,对参数的顺序由要求,如果使用过程中发现参数报错,需要查看源码定位原因; 2. RT-Thread的iperf不支持持续时间选项,一般是先启动,后通过stop选项停止的方式控制测试时长; ### 6.3 PC端的iperf PC端的iperf可以到iperf项目官网下载:[https://iperf.fr/iperf-download.php](https://iperf.fr/iperf-download.php) 我使用的mobaxterm,里面自带了iperf命令,所以就不单独下载了: ![Untitled](https://pics-1303990412.cos.ap-shanghai.myqcloud.com/202404212159256.png) ### 6.4 iperf带宽测试 下面进行测试,测试步骤如下: 1. 在PC上,启动iperf服务端:iperf -s -p 5678 2. 在开发板上,通过ping命令测试开发板和PC直接IP是否可达 3. 在开发板上,启动iperf客户端:iperf -c 192.168.3.6 -p 5678 (其中192.168.3.6是PC的IP地址) - 启动后,可以通过ps命令查看正在运行的线程 4. 一段时间后,在开发板上,停止iperf客户端:iperf --stop 5. 开发板上iperf停止后,PC端应该可以看到iperf的输出; 开发板上整个过程的输出如下: ![Untitled](https://pics-1303990412.cos.ap-shanghai.myqcloud.com/202404212159257.png) PC端输出: ![Untitled](https://pics-1303990412.cos.ap-shanghai.myqcloud.com/202404212159258.png) 可以看到带宽是0.06Mbps(上一次测出来的是6.07)。 ### 6.5 iperf测试小结 实际上,影响WiFi带宽测试结果数据的因素很多。我们这里,其中,起决定性的的主要由以下几个方面: 1. 模组本身支持的最高WiFi传输速率; 2. 模组接口支持的最高工作频率; 3. 主控芯片接口最高支持的工作频率; 4. 热点的WiFi最高传输速率; 5. 各种环境因素,例如开发板和PC直接的距离、环境是否有其他热点干扰等等; 为了测出比较高的数据,我把开发板直接放到路由器天线边上,以上的结果: ![visionboard_wifi_ap.jpg](https://pics-1303990412.cos.ap-shanghai.myqcloud.com/202404212159259.jpg)
2
条评论
默认排序
按发布时间排序
登录
注册新账号
关于作者
xusiwei1236
https://blog.csdn.net/xusiwei1236
文章
11
回答
33
被采纳
4
关注TA
发私信
相关文章
1
BBB的SPI驱动
2
求个SPI上挂两个或多个设备的使用例子
3
SPI设备有个bug
4
spi flash 的fatfs使用一段时间后读写文件出现故障
5
SPI驱动
6
请教rt_spi_configure函数理解
7
SPI FLASH挂载的问题
8
SPI-FLASH 文件系统 SPIFFS
9
求助一个完整的 spi flash 驱动
10
关于同时使用文件系统与SPI FLASH的问题
推荐文章
1
RT-Thread应用项目汇总
2
玩转RT-Thread系列教程
3
国产MCU移植系列教程汇总,欢迎查看!
4
机器人操作系统 (ROS2) 和 RT-Thread 通信
5
五分钟玩转RT-Thread新社区
6
【技术三千问】之《玩转ART-Pi》,看这篇就够了!干货汇总
7
关于STM32H7开发板上使用SDIO接口驱动SD卡挂载文件系统的问题总结
8
STM32的“GPU”——DMA2D实例详解
9
RT-Thread隐藏的宝藏之completion
10
【ART-PI】RT-Thread 开启RTC 与 Alarm组件
热门标签
RT-Thread Studio
串口
Env
LWIP
SPI
AT
Bootloader
Hardfault
CAN总线
FinSH
ART-Pi
USB
DMA
文件系统
RT-Thread
SCons
RT-Thread Nano
线程
MQTT
STM32
RTC
FAL
rt-smart
ESP8266
I2C_IIC
WIZnet_W5500
UART
ota在线升级
PWM
cubemx
freemodbus
flash
packages_软件包
BSP
潘多拉开发板_Pandora
定时器
ADC
GD32
flashDB
socket
中断
Debug
编译报错
msh
SFUD
keil_MDK
rt_mq_消息队列_msg_queue
ulog
C++_cpp
at_device
本月问答贡献
踩姑娘的小蘑菇
7
个答案
3
次被采纳
a1012112796
13
个答案
2
次被采纳
张世争
9
个答案
2
次被采纳
rv666
5
个答案
2
次被采纳
用户名由3_15位
11
个答案
1
次被采纳
本月文章贡献
程序员阿伟
9
篇文章
2
次点赞
hhart
3
篇文章
4
次点赞
大龄码农
1
篇文章
5
次点赞
RTT_逍遥
1
篇文章
2
次点赞
ThinkCode
1
篇文章
1
次点赞
回到
顶部
发布
问题
投诉
建议
回到
底部