2021-6-2 11:35:24 [显示全部楼层]
7287浏览
查看: 7287|回复: 4

[求助问答] 如何用Obloq的http功能获取网络当前时间?

[复制链接]
本帖最后由 Forgotten 于 2023-8-22 10:30 编辑

问题:
在使用电脑的时候可以轻松通过网络校准自己的时间,但是在使用Arduino或者microbit等板子的时候如何获取当前的时间呢?

一般有两种方式:
第一种是使用时钟模块,它自带一个纽扣电池,设定当前时间之后,他会自动走时。
第二种方式就是通过网络获取时间了。

如果需要精确的时间,那么可以使用NTP服务器进行校准。
我们日常使用时间到秒即可,所以可以使用http请求普通的时间接口获取。

查资料:
网上搜了一下,看到了这个链接,其中苏宁的这个时间接口比较简单,直接给出了北京时间:
http://quan.suning.com/getSysTime.do
如何用Obloq的http功能获取网络当前时间?图1
因此尝试使用arduino uno+obloq模块获取网络时间。

实测:

打开Mind+,加载uno(使用microbit则选择microbit),加载通信模块中的obloq模块
这种网页访问不同于我们常规使用obloq物联网走的mqtt服务,这次我们使用他的http服务功能:
如何用Obloq的http功能获取网络当前时间?图2如何用Obloq的http功能获取网络当前时间?图3

编写程序:
将网址一分为二,前面的域名即为服务器,后面的为参数,填到两个积木中:
http://quan.suning.com/getSysTime.do
如何用Obloq的http功能获取网络当前时间?图4
运行,打开串口,obloq从红灯变蓝灯再到绿灯说明wifi连接成功,然后串口输出了服务器返回的时间。
测试成功。

取具体时间值:
得到的值是一长串的,如何只取出我们需要的部分呢?答案是使用运算符中的字符串查找和分割功能。

{"sysTime2":"2021-06-02 11:28:48","sysTime1":"20210602112848"}

例如我们要取2021-06-02 11:28:48这一段,则查找前面的":",然后让后数33到22即为需要的字符串了。

程序如下:

如何用Obloq的http功能获取网络当前时间?图5

结果如下:
如何用Obloq的http功能获取网络当前时间?图6

完。

晨硕  见习技师

发表于 2021-6-2 12:16:58

牛皮
回复

使用道具 举报

晨硕  见习技师

发表于 2021-6-4 14:19:32

我终于知道怎么用了?
回复

使用道具 举报

晨硕  见习技师

发表于 2021-6-4 14:19:53

谢了
回复

使用道具 举报

爱编程的小付  中级技师

发表于 2021-7-31 19:58:56

谢谢            
回复

使用道具 举报

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

本版积分规则

为本项目制作心愿单
购买心愿单
心愿单 编辑
[[wsData.name]]

硬件清单

  • [[d.name]]
btnicon
我也要做!
点击进入购买页面
上海智位机器人股份有限公司 沪ICP备09038501号-4

© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed

mail