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

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

3天内不再提示

在DS1371和DS1374实时时钟中使用看门狗/报警计数器

星星科技指导员 来源:ADI 作者:ADI 2023-01-13 11:43 次阅读

达拉斯半导体提供两种实时时钟(RTC),DS1371和DS1374,它们利用32位计数器来保持时间。两款器件还提供24位倒计时看门狗/报警计数器,可提供以下三种功能之一:周期性报警、看门狗定时器或SRAM。本应用笔记旨在帮助客户了解计数器的工作原理以及针对每种功能的配置。

计数器配置

辅助计数器映射到 2 线地址范围 04-06h,命名法为 WD/ALM 计数器字节 0-2。这些地址映射到三个用于写入的 8 位输入寄存器和三个用于读取的 8 位输出寄存器。为了使用2线接口写入器件,输入数据被锁存到与指定地址对应的输入寄存器中,然后将所有三个寄存器的内容加载到24位计数器中。当计数器重新加载时,输入寄存器用作24位种子寄存器。为了使用2线接口从器件读取数据,计数器的内容被锁存到输出寄存器中,并且对应于指定地址的数据被发送到外部总线。这允许计数器连续递减,而不会影响正在读取的数据。图 1 显示了这些块如何交互。

pYYBAGPA01WAMjQqAAAT0_bYTSI945.gif?imgver=1


图1.看门狗/报警计数器配置。

控制寄存器

控制寄存器用于配置DS1371和DS1374的看门狗/报警计数器。每个器件的寄存器几乎相同,只有位3和4控制器件特定功能。以下各段详细介绍了这两个登记册。

DS1371 控制寄存器

Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0
"EOSC-bar" WACE WD/"ALM-bar" 0 INTCN RS2 RS1 AIE

“EOSC-bar”(启用振荡器 - 当设置为逻辑 0 时,振荡器启动。当设置为逻辑 1 时,振荡器停止。首次通电时,此位清晰(逻辑 0)。

WACE(看门狗/报警计数器启用) - 设置为逻辑 1 时,WD/ALM 计数器将启用。当设置为逻辑 0 时,WD/ALM 计数器被禁用,允许将 24 位用作 SRAM。首次通电时,此位清晰(逻辑 0)。

WD/“ALM-bar”(看门狗/报警计数器选择) - 当设置为逻辑 0 时,计数器提供定期报警。当设置为逻辑1时,计数器提供一个看门狗定时器。首次通电时,此位清晰(逻辑 0)。

INTCN (中断控制) - 当设置为逻辑 0 时,在 SQW/“INT-bar” 引脚上输出方波。还必须启用“EOSC-bar”位才能输出方波。当设置为逻辑 1 时,状态寄存器中的报警标志 (AF) 位置位 SQW/“INT-bar”输出(前提是报警也已启用)。首次通电时,此位清晰(逻辑 0)。

RS2 和 RS1(速率选择) - 当方波启用时,这些位控制方波输出的频率。表1显示了可以使用RS位选择的方波频率。这些位都是在首次通电时设置的(逻辑1)。

表 1.方波输出频率

RS2 RS1 频率
0 0 1Hz
0 1 4.096kHz
1 0 8.192kHz
1 1 32.768kHz

AIE(报警中断启用)

- 当设置为逻辑 1 时,此位允许状态寄存器中的 AF 位置位 SQW/“INT-bar”(必须设置 INTCN)。当设置为逻辑或INTCN设置为逻辑0时,AF位不会启动SQW/“INT-bar”信号。首次通电时,此位清晰(逻辑 0)。

DS1374 控制寄存器

Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0
"EOSC-bar" WACE WD/"ALM-bar" BBSQW WDSTR RS2 RS1 AIE

仅定义与DS1371不同的位。

BBSQW(电池备份方波使能) - 当设置为逻辑 0 时,SQW 引脚为高阻抗,当 V抄送低于电源故障跳变点。当设置为逻辑 1 时,当 V抄送不存在,设备由 V 供电备份针。首次通电时,此位清晰(逻辑 0)。

WDSTR(看门狗复位转向位) - 当设置为逻辑 0 时,如果 WD/“ALM-bar” = 1 且 WD/ALM 计数器达到 0,则在“RST bar”引脚上输出 250ms 脉冲。当设置为逻辑1时,250ms脉冲输出在“INT-bar”引脚上。首次通电时,此位清晰(逻辑 0)。

定期报警

如果需要定期报警,WACE 位设置为 1,WD/“ALM-bar”位设置为 0。然后,计数器的行为如下:

- 计数器每秒递减一次。
- 当计数器达到0时,设置状态寄存器中的AF位,并使用输入寄存器中的当前24位值重新加载计数器。
- 计数器将重新启动。

如果设置了控制寄存器中的AIE位,AF位在DS1371和DS1374的不同引脚上产生中断。对于DS1371,如果INTCN位设置为1,则在SQW/“INT-bar”引脚上产生中断。对于DS1374,在“INT-bar”引脚上产生中断。

例如,DS1371可以配置为每周产生周期性中断,方法是使能计数器进行周期性报警,加载计数器值为93A80h (7天x 24小时x 60分钟x 60秒),并启用SQW/“INT-bar”引脚进行中断。

看门狗定时器

如果需要看门狗定时器,WACE 位和 WD/“ALM-bar”位均设置为 1。然后,计数器的行为如下:

- 计数器每 1/4096 秒(约 244μs)递减一次。
- 如果读取或写入任何WD/ALM计数器寄存器,则计数器将使用输入寄存器中的当前24位值重新加载并重新启动。
- 对于DS1371,如果WDS输入端出现从低到高的转换,计数器也会重新加载并重新启动。
- 当计数器达到0时,设置状态寄存器中的AF位,并停止计数器。

对于DS1371,如果控制寄存器中的AlE和INTCN位设置,AF位在SQW/“INT-bar”引脚上产生250ms脉冲。此脉冲不能被截断,当它完成时,AF标志被清除为0,SQW/“INT-bar”引脚返回到高阻抗状态。

对于DS1374,AF位在“INT-bar”引脚或“RST-bar”引脚上产生250ms脉冲。控制寄存器中的WDSTR位选择脉冲发生在哪个输出引脚上。如果 WDSTR 为 0,则 250ms 脉冲出现在“RST-bar”引脚上,如果 WDSTR 为 1,则脉冲出现在“INT-bar”引脚上。无论哪种情况,脉冲都不能被截断,当脉冲完成时,AF标志被清除为0,相应的输出引脚返回到高阻抗状态。

例如,DS1374可以配置为复位在150ms周期内不访问看门狗定时器的微控制器。计数器作为看门狗定时器启用,计数器加载值266h(0.15s / 0.000244s),并将脉冲引导至“RST-bar”引脚。

SRAM

如果不需要两种计数器类型,则 24 位计数器可用作 3 字节静态 RAM。这是通过在控制寄存器中设置WACE位来实现的。

对于提供后备电源输入的DS1374,只要电池或超级电容电压在规格范围内,RAM就是非易失性的。

总结

由于看门狗/报警计数器在一个封装中提供三种独立的功能,DS1371和DS1374是适合各种应用的高性价比器件。

审核编辑:郭婷

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

    关注

    328

    文章

    24539

    浏览量

    202233
  • 寄存器
    +关注

    关注

    30

    文章

    5038

    浏览量

    117765
  • 计数器
    +关注

    关注

    32

    文章

    2126

    浏览量

    93010
收藏 人收藏

    评论

    相关推荐

    STM32看门狗总结

    分频系数,确定这个计数器可以定时的时间范围,从而确定窗口的时间范围。窗口看门狗时钟来自于PCLK1,时钟配置中,其频率为外部
    发表于 10-15 16:08

    MM32 独立看门狗与窗口看门狗

    系统,或作为一个自由定时为应用程序提供超时管理。通过选项字节可配置成软件或硬件的启动看门狗调试模式下,计数器可以被冻结。 窗口看门狗
    发表于 11-09 16:12

    MM32独立看门狗(IWDG)

    计时窗口起作用的应用程序。二、IWDG主要性能Ø自由运行的递减计数器Ø时钟由独立的振荡提供(可在停止和待机模式下工作)Ø看门狗被激活后,则在计数器
    发表于 03-29 17:28

    Kintex 7如何配置看门狗定时

    us这意味着5498秒!我需要知道实际的时钟频率,因为我遇到了5分钟的超时,最坏的情况下我的计算超时为1秒(假设最坏情况为300Khz,计数器值为0x000493E0)。另外如何禁用比特流的
    发表于 07-21 08:44

    基于递减计数器和预分频的独立看门狗

    –是一个定时,供能–计数。每隔一段时间就喂狗–计数清零,重新计时,程序出错不能喂狗,得复位。独立看门狗独立看门狗是基于一个12位的递减
    发表于 07-30 07:24

    看门狗的原理与作用

    就是为了避免这种情况的发生。看门狗的作用就是一定时间内(通过定时计数器实现)没有接收喂狗信号(表示 MCU 已经挂了),便实现处理的自动复位重启(发送复位信号) 。
    发表于 07-30 06:36

    看门狗的原理 看门狗的作用

    独立看门狗由内部专门的 40Khz 低速时钟驱动,即使主时钟发生故障,它也仍然有效。看门狗的原理:单片机系统在外界的干扰下会出现程序跑飞的现象导致出现死循环,
    发表于 08-02 08:56

    STM32F4——独立看门狗与窗口看门狗 精选资料分享

    独立看门狗一、简介: 其用于检测和解决由软件错误导致的故障,当计数器达到设定的超时时间值时会产生系统复位。其特点为:1、其运用的时钟是由独立的RC振荡
    发表于 08-02 06:30

    独立看门狗、窗口看门狗的作用

    需要看门狗作为主程序之外,能够独立完全工作,并且对时间精度要求较低的场合。窗口看门狗是由主时钟分频后得到的时钟驱动,通过可配置的时间窗口来
    发表于 08-02 09:25

    请问CH573看门狗的的相关资料或者例子?

    CH573的DS里面没看到看门狗介绍,EXAM里面也没看到相关的历程。请问在哪里可以下载到相关的资料。谢谢!DS上说道:
    发表于 08-30 06:45

    MCU独立看门狗与窗口看门狗的区别

    为64~127(即:0x40~0x7F);配置寄存WWDG-》CFR中为计数器设定时钟分频系数,确定这个计数器可以定时的时间范围,从而确定窗口的时间范围。  窗口
    发表于 03-17 16:30

    使用看门狗/报警计数器DS1371DS1374实时时钟-

    Abstract: Dallas Semiconductor offers two real-time clocks (RTCs), the DS1371 and DS1374
    发表于 04-21 10:13 962次阅读
    使用<b class='flag-5'>看门狗</b>/<b class='flag-5'>报警</b><b class='flag-5'>计数器</b>的<b class='flag-5'>DS1371</b>和<b class='flag-5'>DS1374</b><b class='flag-5'>实时时钟</b>-

    使用看门狗/报警计数器DS1371DS1374实时时钟-

    Abstract: Dallas Semiconductor offers two real-time clocks (RTCs), the DS1371 and DS1374
    发表于 04-23 14:35 1053次阅读
    使用<b class='flag-5'>看门狗</b>/<b class='flag-5'>报警</b><b class='flag-5'>计数器</b>的<b class='flag-5'>DS1371</b>和<b class='flag-5'>DS1374</b><b class='flag-5'>实时时钟</b>-

    ds1371典型应用电路

    ds1371 典型应用电路: 显示设备是 如何 驱动时钟 信号 通过 方波 输出到 微控制器,具体如下图所示:
    发表于 09-27 16:21 1353次阅读
    <b class='flag-5'>ds1371</b>典型应用电路

    DS1371DS1374 实时时钟中使看门狗/闹钟计数器

    发表于 11-18 23:45 1次下载
    在 <b class='flag-5'>DS1371</b> 和 <b class='flag-5'>DS1374</b> <b class='flag-5'>实时时钟</b><b class='flag-5'>中使</b>用<b class='flag-5'>看门狗</b>/闹钟<b class='flag-5'>计数器</b>