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

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

3天内不再提示

实时时钟芯片RTC DS1307的工作原理解析

科技观察员 来源:gadgetronicx 作者:gadgetronicx 2023-06-29 18:15 次阅读

实时时钟芯片RTCDS1307是一种广泛使用的芯片,可为外部应用提供准确的时间和日期信息。这些芯片提供秒,分钟,小时,日,月和年,它实际上用作数字日历。这种芯片只消耗更少的功率和空间,因此广泛用于许多嵌入式应用。

RTC DS1307的特性:

该芯片能够以 24 小时或 12 小时格式运行,并且可以由用户更改。

月底会自动调整,减少 31 个月,包括闰年修正。

它能够感应外部电源的电源切断,并自动切换到与其连接的替代电池电源。

功耗更低,尺寸小,可用于所有级别的应用。

DS1307的引脚图:

-实时时钟芯片RTC-DS1307

X1 和 X2:这些是用于连接外部晶体振荡器的引脚,为芯片提供时钟源。根据数据表,32.768 kHz的石英晶体应与该芯片一起使用。

V蝙蝠 :该引脚用于连接+3V锂电池,以便在外部电源电压不可用时提供电源。不使用时,此引脚应接地。

SQW/输出:该输出引脚提供频率范围为 1 kHz、4kHz、8 kHz 或 32 kHz 的脉冲,需要一个上拉电阻才能工作。

标准及校正实验所及标准及校正实验所:这两个引脚用于在I2C总线中传输数据,必须连接到微控制器的SCL和SDA引脚。

可变资本和接地:这些引脚是芯片的电源和接地引脚。

DS1307的地址映射:

地址映射 DS1307

DS1307共有64字节RAM,地址范围为00H至3FH,其中前08个字节用于时间值,下一个字节是控制寄存器,用于控制芯片中的SQW/OUT引脚。从3H 到 《》FH 的其余字节可用于通用数据存储。

控制寄存器:

DS1307-控制-寄存器-工作

寄存器指针:

DS1307芯片包含一个寄存器指针,用于标记操作中接下来将要访问的字节。每次读/写操作后,寄存器指针会自动递增,这在多字节读写中非常有用。

RTC DS1307中的时间格式:

时间、分钟、年份等数据以 BCD

格式存储。正如您在地址映射中看到的那样,每个字节都被分配给秒、分钟、小时、天、月和年等值。由于数据的表示形式是BCD格式,因此较低的四位计数到顶部四/三位计算其余数据值的位置。

例如,考虑“秒”的值为 52,表示为

1.png

通过从地址 00H 写入或读取此数据字节将给出秒值。在小时寄存器02H位5中,将小时设置为12小时AM/PM格式或23小时格式。

相同类型的数据表示适用于分钟、小时、月份和年份,其值范围从

秒 – 0 到 60

分钟 – 0 到 60

小时 – 0 到 12 或 0 到 23 取决于我们使用的格式。

月份 – 0 到 12

年份 – 0 到 99

写入或读取DS1307:

为了在DS1307中执行读或写操作,您需要按照以下步骤操作。

为了访问DS1307,我们需要发送芯片地址+方向位,该地址指定控制器启动START条件后的读取或写入操作。

发送地址DS1307 1101000(将在数据手册中指定)+“0”位用于写入操作或“1”位用于读取操作。

您可以通过将相应的数据字节地址从 00H 传输到 06H 来设置寄存器指针地址,然后可以执行读/写操作。

请记住,寄存器指针的值将自动递增,这将有助于多个读取或写入操作。

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

    关注

    4

    文章

    210

    浏览量

    65339
  • 时钟芯片
    +关注

    关注

    2

    文章

    229

    浏览量

    39577
收藏 人收藏

    评论

    相关推荐

    Ds1307 RTC连接到CR2032电池,就会卡住的原因?

    每当我从电源向 ds1307 RTC 施加电压时,它都能正常工作,但一旦我将其连接到 CR2032 电池,它就会卡住,时间不起作用。我检查了电池的电压,它是3v,但在电阻后,ds1307
    发表于 01-22 08:02

    arduino学习笔记38 - Arduino + DS1307 RTC时钟模块与经典总结

    :RTC   芯片标号:1307   表面安装器件:通孔安装   输出数:1 以上是DS1307的要点,写下来介绍一下它的连接方法。 这个是我的实际产品,采用的是IIC接法方式,和Ar
    发表于 10-24 11:13

    DS1307 RTC中的问题

    亲爱的大家,我在24小时模式下使用DS1307 RTC,但是有时候它给出错误的值,即实际时间是16小时,但是它给出41小时。所以建议任何人如何解决这个问题谢谢P. Keerthi。
    发表于 04-06 16:42

    实时时钟rtc工作原理

    实时时钟rtc工作原理,一 RTC 概述 1.定义:RTC的英文全称是Real-Time Clock,翻译过来是
    发表于 07-27 08:15

    带有ATtiny85/DS1307时钟开发板

    描述ATtiny85 TinyClock DS1307 DIP带有 ATtiny85 微控制器、DS1307 实时时钟和 2032 电池座的时钟开发板。PCB+展示
    发表于 08-19 07:20

    基于ARM和DS1307实时时钟系统设计

    DS1307是I2C接口的8引脚实时时钟芯片,片内含有8个特殊功能寄存器和56bit的SRAM。它是一款按BCD码存取、低功耗的时钟/日历芯片
    发表于 01-26 10:01 2958次阅读
    基于ARM和<b class='flag-5'>DS1307</b>的<b class='flag-5'>实时时钟</b>系统设计

    基于DS1307的可调实时时钟系统设计

    DS1307是一款具有I2C总线接口的实时时钟芯片,要驱动具有I2C总线接口的DS1307芯片,一种办法是选择一款带有I2C总线接口的高档单
    发表于 01-26 16:47 1w次阅读
    基于<b class='flag-5'>DS1307</b>的可调<b class='flag-5'>实时时钟</b>系统设计

    DS1307串行实时时钟和AT24C02串行CMOS E2PROM电路原理图免费下载

    本文档的主要内容详细介绍的是DS1307串行实时时钟和AT24C02串行CMOS E2PROM电路原理图免费下载。
    发表于 03-22 08:00 24次下载
    <b class='flag-5'>DS1307</b>串行<b class='flag-5'>实时时钟</b>和AT24C02串行CMOS E2PROM电路原理图免费下载

    dfrobotI2C DS1307 RTC实时时钟模块介绍

    DFRobot曾出过一款DS1307 RTC 实时时钟模块,它以低廉的价格广受客户好评。此次DFRobot特意推出了新一代Gravity: I2C DS1307
    的头像 发表于 12-07 11:02 4604次阅读
    dfrobotI2C <b class='flag-5'>DS1307</b> <b class='flag-5'>RTC</b><b class='flag-5'>实时时钟</b>模块介绍

    使用实时时钟IC DS1307制作精确时钟的方法

    如何使用实时时钟 IC DS1307 制作准确的时钟。时间将显示在液晶显示屏上。
    的头像 发表于 04-26 17:23 5659次阅读
    使用<b class='flag-5'>实时时钟</b>IC <b class='flag-5'>DS1307</b>制作精确<b class='flag-5'>时钟</b>的方法

    DS1307 RTC漂移自校正

    电子发烧友网站提供《DS1307 RTC漂移自校正.zip》资料免费下载
    发表于 11-18 11:43 0次下载
    <b class='flag-5'>DS1307</b> <b class='flag-5'>RTC</b>漂移自校正

    DS1307 时钟/定时 - 实时时钟

    电子发烧友网为你提供Maxim(Maxim)DS1307相关产品参数、数据手册,更有DS1307的引脚图、接线图、封装手册、中文资料、英文资料,DS1307真值表,DS1307管脚等资
    发表于 11-21 21:25
    <b class='flag-5'>DS1307</b> <b class='flag-5'>时钟</b>/定时 - <b class='flag-5'>实时时钟</b>

    Arduino DS1307 RTC时钟

    电子发烧友网站提供《Arduino DS1307 RTC时钟.zip》资料免费下载
    发表于 11-22 09:15 4次下载
    Arduino <b class='flag-5'>DS1307</b> <b class='flag-5'>RTC</b><b class='flag-5'>时钟</b>

    从旧风扇和DS1307 RTC创建POV时钟

    电子发烧友网站提供《从旧风扇和DS1307 RTC创建POV时钟.zip》资料免费下载
    发表于 11-23 14:28 0次下载
    从旧风扇和<b class='flag-5'>DS1307</b> <b class='flag-5'>RTC</b>创建POV<b class='flag-5'>时钟</b>

    Arduino篇—实时时钟

    DS1307时钟模块:** DS1307串行实时时钟RTC)是低功耗,全二进制编码的十进制(BCD)
    的头像 发表于 11-01 16:49 943次阅读
    Arduino篇—<b class='flag-5'>实时时钟</b>