RW007模块连接ONENET之UART模式(一)

一,写在前面

有幸在2019年4月16日参加了RT-Thread上海举办的线下活动,由于时间关系当时计划一天完成的实验并没有做完,心里想着还是有些遗憾,结果培训结束幸运的抽到了ST送的F411开发板,然后RTT的邱总又送了一块RW007,这下连完不成的理由都找不到了。
实验数据观看地址(这里的数据均是发送的随机数并不表示真实CPU使用率)。

二,简介

本文使用 RW007 WiFi 模块 连接 STM32 Nucleo 开发板 ,通过运行 RT-Thread 操作系统,让开发板轻松愉快联网。

RW007

RW007 是由上海睿赛德电子科技有限公司开发的高速 WiFi 模块,模块基于 Realtek RTL8710BN WIFI SOC,使用 SPI/UART 与主机通信 .

在这里插入图片描述
模块支持 IEEE 802.11b/g/n 网络、 WEP/WPA/WPA2 加密方式和 STA 和 AP 模式,支持 airkiss 快速配网,并能存储多达 5 条连接信息。

STM32F411 Nucleo-64

STM32 Nucleo-64 是 ST 官方推出的开发板,搭载 STM32F411RE 芯片,基于 ARM Cortex-M4 内核,最高主频可达 100 MHz。

硬件资源上,Nucleo 具有 512KB Flash 和 128KB SRAM,丰富的板载资源,可以充分发挥 STM32 的芯片性能。
在这里插入图片描述
更多资料见 ST 官网介绍:https://www.st.com/en/evaluation-tools/nucleo-f411re.html

三,准备工作

在把 RW007 畅快跑起来之前,以下准备工作必不可少,你将需要:

  1. STM32 Nucleo-64 开发板(或其他支持 RTT 的板子)
  2. RW007 WiFi 模块
  3. Mini-USB 连接线(连接开发板与电脑)
  4. ENV 编译构建环境(安装使用说明)
  5. 开发常用软件(git、Keil5、串口调试等)
  6. 一颗爱折腾的心在这里插入图片描述

四, 上手使用

RT-Thread 包含了 RW007 的软件包,用户无需自己编写驱动程序。

下面以UART模式为例,介绍如何在STM32F411 Nucleo-64 上驱动 RW007 模块,并连接到ONNET。

在这里插入图片描述
STM32F411 Nucleo-64 ST_LINK带的虚拟串口使用的是uart2,所以为了方便调试,RW007使用UART6,
PA11 -> UART6-TX PA12->UART6-RX。然后这里需要2跟杜邦线把PA11 PA12连接到RW007的TX与RX,这里一定要注意不要接错了。
在这里插入图片描述
STM32 bsp 配置(Menuconfig)

本次实验所使用的 bsp 为 stm32f411-st-nucleo,克隆源码后,右键打开 ENV 窗口,输入 menuconfig 进行系统配置:

  1. 开启UART6(BSP已经支持用户,只需开启就行)
    进入 Hardware Drivers Config —> 下的 On-chip Peripheral Drivers,选择 Enable UART —>勾选UART2和UART6
    在这里插入图片描述
    UART2: FINSH组件
    UART6: 用于连接RW007

  2. 选择AT组件
    RW007的UART模式是通过AT指令来进行通讯,这里要选择AT组件。
    进入RT-Thread online packages—>中 选择 IOT - internet of things —> 选择 AT DEVICE。
    进入AT DEVICE —> 选择Realthead RW007在这里插入图片描述
    然后进入Realthead RW007设置接入WIFI的账号和密码(当然也可以在工程生成以后在rtconfig.h中修改),
    串口选择uart6
    在这里插入图片描述

  3. 配置ONENET
    在 IOT - internet of things —> 选择 IOT Cloud —>选择 ONENET
    在这里插入图片描述
    这里有几个名词需要注意,这里暂时可以不用设置,这些信息是在onenet注册后获取的
    device id : 设备ID
    auth info : 鉴权信息
    api key : API KEY
    product id: 产品ID
    master/product apikey : MASTER APIKEY

  4. 检查配置信息
    可以看到 MQTT webclient CJSON 都已经被选中
    在这里插入图片描述

  5. 开启network-samples
    路径RT-Thread online packages —> miscellaneous packages —> sample : kernel and components samples —> a network_sample package for rt-theread
    在这里插入图片描述
    这里需要注意勾选 tcp和udp 的client就行了,目前还不支持服务器模式。

  6. 重新生成工程
    首先使用 pkgs --upgrade 来更新ENV
    然后使用pkgs --update来更新组件
    最后使用 scons --target=mdk5 来生成工程(iar就是scons --target=iar)

五, 测试验证

  1. 编译

在这里插入图片描述
这里有13个警告,都是无害的,都是cjson里面的一些语法警告。

  1. 下载
    在这里插入图片描述
    这里能看到初始化已经成功了(如果不成功可以尝试先复位RW007之后再复位开发板),但是输入ifconfig的信息全部是0,这是因为AT组件并不是使用netdev模型。

  2. 通过网路助手测试tcp udp client 功能
    测试之前需要通过访问路由器去知道电脑和开发板的IP地址
    我这里电脑是192.168.1.101 开发板是192.168.1.100
    在这里插入图片描述

六, 写在最后

  1. 不需要自己完成一行代码就轻松的实现的RW007和电脑的互联,不得不说RT-Thread + RW007 真香;
  2. 如果需要使用RW007 SPI模式请移步
  3. 本文由我个人编辑并整理,难免存在一些错误;
  4. 仅供个人学习使用。
  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值