收藏官网首页
查看: 34842|回复: 3

[资料分享] arduino 获取网络时间

2

主题

9

帖子

288

积分

中级会员

Rank: 3Rank: 3

积分
288
跳转到指定楼层
楼主
发表于 2019-8-21 20:30:53 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
免费使用STM32、APP自动代码生成工具
       大家好,我是Guc。最近在弄arduino获取网络时间,不知道怎样可以简单读取库里结构体的变量,弄了好久都不行,希望大家能分享给我;这里我只好用了笨办法,在库里加个函数,来获取数据,具体如下:
  gizwits_protocol.h添加结构体
typedef struct
{
    uint8_t hour;
    uint8_t minute;
    uint8_t second;
}mytime_t;


添加函数原型
mytime_t  returnmytime(void);//时间获取函数

gizwits_protocol.c添加函数
mytime_t ICACHE_FLASH_ATTR returnmytime(void)
{
mytime_t  mt;
protocolTime_t *ptime = (protocolTime_t *)(uint8_t *)&gizwitsProtocol.TimeNTP;
mt.hour=ptime->hour;
mt.minute=ptime->minute;
mt.second=ptime->second;
return mt;
}


void的里添加
gizwitsGetNTP();
mytime_t mtime= returnmytime();//结构体时间获取函数
uint8_t hours=mtime.hour;
uint8_t minutes=mtime.minute;

就这些了,欢迎交流。


99

主题

123

帖子

1695

积分

金牌会员

Rank: 6Rank: 6

积分
1695
推荐
发表于 2019-8-22 10:26:39 | 只看该作者
视频操作版获取NTP网络时间:https://b23.tv/av61558323
第一步:需要配网成功才能获取精确时间  (配网成功返回一个值,添加一个标志位和变量,记住当前是否联网的状态)。
第二步:调用gizwitsGetNTP函数时不能一直调用,所以我们这里设置两个定时器,(定时器初始化和一秒钟的时间值)。
第三步:在中断函数中编写相关代码(联网成功时请求获取时间、以及打印时间的函数)。
第四步:将程序编译,无问题,则将程序下载到开发版中。
第四步:打开机智云APP,进行配网,配网成功后,可以在XCOM中查看打印出的时间
回复 支持 1 反对 0

使用道具 举报

3

主题

8

帖子

212

积分

中级会员

Rank: 3Rank: 3

积分
212
板凳
发表于 2020-1-3 14:50:10 | 只看该作者
请问这里的“void”是指哪里

ESRF.png (13.82 KB, 下载次数: 249)

ESRF.png

点评

Guc
主程序里  详情 回复 发表于 2020-2-15 10:37

2

主题

9

帖子

288

积分

中级会员

Rank: 3Rank: 3

积分
288
地板
 楼主| 发表于 2020-2-15 10:37:54 | 只看该作者
hzc1111 发表于 2020-1-3 14:50
请问这里的“void”是指哪里

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

本版积分规则

加入Q群 返回顶部

版权与免责声明 © 2006-2024 Gizwits IoT Technology Co., Ltd. ( 粤ICP备11090211号 )

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