前言
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软件包
因为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软件包就可以解析数据了。