ESP8266使用AT指令获取时间天气

图片

在某宝买了一个ESP8266串口WiFi模块NodeMCU,在客服帮助指导下测试OK!下面自学AT指令功能:

Vol.01

烧录固件

首先下载固件并烧录,串口CH340驱动、固件bin文件/烧录软件都可以在网络上找到,客服也可以提供。

我觉得还是官网给的固件比较好!

安信可官网固件下载地址:

https://docs.ai-thinker.com/%E5%9B%BA%E4%BB%B6%E6%B1%87%E6%80%BB

图片

图片

烧录软件如图

Vol.02

获取网络时间

一般烧录完成后需要复位或重新上电。

图片

图片

注意选择正确的串口号(查看设备管理器)、波特率一般是115200,正常情况下打开串口,就可以发送了。

AT(返回OK)

AT+CWMODE=1

(设置为STATION接收模式)

AT+CWJAP="WiFi名称","WiFi密码"

(连接无线网络)

AT+CIPMUX=0

(设置为单连接模式)  AT+CIPSTART="TCP","quan.suning.com",80

(建立通信连接,返回 CONNECT,成功连接服务器)

AT+CIPMODE=1

(开启透传模式)

AT+CIPSEND

(开始透传,返回ok换行>)

GET http://quan.suning.com/getSysTime.do HTTP/1.1

Host: quan.suning.com

(GET方法需要URL和http协议版本、主机名,我刷的固件后面必须有协议版本和主机名)

图片

最后会返回

{"sysTime2":"2024-01-03 15:08:30","sysTime1":"20240103150830"}

很明显提取到“systime2”就可以定位时间数据了(至于前面无用的一坨数据如何取消,我也没搞懂,欢迎高手指点)。

结束透传模式需要发送不换行的+++。

时间戳API接口还有很多,例如

http://api.m.taobao.com/rest/api3.do?api=mtop.common.getTimestamp

这个提供的是自1970年1月1日以来的毫秒数(很大很变态的一个数)。

Vol.03

获取心知天气

   —————

(此处插播一条广告)

心知天气成立于2016年,隶属于北京心知科技有限公司,是国内领先的气象服务提供商,是中国气象局授权企业和国家级高新技术企业,致力于利用气象等自然界大数据和人工智能技术,帮助企业优化运营,提高收益,降低风险,助力人类绿色可持续发展。

图片

心知天气 - 高精度气象数据 - 天气数据API接口 - 行业气象解决方案

https://www.seniverse.com/

关于使用心知服务的说明

https://docs.seniverse.com/api/start/start.html

登录心知天气网站免费注册申请,可以长期使用免费版(可以获取的信息较少,毕竟是免费的),获得API密钥(私钥),然后剩下的工作交给AT固件了。

AT+RST(初始化,我刷的固件可以重新连接WiFi)

AT+CIPSTART="TCP","api.seniverse.com",80

(建立通信连接,返回 CONNECT,成功连接服务器)

AT+CIPMODE=1

(开启透传模式)

AT+CIPSEND

(开始透传,返回ok换行>)

GET https://api.seniverse.com/v3/weather/now.json?key=你的密钥&location=qingdao&language=zh-Hans&unit=c

(我的密钥是免费的,此处就不分享了,可以明显看到我申请的是山东最大的城市青岛(qingdao Tsingtao Beer)的天气,zh-Hans中文简体)

图片

返回数据:

{"results":[{"location":{"id":"WWMT5Q64CR3G","name":"青岛","country":"CN","path":"青岛,青岛,山东,中国","timezone":"Asia/Shanghai","timezone_offset":"+08:00"},"now":{"text":"晴","code":"0","temperature":"4"},"last_update":"2024-01-03T15:14:24+08:00"}]}

免费的数据确实不多,有用的只有“天气晴,温度4℃”。

作为爱好者可以入手DIY一下,后期准备加显示屏制作WiFi天气时钟。

  • 18
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值