三分钟使用HMI Board完成TCP ECHO服务器的搭建

电子说

1.3w人已加入

描述

简介

本文将使用 HMI Board 完成 TCP ECHO 服务器的搭建。得益于 RT - Thread 完善的设备驱动与其强大的软件包生态,此次开发完全做到0代码,并且可以在极短的时间内完成。

开发环境

RT - Thread Studio
RT - Thread 5.0.0
HMI - Board SDK 1.0.3
PyOCD 0.2.0

准备工作

在开始开发前请确保开发环境中的资源已经安装好,并且能够对 HMI - Board 的模板工程进行编译下载与运行。若编译出现问题请确保各环境版本与上文一致,或向 RT - Thread 社区寻求帮助。

使用到的软件包

RW007 V2.1.0
net_server V1.0.2

开始

创建工程

使用 RT-Thread Studio 新建 RT-Thread 项目

TCP通信

选择基于开发板,并且选择 HMI-Board 创建一个模板工程,具体参数如下:

TCP通信

点击完成,此时我们可以获得一个可以编译下载的基础工程,尝试编译工程,成功后即可进行下一步。

TCP通信

软件包配置

基础工程创建成功后,我们需要添加WIFI功能(RW007)及TCP服务器(NET_SERVER)功能。首先进入 RT-Thread Settings 界面:

TCP通信

添加 RW007

点击 RT-Thread Settings 界面右侧的 “详细” 按钮进入 “硬件” 选项卡:

TCP通信

点开 Board extended module Drivers 一栏,勾选 Enable RW007,保持默认设置:

TCP通信

点击左侧返回按钮返回主界面:

TCP通信

此时我们看到主界面已加入 RW007 软件包:

TCP通信

点击 rw007 卡片的 配置项:

TCP通信

选择版本号为v2.1.0,并且在 example driver port 一栏中选择 not use example driver, porting by myself (此处BSP已为我们移植好,无需再自己移植):

TCP通信

至此,RW007所有功能配置完毕,点击 返回 退回到主界面,准备下一个软件包的添加。

添加 NET_SERVER

点击 RT-Thread Settings 主界面的添加软件包,在弹出的页面中搜索 net_server 并点击软件包卡片上的 添加 按钮:

TCP通信

返回主界面进入 net_server 配置项界面(方法同RW007),勾选 Use TCP Server example :

TCP通信

此时该软件包配置完成。按下 CTRL+S 保存软件包设置。此时 RT-Thread Studio 会自动下载刚才选择的软件包并且配置到我们的工程中:

TCP通信

编译下载及运行

配置完软件包后点击编译

TCP通信

编译完成后连接开发板,点击下载。(注意下载可能有点慢,请耐心等待)

TCP通信

效果演示

下载完成后打开串口终端,输入 wifi join [SSID] [password] 连接上WIFI:

TCP通信

输入 ifconfig 查看当前网络信息:

TCP通信

图中 w0 的 ip 地址就是我们一会需要连接的IP。

输入 tcp_server_init 打开 net_server 的 echo server 例程:

TCP通信

此时我们的服务器就在 3333 端口上启动了。

打开网络调试助手,选择 TCP Client 连接 HMI-Board。在本例中即 192.168.8.199:3333(注意需要确保电脑与开发板连接的是同一个WIFI):

TCP通信

点击连接后可以看到终端输出了连接信息:

TCP通信

此时说明连接已经建立。

此时点击发送,可以看到接收框中会返回我们发送的信息,并且下方的发送计数与接收计数相同,说明 TCP Echo Server 运行正常 :

TCP通信

echo server 默认的心跳超时时间为1分钟,一分钟后不发送任何信息我们可以看到终端提示断开连接:

TCP通信

至此所有功能演示完毕。

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

全部0条评论

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

×
20
完善资料,
赚取积分