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

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

3天内不再提示

如何用单片机做一个高精度的时间钟的具体方案与实现方法

Q4MP_gh_c472c21 来源:嵌入式ARM 作者:嵌入式ARM 2021-04-08 10:48 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

理论上

只要是用晶振作为时基的单片机时间钟,在常温下做到日差1秒之内,甚至更精准是应该极易达成的。

只是许多人并不知道如何达成这个目标的方案。

而且市面很多带单片机的产品中,时间都做不准,这绝对是设计问题。例如:笔者车子上的时钟日差有10秒多。

一般大多数人所设计的定时器时常,是根据晶振标出的数据(如12M)计算而成的,固定不变,设计呆板。但普通晶振的实际振荡频率是不可能与标出的数据完全相同的,例如:12.00043M,11.99985……,这个误差必然积累,所以时钟就不准了。另外绝大多数设计也没有考虑微调方案,对于日差几秒无法控制。

日差1秒要求的精准是:1秒/(24小时*60分*60秒),对应12M晶振;当频率是12.000014M或11.999986M,日差就有1.2秒。可见用普通晶振做的时间钟,如果不采取修正措施,会因精度不够,时钟日差10多秒是很普遍的。

在笔者设计的有单片机时间产品中,随机取10个,同时上电,3天后再看时钟,它们之间的最大时间误差,一般都不会超出1秒(普通晶振,不联网)。许多产品月差在1秒之内。

1、实现方法:

1)将时间的定时中断时常数做成可修正的,且加入微调常数,定时时常数与微调时常数在FLASH中取得。微调时常数用于修正时常数的小数点之后的部分。

2)程序可以对某端口输入的秒脉冲再进行计算,并据之修正定时器的时常数,以及微调常数,并存入FLASH中。达成利用外部精准脉冲源对时钟进行校准的目的,说白了,就是用外校消除普通晶振的个体差异。同时程序也可以输出自己的秒脉冲,这样就可以达成产品之间的互校。

3)选择一个产品,对其时钟进行精确校准(这需要外部精准的时钟源。如果手中没有,可以多花点时间,用手机、电视、广播上的报时进行校准),这样就可以将它做成一个自己的【标准秒脉冲时钟源】。

4)产品出货前,用自己的【标准秒脉冲时钟源】校一下(将输出的标准秒脉冲送入其它产品的校准端口,让其它产品自动完成定时器时常数及微调常数的修正。)

如此处理,时间钟的精度就取决于晶振的稳定度,而不是精度。而晶振的稳定度普遍可以达到PPM级,当环境温度变化不大时,极易保证《11.57PPM,这就达成了日差小于1秒的目的。

2、产品相关时间基准的程序:

(只提方案,不提程序代码

1)将端口输入的秒脉冲与本体的晶振频率进行比对,计算出定时器的时常数与微调时常数(只做一次即可,计算结果保存到FLASH了,其最初值是按晶振的标称值计算确定的)。

2)时间微调补偿。

3)秒脉冲输出(用于互校,可以放弃不写)。

要点:定时器的时常数不是程序直接赋值,而是从FLASH中调取的。
编辑:lyn

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

    关注

    6074

    文章

    45340

    浏览量

    663519
  • 晶振
    +关注

    关注

    35

    文章

    3442

    浏览量

    72641

原文标题:如何用单片机做一个高精度的时间钟方案?

文章出处:【微信号:gh_c472c2199c88,微信公众号:嵌入式微处理器】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    使用单片机系统时间不准怎么办?

    使用单片机系统时间不准,怎么办?具体的是与晶振有关系还是MCU内部有关系,时间长显示的时间就慢
    发表于 12-05 07:51

    单片机系统硬件的调试方法

    单片机的系统硬件调试,通常有静态调试和动态调试两种不同,前者是通过目测、万能表测试、加电检查、联机检查的方法,在加电于样机之前.对样机的型号规格,以及安装要求等进行核对,同时检查 电源 系统.防止
    发表于 12-03 06:10

    为什么单片机还在用C语言编程?

    的存储空间非常有限,我们使用者需要靠精打细算来设计程序,根本经不起高级语言臃肿的代码体积。高级语言也无法实现精确的时序控制。 三、C语言是折中选择 其实用C语言开发单片机
    发表于 11-28 07:37

    协议转换后的时间同步精度如何保证?

    协议转换后的时间同步精度,核心通过 “ 源头统对时 + 过程低延迟转发 + 末端偏差校准 ” 三层机制保障,最终可实现从亚微秒级(电力关键场景)到毫秒级(工业 / 物联网场景)的
    的头像 发表于 11-12 14:00 395次阅读
    协议转换后的<b class='flag-5'>时间</b>同步<b class='flag-5'>精度</b>如何保证?

    单片机承载科技与工程思维的核心平台

    ,还是工业自动化、嵌入式系统,单片机都扮演着不可或缺的角色。它不仅仅是芯片,而是承载着技术与工程思维的核心平台,其重要性不言而喻。 单片机
    的头像 发表于 09-29 01:07 366次阅读

    怎么测单片机系统频率

    单片机系统频率是指单片机工作时的时钟频率,它直接影响单片机的运行速度和处理能力,准确测量系统频率对单片机应用开发、程序调试和性能优化具有重要意义。测量
    的头像 发表于 07-25 11:39 476次阅读

    时统设备高精度时间同步解决方案:为数字化时代注入精准时间基因

    协同的场景都依赖高精度时间基准。然而,传统时间同步方案存在精度不足、稳定性差、抗干扰能力弱等问题,难以满足现代科技对
    的头像 发表于 06-06 14:04 525次阅读

    高精度单斜率AD及其单片机实现

    辩率,高线性度及低成本的特点正得到越来越多的应用。 TI 公司的 MSP430F1121 单片机内带有模拟比较器,因此,只须外接只电阻和电容即可构成
    发表于 05-30 14:51 1次下载

    方案分享 | 高精度时间同步技术的实现与应用

    如何通过硬件级PTSS/CTSS技术实现亚微秒级时间同步,支持多传感器数据精准对齐?PSB+QX550方案采用GPS/PPS/本地时钟冗余设计,具备动态容错功能,适用于自动驾驶测试等需要高精度
    的头像 发表于 05-28 09:49 1908次阅读
    <b class='flag-5'>方案</b>分享 | <b class='flag-5'>高精度</b><b class='flag-5'>时间</b>同步技术的<b class='flag-5'>实现</b>与应用

    单片机和伺服有什么区别

    : 1. 定义与功能 特性 单片机(Microcontroller) 伺服系统(Servo System) 定义 种集成CPU、内存、I/O接口的微型计算机芯片,用于控制设备。 种由伺服电机、编码器
    的头像 发表于 05-26 09:18 581次阅读

    瑞萨RA8D1单片机IO中断配置实现方法

    本文为结合瑞萨e2 studio工具,以及CPKCOR_RA8D1B评估板,给大家讲述瑞萨RA8D1单片机IO中断配置实现方法
    的头像 发表于 04-09 15:05 1517次阅读
    瑞萨RA8D1<b class='flag-5'>单片机</b>IO中断配置<b class='flag-5'>实现</b><b class='flag-5'>方法</b>

    高精度晶圆划片切割解决方案

    高精度晶圆划片切割解决方案实现高精度晶圆切割,需从设备精度、工艺稳定性、智能化控制等多维度优
    的头像 发表于 03-11 17:27 731次阅读
    <b class='flag-5'>高精度</b>晶圆划片<b class='flag-5'>机</b>切割解决<b class='flag-5'>方案</b>

    用dac7742y做一个高精度的锯齿波,无波形输出是怎么回事?

    想用dac7742y做一个高精度的锯齿波,可发现无波形输出。 按技术文档中的常规电路连接 Vss:-15v,Vcc:+15v,Vdd:5v . 时序 按 技术文档来操作:比如说写时序: RW
    发表于 02-11 06:38

    康谋方案 | BEV感知技术:多相机数据采集与高精度时间同步方案

    随着自动驾驶技术的快速发展,车辆准确感知周围环境的能力变得至关重要。BEV Camera数据采集方案有效解决了多相机同步采集和高精度时间同步的难题,还提供了灵活的相机参数配置和高效的数据传输,能够满足自动驾驶和
    的头像 发表于 02-06 13:45 3999次阅读
    康谋<b class='flag-5'>方案</b> | BEV感知技术:多相机数据采集与<b class='flag-5'>高精度</b><b class='flag-5'>时间</b>同步<b class='flag-5'>方案</b>

    基于单片机的磁致伸缩位移传感器的应用

    磁致伸缩位移传感器高精度、长寿命,适用于恶劣环境,但存在信号干扰等问题。采用单片机处理后,实现远程传输和高精度测量。未来发展方向是模块化、数字化、抗强干扰和温度补偿技术。
    的头像 发表于 02-05 14:27 937次阅读
    基于<b class='flag-5'>单片机</b>的磁致伸缩位移传感器的应用