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

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

3天内不再提示

MCU、MPU、CPU为何均离不开RTC电路设计

AGk5_ZLG_zhiyua 来源:互联网 作者:佚名 2018-04-12 08:33 次阅读

RTC(Real_Time Clock)为整个电子系统提供时间基准,MCU、MPU、CPU均离不开RTC电路设计,在设计RTC单元时应注意哪些事项?常见的RTC故障如何解决呢?

一、什么是RTC

实时时钟(Real_Time Clock)简称为RTC,主要为各种电子系统提供时间基准。通常把集成于芯片内部的RTC称为片内RTC,在芯片外扩展的RTC称为外部RTC。

图1 时间格式

二、 RTC的发展

1、早期RTC

早期RTC常使用74/54系列、CC4000系列及555集成电路构建秒脉冲源,再利用分频器、计数器、缓存器等得到分、时、日、月、年的计时信号,最后通过通信口送到处理器处理。由于电路搭建复杂且受器件特性影响较大,这样的RTC往往精度差、功耗大且占用大面积PCB空间,且这类产品面临“2000年”的问题(千年虫问题详见百度)。

图2 千年虫问题

2、中期RTC

这一时期的RTC出现在20世纪90年代,由于采用特殊CMOS工艺,因此功耗大为降低,典型值约0.5μA以下,供电电压仅为1.4V以下。为节约宝贵的IO接口,通讯口也变为串行方式,出现了诸如三线SIO/四线SPI,部分产品采用2线I2C总线。封装上采用SOP/SSOP封装,体积大为缩小。得益于半导体技术的发展,这时的RTC精度、功耗等特性上得到实质性提高,已具备万年历功能甚至可以做到晶振停振自动检测功能。目前这类RTC正被广泛使用。

图3 PCF8583

3、新一代RTC

最新一代RTC产品中,除了包含第二代产品所具有的全部功能,更加入了复合功能,如低电压检测,主备用电池切换功能,抗印制板漏电功能,且本身封装更小(高度0.85mm,面积仅为2mm*2mm)。

三、RTC使用

RTC设计推荐方案如图4所示,若采用I2C/SPI通信的RTC IC且已具备I2C/SPI驱动程序,RTC的使用就显得尤为简单,仅需要加上晶振电路就可以工作了。

图4 RTC硬件电路

RTC设计电路简约而不简单,时钟芯片的选择、电路设计、器件放置、阻抗控制、PCB走线规范均会影响RTC的时间基准的稳定性,如图5所示为致远电子基于Cortex-A7架构的800MHz主频的M6Y2C-256F256LI-T核心板以及配套硬件开发指南,致远电子每一款核心板均有提供标准的推荐电路,为设计者提供稳定可靠的设计参考。

图5 提供完善硬件支持的核心板

软件方面,我们仅以linux为例了解下RTC的使用。在内核配置中选择与硬件匹配的RTC驱动,以生成正确的内核镜像。

图6 启用PCF8563 RTC驱动

图7 启用片内RTC

然后结合硬件测试RTC功能,使用命令date –-help获取相关指令。hwclock –w命令将设置的时间同步到硬件,hwclock命令获取RTC时间,判断是否同步成功。

图8 date命令(部分)

图9 验证保存状态

四、RTC问题

1、计时不准

RTC的主要职责就是提供准确的时间基准,计时不准的RTC毫无价值可言。目前部分MCU在片内已集成RTC,实际测试中在电池供电6小时环境下片内RTC的偏差在1-2分钟。因此,若对实时时钟有较高的要求则需优先考虑外扩RTC,若能支持温度自动补偿则精度更佳,如DS3231、PCF2129可以在后备电池供电时根据温度变化自动修改补偿量。

图10 常见RTC精度对比(供参考)

2、无法读写

RTC无法读写(通信)时可从软、硬件两方面考虑。软件方面重点考虑通信驱动的问题,在嵌入式linux系统中常表现出RTC驱动无法检测到RTC的存在。比如在启动信息中打印pcf8563_get_datetime: read error,或者无法对I2C/SPI操作。这类问题可以使用带协议解码的示波器排查、验证。

图11 I2C协议解码

硬件方面,以常用的I2C为例,最不可忽视的则是上拉电阻的使用。I2C上拉电阻选择1K-10K为宜,可根据通信速率、长度、节点数而定。在节点数多、干扰大时还应在SDA、SCL线上串联100~200ohm左右的电阻,有效抑制干扰脉冲。另外,所有IC都有意外损坏的可能,必要时更换RTC芯片。

图12 I2C上拉电阻使用

3、掉电不保存

这种情况最可能的原因是未使用备用电源或备用电源没电了,应检查硬件电源电路。软件方面可能在用户程序、自启动脚本中设置了RTC,每次重启则将RTC恢复为默认值,这时应从启动打印信息或系统日志中排查。

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

    关注

    58

    文章

    5679

    浏览量

    235114
  • mcu
    mcu
    +关注

    关注

    146

    文章

    16981

    浏览量

    350219
  • RTC
    RTC
    +关注

    关注

    2

    文章

    527

    浏览量

    66299

原文标题:如何正确设计实时时钟RTC?

文章出处:【微信号:ZLG_zhiyuan,微信公众号:ZLG致远电子】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    MCU芯片内部RTC与外部RTC有何区别?应该怎么选择?

    现在很多MCU内部已经集成了内部RTC,但常见的设计中为何很多使用独立的RTC芯片?进行RTC设计选型的依据是什么?应该如何选择?
    发表于 11-28 10:20 7492次阅读
    <b class='flag-5'>MCU</b>芯片内部<b class='flag-5'>RTC</b>与外部<b class='flag-5'>RTC</b>有何区别?应该怎么选择?

    请问如何正确设计实时时钟RTC

    RTC(Real_Time Clock)为整个电子系统提供时间基准,MCUMPUCPU离不开
    发表于 12-22 06:44

    如何设计RTC电路?

    RTC(Real_Time Clock)为整个电子系统提供时间基准,MCUMPUCPU离不开
    发表于 03-08 06:45

    工程师离不开的那些电路设计工具

    工程师离不开的那些电路设计工具,感兴趣的小伙伴们可以瞧一瞧。
    发表于 05-12 10:29 0次下载

    时钟芯片应用问题及解决方法

    RTC为整个电子系统提供时间基准,主控设计离不开RTC电路设计,在应用RTC时,会出现精度或功
    的头像 发表于 08-06 17:36 1.1w次阅读
    时钟芯片应用问题及解决方法

    RTC电路应该怎样设计

    RTC(Real_Time Clock)为整个电子系统提供时间基准,MCUMPUCPU离不开
    发表于 08-30 16:48 1.6w次阅读
    <b class='flag-5'>RTC</b><b class='flag-5'>电路</b>应该怎样设计

    工程师离不开的那些电路设计工具免费下载

    电路设计与仿真软件综述,电子发烧友为你提供工程师离不开的那些电路设计工具免费下载免费下载
    发表于 11-27 16:11 19次下载

    CPUMPUMCU、SOC的概念与区别

    参考资料:SoC和MCU的区别CPUMCU和SOC的区别以及外设的概念理解CPUMPUMCU
    发表于 10-27 16:51 31次下载
    <b class='flag-5'>CPU</b>、<b class='flag-5'>MPU</b>、<b class='flag-5'>MCU</b>、SOC的概念与区别

    CPUMPUMCU、SOC 介绍

    CPU(CentralProcessingUnit,中央处理器)发展出来三个分枝,一个是DSP(DigitalSignalProcessing/Processor,数字信号处理),另外两个是MCU
    发表于 10-28 10:51 18次下载
    <b class='flag-5'>CPU</b>、<b class='flag-5'>MPU</b>、<b class='flag-5'>MCU</b>、SOC 介绍

    CPUMCUMPU及DSP的区别

    CPUMCUMPU及DSP的区别CPU(Central Processing Unit,中央处理器)发展出来三个分枝,一个是DSP(Digital Signal Processin
    发表于 10-28 11:20 23次下载
    <b class='flag-5'>CPU</b>、<b class='flag-5'>MCU</b>、<b class='flag-5'>MPU</b>及DSP的区别

    CPUMPUMCU、SOC的区别(概念)

    CPUMPUMCU、SOC的区别(概念)原文:http://www.sohu.com/a/163972867_505886原标题:CPUMPU
    发表于 10-28 14:06 21次下载
    <b class='flag-5'>CPU</b>、<b class='flag-5'>MPU</b>、<b class='flag-5'>MCU</b>、SOC的区别(概念)

    CPUMCUMPU及DSP的区别和介绍

    CPUMCUMPU及DSP的区别CPU(Central Processing Unit,中央处理器)发展出来三个分枝,一个是DSP(Digital Signal Processin
    发表于 10-28 14:06 9次下载
    <b class='flag-5'>CPU</b>、<b class='flag-5'>MCU</b>、<b class='flag-5'>MPU</b>及DSP的区别和介绍

    CPUMCUMPU、DSP的区别

    CPUMCUMPU、DSP的区别 CPU(CentralProcessing Unit,中央处理器)发展出来三个分枝,一个是DSP(Digital Signal Processin
    发表于 10-28 16:51 57次下载
    <b class='flag-5'>CPU</b>、<b class='flag-5'>MCU</b>、<b class='flag-5'>MPU</b>、DSP的区别

    干货:如何解决RTC精度、功耗问题?

    RTC为整个电子系统提供时间基准,主控设计离不开RTC电路设计,在应用RTC时,会出现精度或功
    发表于 02-10 10:52 10次下载
    干货:如何解决<b class='flag-5'>RTC</b>精度、功耗问题?

    如何解决RTC精度、功耗问题?

    RTC为整个电子系统提供时间基准,主控设计离不开RTC电路设计,在应用RTC时,会出现精度或功
    的头像 发表于 05-26 14:48 4367次阅读
    如何解决<b class='flag-5'>RTC</b>精度、功耗问题?