RT-Thread ART-PI 学习笔记:网络功能使用和websocket软件包获取心知天气

前言

ART-PI自带的AP6212 WIFI模块,在RT-Thread Studio中来配置网络功能非常方便。本文主要配置ART-PI的网络功能,并且使能websocket软件包获取心知天气的数据。

ART-PI的网络功能是基于RT-Thread的WLAN设备框架,详细内容可参考以下链接:

参考资料

前期准备

软件准备

  • RT-Thread Studio:一站式的 RT-Thread 开发工具,通过简单易用的图形化配置系统以及丰富的软件包和组件资源,让物联网开发变得简单和高效。官网链接

硬件准备

  • RT-Thread 推出的ART-PI STM32H750开发板

添加网络功能

直接在自己的工程中使能AP6212库即可,编译下载后使用WLAN设备驱动的命令即可观察到现象。

通过官方提供的例程直接使能网络功能

官方的示例工程不仅完成了网络功能,还通过配置easyflash实现了wifi自动重连功能,值得借鉴,自动重连功能的实现流程见参考博客3.

编译下载观察现象


由于有自动重连功能,我烧写进板子后,自动搜索easyflash区域是否有相应数据,如果有,就用这个数据重连WiFi。

配置RTC和NTP软件包

RTC设备驱动文档

因为webclient软件包中若开启支持HTTPS加密的网络协议,就必须使板子上的时间和网络时间同步,否则无法使用HTTPS获取网络上的数据。需要配置软件模拟RTC,并且使能netutils软件包中的ntp协议,使RTC自动同步网络时间。

使能软件模拟RTC

使能netutils软件包,并且使能ntp协议

这时候会发现RTC设备已经自动配置了自动同步网络时间的功能。

编译下载观察现象,会发现网络时间同步成功

配置webclient软件包

TLS模式中选择MbedTLS,并且使能获取发布示例


保存配置并编译

心知天气配置

https://www.seniverse.com/ 心知天气网址
注册并购买一个免费版的就可以了,在控制台上可以看到这样的信息

找到文档中逐日天气预报和昨日天气

点击链接就可以看到效果。location改成ip,就可以看到当地的天气。

复制这个链接,在开发板上实验即可观察到现象

获取天气实验

因为链接比较长,需要把finsh长度设置的长一点。串口助手的长度也要相应设长。

编译烧写,并将刚才的网址输入终端,即可看到现象,https还有点问题,但是已经不影响使用了。

改成http就没问题了

返回的数据是json格式的,使用cjson软件包就可以解析数据了。

Powered by Hexo and Hexo-theme-hiker

Copyright © 2013 - 2021 张竞豪的小岛 All Rights Reserved.

UV : | PV :