0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

时间函数:与时间相关那些事。。。

青山老竹农 来源:jf_82863998 作者:jf_82863998 2024-10-14 07:01 次阅读

​在LuatOS中,获取时间函数用得最多的就是os.time()函数。

应很多同学要求,今天,我会讲一些与这个函数以及其他时间函数相关的知识。

一、时间戳相关

os.time()这个函数,只能获取当前时间戳;如果客户希望获取的是当前时间,即相应的年月日时分秒,可以使用os.date()函数。

参考下面的示例**:**

图片

关于位数:

比较遗憾的是,Lua只有秒级时间戳,没有毫秒以及微秒级时间戳,暂时没有什么好的办法解决该问题。

二、时间同步

理论上4G模块在驻网(链接基站成功)以后,基站会发送当前时间给4G模块(此过程被称为 基站授时 )。也就是说,只要模块驻网成功,内部时间是没有问题的,

但是,通过大量的事实验证下来,某运营商部分卡无法与基站进行授时操作,部分基站同步给4G模块的时间也有极小概率出错。

所以,除了基站授时,预备情况下,还准备了NTP授时服务器对模块进行授时操作。 此处专网卡客户需要注意 —— 如果时间参数对你比较重要,需要将NTP授时服务器的域名加入运营商白名单中。

2.1 基站时间同步:

除上述某运营商的部分卡以外,多数情况下,只要驻网成功内部就会更新时间。

如果驻网不成功,那么4G模块会从2000年00时00分00秒进行计时。所以用户需要获取时间的应用场景下,尽量等到联网成功,有时间同步信息发出来再进行。

LuatOS版****本示例:

图片

AT版本:

可以查看开机的打印,开机打印如下。

图片

注:此处时间为格林尼治时间,需要+8才是中国区时间。

2.2 NTP服务器授时:

如果用户对基站授时的准确性有疑虑(之前也出现过基站授时比实际时间差了16天的情况),可以关闭基站授时,转而使用NTP授时服务器去给模块进行授时。

现在有一些免费公开的NTP授时服务器,如阿里云、腾讯云。

当然,如果对授时要求比较高,需要稳定可靠的时间同步机制——建议自建NTP授时服务器。

LuatOS版本示例:

图片

三、基础应用

定时休眠定时唤醒:

在一些对功耗要求比较严格,但是只需要定时数传的场景下,时间应用的重要性就出来了。

用户可以使用合宙自研低功耗模式,定时唤醒模块进行数传,数传后又进入休眠模式。具体实现可以参考下方链接。

四、进阶应用

获取当前时间的后一天凌晨零点到一点随机时间戳:

多数情况下,需要对系统留有OTA的余地。为了让用户无感升级, 需要对OTA的时间进行限制,比如凌晨0点。 但是如果所有设备都在凌晨0点对设备进行升级,升级服务器无法处理高并发,可能会导致各种异常出现。

所以就需要在用户指定的一个时间段内进行升级,最为稳妥。

接下来的LuatOS脚本,就获取到了当前时间的后一天凌晨零点到凌晨一点的随机时间戳,并与当前时间戳进行计算,好给休眠模式下的OTA应用做出一个具体的休眠时间(秒数)设置。

LuatOS版本示例:

图片


今天就分享到这里了~如果你对时间应用有其他疑问,欢迎来找合宙,咱们一起学习一起进步。
审核编辑 黄宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 服务器
    +关注

    关注

    12

    文章

    9010

    浏览量

    85160
  • NTP
    NTP
    +关注

    关注

    1

    文章

    157

    浏览量

    13879
  • 时间函数
    +关注

    关注

    0

    文章

    2

    浏览量

    5618
收藏 人收藏

    评论

    相关推荐

    esp32获取时间戳的相关函数是哪个?

    esp32 获取时间戳的相关函数是哪个,我用了sntp_get_current_timestamp这个函数,编译的时候说找不到,有没有相关
    发表于 06-11 07:26

    时间总是不准该怎么办?

    仪表时间
    风雷仪表
    发布于 :2023年08月17日 13:02:01

    LABIVEW中的时间节点函数

    或者19位浮点数表示时间,以秒为单位,开始时间是1904年1月1日星期5 12:00 am(UTC).LABVIEW在函数面板中有几个时间相关
    发表于 05-28 14:52

    示波器的那些-示波器上升时间

    0.35,带宽>1GHz的示波器k值通常在0.40和0.45之间。 总结 本章内容只是介绍示波器的上升时间,继续关注日图科技,将持续为您送出有关示波器的相关技术,下章预告:示波器的带宽。 阿里巴巴直通车:深圳市日图科技有限公司 微信:Ritu-17微博:日图科技Ritu
    发表于 04-11 14:38

    时间函数

    哪位大牛 能指导下在C语言中 除了 用定时器 、延时函数、 循环自加外 还有什么函数可以达到 计算时间的?
    发表于 01-18 08:47

    pH计和电导率仪那些

    于pH计和电导率仪那些,好资料一起分享,问题向咱们的专家发问一起探讨哦,,俺们会第一时间将问题抛给最资深的专家滴。。。哈哈~~~
    发表于 11-05 09:14

    在main函数运行之前,你不得不知的那些

    在main函数运行之前,不得不知的那些在c_int00函数中完成的功能有哪些?
    发表于 04-20 06:03

    请问时间校准函数是哪个?

    请问时间校准函数是哪个?我设备里面没有网络,无法通过NTP校时,只能通过蓝牙和串口将时间传输到ESP32。没找到时间设置的相关
    发表于 02-15 07:55

    连续时间系统的系统函数

    连续时间系统的系统函数一、引言1.系统函数的定义系统函数H(s)定义为系统的零状态响应的LT¡ R(s)与激励的LT¡E(s)之间的比值:2.H(s)、H( p
    发表于 10-04 09:25 0次下载

    深入了解电路噪声的那些

    模拟电子的相关知识学习教材资料——深入了解电路噪声的那些
    发表于 09-27 15:19 0次下载

    栅栏函数验证连续系统的有界时间安全性

    个系统的安全性.近年来,已有一些工作讨论连续系统在无界时间情况下的栅栏函数生成.但是对于有些系统,人们可能只关心其在有界时间内的安全性.因为在无界时间内不安全并不能说明在给定
    发表于 01-16 17:50 0次下载

    51单片机的时间相关函数程序免费下载

    本文档的主要内容详细介绍的是51单片机的时间相关函数程序免费下载,函数使用了long变量,比较占RAM,单片机要是空间紧张就别用了,会把mcu算糊涂的。
    发表于 04-15 18:24 11次下载
    51单片机的<b class='flag-5'>时间</b>戳<b class='flag-5'>相关</b><b class='flag-5'>函数</b>程序免费下载

    舵机控制那些(附STM32代码!!!)

    舵机控制那些(附STM32代码!!!)
    发表于 12-08 18:51 49次下载
    舵机控制<b class='flag-5'>那些</b><b class='flag-5'>事</b>(附STM32代码!!!)

    来看下CAPL都提供哪些获取当前时间函数吧!

    在自动化开发中,无论是CAN通信测试,还是网络管理测试,亦或是休眠唤醒等等存在时间相关的,都可能会使用相关时间函数
    的头像 发表于 05-19 14:24 5906次阅读
    来看下CAPL都提供哪些获取当前<b class='flag-5'>时间</b><b class='flag-5'>函数</b>吧!

    合宙LuatOS应用,与时间相关那些

    ()函数了。 接下来,我会讲一些与这个函数以及其他时间函数相关的知识。 一、时间
    的头像 发表于 09-25 07:25 181次阅读
    合宙LuatOS应用,与<b class='flag-5'>时间</b><b class='flag-5'>相关</b><b class='flag-5'>那些</b><b class='flag-5'>事</b>