硬件环境

ART-PI(其他开发板也可以)

LD3320语音模块

板载wifi(ESP8266也可以)

“一张会说话的嘴”

软件环境

RT-Thread studio 版本2.1.1

webclient V2.1.2

mbedTLS V2.7.10.1

cjson V1.7.14

netutils V1.3.1

fal V0.5.0

本次的知识点还是相当的丰富的,搬好小板凳,泡杯茶,坐一会慢慢看吧...

wifi配置

在LD3320的工程基础之上,来添加wifi,ART-PI上板载的wifi模组是AP6212,是蓝牙于wifi一体的模组,本次我们只使用wifi功能

历史天气数据接口(使用RTT语音控制获取心知天气信息)(1)

在setting勾选即可,对应的宏为ART_PI_USING_WIFI_6212_LIB,勾选之后,工程会自动添加相关宏定义控制的代码

历史天气数据接口(使用RTT语音控制获取心知天气信息)(2)

历史天气数据接口(使用RTT语音控制获取心知天气信息)(3)

完了,CTRL S保存到我们的工程就可以了...好像啥也没干,来看看效果是怎样的

在控制台可以看到,很多关于网络的配置已经初始化完成了,终端输入wifi,可以看到几个关于wifi的指令,本次用到的是wifi的AP功能,连接家里的wifi

历史天气数据接口(使用RTT语音控制获取心知天气信息)(4)

输入wifi scan,来看看附近都有哪些“hot pot”,还是有几个的,也不隐藏了,欢迎过来蹭网~

历史天气数据接口(使用RTT语音控制获取心知天气信息)(5)

使用wifi join命令加入网络即可,千万不要跟着教程输入我家的...

wifi join "你家热点名称" "你家无线密码"

网络状况好像不太好,还重连了,顺便把重连功能验证了,连接成功之后,可以看到是自动获取IP地址的,输入ifconfig,来看看获取到的地址相关的,DHCP功能是使能的

历史天气数据接口(使用RTT语音控制获取心知天气信息)(6)

接下来,开发板“点灯”,网络经典ping百度...还算比较顺利

历史天气数据接口(使用RTT语音控制获取心知天气信息)(7)

就这样,我们的wifi就完成了,对,就这样...一行代码没写,sun le dog,好怀念写代码的日子

这样直接添加wifi功能的方式,掉电是不会保存wifi信息的,需要重新wifi join

HTTPS访问组件配置webclient 软件包

setting->Add->输入webclient->确认找到对应软件包

历史天气数据接口(使用RTT语音控制获取心知天气信息)(8)

双击打开可以详细看到关于此软件包的用法

点击获取1V1嵌入式学习规划,现在还送100G精选学习资料http://makerschool.mikecrm.com/6R13y5p

历史天气数据接口(使用RTT语音控制获取心知天气信息)(9)

历史天气数据接口(使用RTT语音控制获取心知天气信息)(10)

-点击软件包,进入详细配置界面,

历史天气数据接口(使用RTT语音控制获取心知天气信息)(11)

mbedtls软件包

使能mbedtls功能之后,mbedtls软件包自动添加,mbedTLS(前身 PolarSSL)是一个由 ARM 公司开源和维护的 SSL/TLS 算法库。其使用 C 编程语言以最小的编码占用空间实现了 SSL/TLS 功能及各种加密算法,易于理解、使用、集成和扩展,方便开发人员轻松地在嵌入式产品中使用 SSL/TLS 功能

历史天气数据接口(使用RTT语音控制获取心知天气信息)(12)

详细配置

历史天气数据接口(使用RTT语音控制获取心知天气信息)(13)

注意:

在调试的时候,获取不同的信息时,有时候返回的数据量太大,报错-0x7200

历史天气数据接口(使用RTT语音控制获取心知天气信息)(14)

不要慌,百度错误码,可能是数据buffer太小了,增大buffer即可解决

历史天气数据接口(使用RTT语音控制获取心知天气信息)(15)

历史天气数据接口(使用RTT语音控制获取心知天气信息)(16)

关于证书的内容就比较多了,小伙伴可以自行百度或者查看mbedtls软件包的使用教程

netutils

这里汇集了 RT-Thread 可用的全部网络小工具集合,你所需要的小工具都可以在这里找到。

历史天气数据接口(使用RTT语音控制获取心知天气信息)(17)

TLS 握手是证书验证需要时间的验证,添加此网络工具用于时间同步

原文作者:果果小师弟

原文链接:https://mp.weixin.qq.com/s/9IF-v7Z6clFyzeMOPjtUPw

原文标题:使用RTT语音控制获取心知天气信息

,