OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 4219|回复: 0

手机控制ESP8266获取天气预报

[复制链接]

0

主题

0

帖子

0

精华

新手入门

积分
2
金钱
2
注册时间
2021-2-7
在线时间
1 小时
发表于 2021-2-7 17:47:42 | 显示全部楼层 |阅读模式
本帖最后由 oldBrown 于 2021-2-7 17:54 编辑

本文介绍了如何通过手机控制ESP8266获取天气信息
先上视频:
1、优酷视频链接:手机控制ESP8266获取天气预报
2、简书文章链接


用到的硬件:
1、一部能运行微信的手机(搜索小程序:蓝牙串口助手)
2、HexCom-V1,如果没有,选择其它蓝牙模组代替
3、ESP8266模组
串口连接比较简单,VCC,GND两根直连,蓝牙的TXD,RXD和Wi-Fi的交叉连接。
硬件连接好后,主要是软件调试工作,软件调试分三部:
第一步:获取ESP8266常用指令打开小程序「收藏 」介面,从服务器获取ESP8266的指令集



第二步:修改指令。1、我们需要修改连接路由器指令AT+CWJAP中的SSID和密码
2、我们需要修改GET天气的密钥

因为我们获取天气信息需要用到心知天气的API,我们需要在https://www.seniverse.com申请免费试用,免费用户的权益:

  • 国内 370 个主要城市
  • 天气实况,包括天气现象文字、代码和气温 3 项数据
  • 未来 3 天天气预报,包括白天天气现象文字及代码、晚间天气现象文字及代码、当天最高温度和最低温度、风向风速
  • 6 项基本类生活指数,包括穿衣、紫外线强度、洗车、旅游、感冒、运动指数

上面这些功能对于我们调试足够了,我们需要一条GET命令从服务器获取天气信息,我们注册账号的目的主要是获取“私钥”替换下面URL中的your_private_key
将 API 密钥中的“私钥”作为 API 请求中的 key 参数值: https://api.seniverse.com/v3/weather/now.json?key=your_private_key&location=beijing&language=zh-Hans&unit=c
完成上面修改后,将布局保存到本地,防止误删。


第三步:开始调试
调试的步骤参考乐鑫官网给的“TCP client单连接透传”示例步骤:
按上面顺序一条条走,不出意外你应该能GET到天气的信息了,服务返回的JSON包格式如下:
{"results":[{"location":{"id":"WX4FBXXFKE4F","name":"Beijing","country":"CN","path":"Beijing,Beijing,China","timezone":"Asia/Shanghai","timezone_offset":"+08:00"},"now":{"text":"Sunny","code":"0","temperature":"3"},"last_update":"2021-02-07T09:50:00+08:00"}]}
temperature就是当前的天气。
至此,通过手机控制ESP8266获取天气的示例就完成了。












正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-6-8 15:48

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表