如何在PSoC62 Evaluation kit开发板上运行RT-Thread呢?

描述

本文主要介绍如何在PSoC62 Evaluation kit开发板上运行RT-Thread,如何连接CYW43012 WiFi蓝牙模组,以及如何进行WiFi联网、网络延迟、网络带宽测试。本文主要在RT-Thread Studio环境下进行,只需要进行一些配置即可完成全部操作,整个操作过程不需要写代码,非常简单。

一、安装SDK

RT-Thread Studio可以在RT-Thread官网下载,安装没啥难度,这里不再介绍了。

打开RT-Thread Studio后,首先打开SDK Manager,

网络带宽

在RT-Thread SDK管理器界面,找到PSOC62-IFX-EVAL-KIT支持包,选中并安装:

网络带宽

以及调试器支持包:

网络带宽

二、创建项目

接着,通过RT-Thread Studio菜单栏,”文件”→“新建” → “RT-Thread项目”打开新建项目界面。

新建项目界面,按照如下步骤操作:

1、选中“基于开发板”;

2、开发板下拉菜单选择“PSOC62-IFX-EVAL-KIT”;

3、类型选择“示例工程”;

4、示例选择“cyw43012_wifi_demo”;

5、按照前面几步后,Project name已经自动填充了,可以修改,也可以不改;

如下图所示:

网络带宽

此时,点“完成”,就会创建项目目录了:

网络带宽

三、编译下载

3.1 编译代码

点击工具栏的锤子图标,编译项目:

网络带宽

或者使用快捷键Ctrl+B也可以。

3.2 下载程序

编译完成后,可以看到控制台输出了RAM和Flash占用:

网络带宽

接下来将CYW43012模组插到板子上:

网络带宽

网络带宽

然后,再通过USB线,将开发板连接到PC,注意连接到板子的DAP口。

再到RT-Thread Studio中,使用“下载”按钮,开始烧录:

网络带宽

或Ctrl+Alt+D即可进行烧录。

下载过程中,控制台窗口可以看到进度:

网络带宽

下载完成:

网络带宽

四、WiFi测试

接下来连接串口终端,我用的是MobaXterm,参数配置如下:

网络带宽

连接串口后,按下板子上的复位键,可以看到:

网络带宽

有RT-Thread系统启动日志,以及模组的固件信息。

接下来,我们进行一些简单的WiFi测试。

在RT-Thread的msh交互环境中,使用help查看当前已有哪些命令:

网络带宽

可以看到有一个wifi命令。

接下来我们查看wifi命令的使用方式:

网络带宽

4.1 扫描测试

尝试扫描周围的WiFi热点:

网络带宽

可以看到,成功扫描到了周围的WiFi热点。

4.2 连接测试

尝试连接其中的一个热点(这里连接的是无线路由器):

网络带宽

可以看到,成功连接上了WiFi热点。

五、延迟测试

ping命令可以输出玩咯延迟信息,可以作为网络延迟的简单测试工具。

5.1 ping百度

接下来,用 ping 命令测试一下,板子能不能ping通baidu.com:

网络带宽

可以ping通baidu.com,说明TCP/IP协议基本没有太大问题(域名解析OK,而且可以发送数据到公网主机)。

5.2 ping路由器

接下来,ping一下局域网的无线路由器:

网络带宽

作为对比,可以看一下笔记本ping路由器的延迟:

网络带宽

我的笔记本电脑连接的也是同一个无线路由器。

模组比笔记本的WiFi延迟高一些,不过还好,还算可以接受。

六、带宽测试

6.1 添加netutils软件包

RT-Thread的netutils组件中提供了iperf命令,可以用于测试网络带宽。

RT-Thread Studio中,双击“RT-Thread Settings”:

网络带宽

点击“添加软件包”,在弹出的搜索框中输入netutils,回车搜索:

网络带宽

点击“添加”,关闭搜索界面,回到RT-Thread Settings界面:

网络带宽

鼠标放到netutils组件上,点击悬浮菜单的“配置项”,netutils配置项下方的Version下拉菜单选择v1.3.3,打开“使能类似iperf的网络性能工具”,如下图:

网络带宽

此时,Ctrl+S保存配置,此时将会下载netutils软件包源码到本地,控制台可以看到下载进度:

网络带宽

重新,编译、烧录、运行,msh中就有iperf命令了:

网络带宽

6.2 iperf命令参数

在RT-Thread的msh中运行iperf,默认输出帮助信息:

网络带宽

可以看到iperf的命令参数使用方法。

注意:

1、RT-Thread的iperf命令实现中,对参数的顺序由要求,如果使用过程中发现参数报错,需要查看源码定位原因;

2、RT-Thread的iperf不支持持续时间选项,一般是先启动,后通过stop选项停止的方式控制测试时长;

6.3 PC端的iperf

PC端的iperf可以到iperf项目官网下载:https://iperf.fr/iperf-download.php

我使用的mobaxterm,里面自带了iperf命令,所以就不单独下载了:

网络带宽

6.4 iperf测试准备工作

进行iperf测试之前,需要准备:

最好用PC创建热点,用无线路由器也行,但是需要确保信号强度足够;

确保开发板和PC直接的距离不要太远,否则WiFi信号较弱,测试的结果可能会偏小;

最好在WiFi热点较少的环境下进行测试,否则测出的结果数据也会偏小;

6.5 进行iperf带宽测试

下面进行测试,测试步骤如下:

在PC上,启动iperf服务端:iperf -s -p

在开发板上,通过ping命令测试开发板和PC直接IP是否可达

在开发板上,启动iperf客户端:iperf -c 192.168.3.6 -p 5678 (其中192.168.3.6是PC的IP地址)

启动后,可以通过ps命令查看正在运行的线程

4.一段时间后,在开发板上,停止iperf客户端:iperf —stop

5.开发板上iperf停止后,PC端应该可以看到iperf的输出;

开发板上整个过程的输出如下:

网络带宽

PC端输出:

网络带宽

可以看到带宽为8.61Mbps(8.47是上一次测出来的值)。

6.6 iperf测试小结

实际上,影响WiFi带宽测试结果数据的因素很多。我们这里,其中,起决定性的的主要由以下几个方面:

模组本身支持的最高WiFi传输速率;

模组接口支持的最高工作频率;

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

热点的WiFi最高传输速率;

各种环境因素,例如开发板和PC直接的距离、环境是否有其他热点干扰等等;

我把开发板直接放到路由器天线边上,测到8Mbps以上的结果:

网络带宽

好了,本篇内容就到这里,感谢阅读。

原文链接:https://club.rt-thread.org/ask/article/b5b4beecd291c11c.html


 

审核编辑:刘清

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分