树莓派 CM4 RTC 时间同步

news2024/12/28 5:00:07

需求:树莓派 接pcf85063a RTC模块进行时间同步,上层使用Qt 开发应用,进行时间的读取与设置

一,树莓派配置:

/boot/config.ini 文件 修改

 二,读取时间  直接读取系统时间

TIME TimerManager::getSystemLocalTime()
{
    TIME t;
    time_t timep;
    struct tm *p;
    time(&timep);
    p = localtime(&timep);
    t.year = 1900+p->tm_year;
    t.month = 1+p->tm_mon;
    t.day = p->tm_mday;

    t.hour = p->tm_hour;
    t.minute = p->tm_min;
    t.second = p->tm_sec;
    return t;
}

三,设置时间 先设置系统时间,然后将系统时间 同步到rtc

bool TimerManager::setSystemLocalTime(TIME time)
{
    extern int errno;
    struct tm p;
    struct timeval tv;
    //获取时区 保存在tz中
    gettimeofday(&tv,NULL);

    p.tm_year = time.year-1900;
    p.tm_mon = time.month-1;
    p.tm_mday = time.day;
    p.tm_hour = time.hour;
    p.tm_min = time.minute;
    p.tm_sec = time.second;

    time_t utc_t = mktime(&p);

    tv.tv_sec = utc_t;
    tv.tv_usec=0;


    if(settimeofday(&tv,NULL)!=0){
        char *mesg = strerror(errno);
        LOGI("setSystemLocalTime error  {} {} {} ",tv.tv_sec,errno,mesg);

        return false;
    }

    //系统时间写道硬件里
    QProcess::execute("sudo hwclock -w");
    return true;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/568105.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【高级语言程序设计(一)】第 7 章:指针

目录 一、指针和指针变量 (1)指针 (2)指针变量 (3)指针变量的定义 (4)指针变量的初始化 (5)指针变量的一般使用 ① 给指针变量赋值 ② 直接使用指针…

java基础知识快速入门总结

你好,世界! 1、源代码组织方式 Java程序由packageclass组成,package对应目录的相对路径,class对应文件,如 E:\Workspaces\MyEclipse 10\JavaStudy\src\com\happyframework\javastudy\hello\Hello.java 关于class有如…

中国人民大学与加拿大女王大学金融硕士——在职人员成长路上的选择与追求

在职人员职场充电,选择中国人民大学与加拿大女王大学金融硕士项目是正确的吗?其实每个选择都有各自的收获和代价,不能简单的用“优劣”、“好坏”去衡量。要看这个选择是否给给予你想要的,还要看这个选择的代价是否是你愿意承受并…

SpringBoot Controller层传入的参数进行解密

一、 应用场景 当和第三方应用对接系统的时候, 可能别人的参数加密方式和我们的不相同,那就需要和对方沟通好他们的接口参数是如何加密的,达成一致后才方便后续的工作开展。 二、示例说明 采用Springboot 项目开发,先在compone…

feat:使用企业微信企业微信JS-SDK的onMenuShareAppMessage()实现点击转发自定义分享内容(TypeScript)

背景:企业微信应用使用企业微信JS-SDK的分享接口实现分享样式自定义 原生: 需要实现成: 企业微信JS-SDK 是企业微信面向网页开发者提供的 基于企业微信内 的网页开发工具包。 通过使用企业微信JS-SDK,网页开发者 可借助企业微信…

单片机的UART升级固件流程

文章目录 单片机的烧录方式ISP In-Systen Programming 系统编程ICP In-Circuit Programming 电路编程IAP In-Application Programming 应用编程BootLoader 引导程序 串口下载的重难点启动流程基于IAP设计的STM32程序启动流程 随着技术的发展,单片机的功能和性能得到…

AWS-S3通用存储操作,操作minio、oss、cos等所有兼容s3协议的云存储(含有大文件分片上传实现)

一、介绍 通用存储操作common包&#xff0c;支持所有兼容amazon-s3协议的云存储&#xff0c;如minio、oss、cos等&#xff0c;以后客户用啥云储存一套代码都能搞定了&#xff0c;真棒~ 二、代码结构 三、代码实现 3.1 pom.xml <?xml version"1.0" encoding&q…

平安银行广州分行立足地域文化,增强差异化权益服务软实力

立足地域文化&#xff0c;拓展差异化权益服务 瓦屋纸窗之下&#xff0c;一盏清茶&#xff0c;三五好友&#xff0c;怡然自若。中国人对茶的喜爱由来已久&#xff0c;茶文化已成为中华传统文化中一张亮丽的名片&#xff0c;而广东茶文化则是中国四大茶文化系列之一。平安银行广州…

链式哈希,一致性哈希,倒排表

在普通的查询中&#xff0c;通过关键码的比较进行查找&#xff0c;而哈希是根据关键码直接定位到数据项 哈希冲突&#xff1a;同一个关键码经过哈希函数后指向同一个记录集 链式哈希 using namespace std; #define M 13 typedef int KeyType; //typedef struct //{ // KeyTyp…

开放式耳机和封闭式耳机的区别有哪些?开放式耳机有哪些推荐?

开放式耳机和封闭式耳机的区别主要在以下几个方面&#xff1a; 设计结构&#xff1a;开放式耳机通常有一个开放的设计&#xff0c;不需要塞入耳即可收听音乐&#xff0c;同时与外部环境进行交互。封闭式耳机则是封闭的设计&#xff0c;耳机驱动单元之间是封闭和隔离的&#xf…

电子科技大学编译原理复习笔记(一):绪论

目录 前言 重点一览 语言的分类 冯诺依曼体系结构 绑定的概念 变量 虚拟机 程序单元 本章小结 前言 本复习笔记基于张老师的课堂PPT&#xff0c;供自己期末复习与学弟学妹参考用。 重点一览 语言的分类 命令式语言&#xff08;强制式语言&#xff09;&#xff1a;冯…

Activity的预览窗口StartingWindow添加

Activity的预览窗口StartingWindow添加 1、Activity组件启动2、ActivityStarter.java#startActivityInner() > 主要查看Task.java#startActivityLocked3、ActivityRecord.java#addStartingWindow到WindowManagerService.java#addWindow3.1 ActivityRecord.java#addStartingW…

一文搞定验证码(下部分)

文章目录 1.背景2.验证3.valid接口具体实现类SimpleImageCaptchaValidator 1.背景 上一篇文章讲了验证码生成的逻辑. 验证码-上篇. 大概来说就是: 服务端保存一些默认的验证码图片. 然后需要生成时创建一个包含随机字符的验证码字符图片根据随机字符和一些参数&#xff08;如…

新入职一个00后卷王,每天加班到2点,太让人崩溃了····

在程序员职场上&#xff0c;什么样的人最让人反感呢? 是技术不好的人吗?并不是。技术不好的同事&#xff0c;我们可以帮他。 是技术太强的人吗?也不是。技术很强的同事&#xff0c;可遇不可求&#xff0c;向他学习还来不及呢。 真正让人反感的&#xff0c;是技术平平&…

chatgpt赋能python:PythonScheme:为什么你应该考虑在你的下一个项目中使用它

Python Scheme&#xff1a;为什么你应该考虑在你的下一个项目中使用它 介绍 Python是一种常用的编程语言&#xff0c;被广泛应用于各种应用程序&#xff0c;包括Web开发、数据分析和人工智能。今天&#xff0c;我们要讨论的是Python编程语言的一种方言&#xff0c;名为“Pyth…

HR不会告诉你!Java程序员月薪8K和20K的区别!

昨天有同学问好程序员&#xff0c;为啥都是干Java程序员&#xff0c;别人可以拿20k&#xff0c;我才拿8k呢&#xff1f;为啥人家能提前转正我就得晚俩月&#xff1f;小源一听大事不妙&#xff0c;赶紧连夜整理了以下清单供大家check&#xff01; 对于刚入职场还有跳槽成功的同学…

【2023 · CANN训练营第一季】昇腾AI入门课(TensorFlow)微认证考试

1、下面哪个AI框架开发模型可以不用适配&#xff0c;直接在昇腾AI处理器上进行训练&#xff1f; A. PyTorch B. Caffe C. Mindspore D. Tensorflow C 2、使用Estimator进行脚本训练开发的一般步骤为&#xff08;A&#xff09; A. 数据预处理 --> 模型构建 --> 运行配置 -…

苏诗:医疗器械企业增长秘籍之CRM系统的 4 大能力建设

近些年&#xff0c;在国家医疗产业政策支持的推动下&#xff0c;医疗器械产业已进入蓬勃发展的“黄金时期”&#xff0c;医疗器械产品丰富度增加&#xff0c;配套服务体系逐渐完善&#xff0c;国产品牌效应进一步凸显。 医疗健康行业是纷享的战略行业之一&#xff0c;自2017年…

chatgpt如何自动生成角色prompt模板

chatgpt如何自动生成角色prompt模板 作者&#xff1a;虚坏叔叔 博客&#xff1a;https://xuhss.com 早餐店不会开到晚上&#xff0c;想吃的人早就来了&#xff01;&#x1f604; 一、角色prompt模板 下面是套图的chatgpt模板&#xff0c;你可以手动的进行填写。将角色的描述填…

如何把数据从 TDengine 2.x 迁移到 3.x ?

一.迁移背景&#xff1a; 随着时序数据库&#xff08;Time Series Database&#xff09; TDengine 3.0 的发布至今&#xff0c;我们除了在持续地优化产品质量的本身&#xff0c;也一直在努力地提升用户体验。但由于 3.0 底层有大量的重构优化&#xff0c;导致开源版的 2.0 用户…