示例-luat示例-timeSync(时间同步)

如何用开发板实现时间同步功能

简介

时间同步有很多种方法,基站授时,GPS授时,ntp授时等等多种方法,本文介绍如何用Air724开发板,实现基站授时,ntp授时。

材料准备

1.EVB_Air724UG_A13开发板一套,包括SIM卡,USB线,天线。
2.PC电脑
3. luat开发环境:环境搭建方法
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-XlWEOiyD-1624935532750)(http://openluat-luatcommunity.oss-cn-hangzhou.aliyuncs.com/images/20210318195258834_32.jpg “undefined”)]

步骤

本文以demo\timeSync这个DEMO为例做演示。
Demo下载地址Demo

1.调用ril.regUrc()接口,当上报+NITZ时证明基站时间同步成功。

local function printTime()
    local tClock = os.date("*t")--查询模块系统时间
    log.info("printTime", 
        string.format("%04d-%02d-%02d %02d:%02d:%02d",tClock.year,tClock.month,tClock.day,tClock.hour,tClock.min,tClock.sec))
end

ril.regUrc("+NITZ", function()    
    log.info("cell.timeSync")
    printTime()--打印当前时间    
    bTimeSyned = false--打开NTP授时
end)

2.当接收到IP_READY_IND这条消息时,运行回调函数,进行NTP授时。

sys.subscribe("IP_READY_IND", function()
    if not bTimeSyned then                          
        ntp.timeSync(nil,function(tClock,success)  
            log.info("参数",tClock,success)      
            log.info("ntp.timeSync",success)
            printTime()
            bTimeSyned = success
        end)
    end 
end)

3.在了解并修改了DEMO后将demo和对应的底包下载到开发板,下载的方式这里不详细说明请参考环境搭建中的烧录章节

4.下载完成后重启,查看luatool工具日志,可以看到基站授时,NTP授时都成功了。
在这里插入图片描述
在这里插入图片描述

常见问题

相关资料以及购买链接

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值