看门狗计时器用于监视和最小化代码执行错误。内部看门狗定时器容易受到代码执行问题的影响,使得外部看门狗电路在防止系统锁定方面非常宝贵。
本文档有助于为不同类型的应用选择正确的看门狗/监控产品时间,以及如何在没有软件代码的情况下应用电路。
以前使用专用硬件实现的许多电路功能现在都在软件中实现,部分原因是当今低成本微处理器(μP)的广泛选择。虽然软件通常是解决问题的成本最低、最灵活的方法,但它迫使设计人员采取额外措施来确保系统可靠性。虽然没有代码错误的程序,但仔细的测试可以将错误数量减少到每 1000 行代码 10 到 10 个。因此,设计人员必须期望在具有 000,<> 行代码的典型控制软件程序中至少出现 <> 个代码错误。
导致系统崩溃的桌面应用程序软件错误并不严重,因为用户可以重新启动系统,而只有轻微的数据丢失。但是,对于工业控制软件,系统必须能够在没有人为干预的情况下从代码错误中恢复。此功能对于两个主要类别至关重要:具有高可用性的系统,例如服务器、电话系统和生产线;以及必须高度可靠的系统,因为碰撞可能导致受伤,例如汽车、医疗器械、工业控制、机器人和自动门。即使这些标准都不适用,也最好在没有用户干预(按复位或电源循环)的情况下进行系统崩溃/恢复。如果设备在没有人为干预的情况下从错误中恢复,则此设备的感知质量良好,因为用户不知道设备内部出了问题。实现这种改进的系统可靠性的一种简单有效的方法是使用看门狗。
看门狗
监视器是必须在监视器超时期限内清除的计数器。如果未进行清除,监视器将生成重置以导致系统重新启动或创建不可屏蔽中断 (NMI),从而导致程序分支进入故障恢复子例程。大多数看门狗都是边缘触发的。因此,看门狗输入 (WDI) 上的上升沿或下降沿将清除计数器。WDI 引脚连接到处理器 I/O 引脚,该引脚由软件切换(图 1)。
图1.微处理器通过WDI引脚上的脉冲清除看门狗定时器,以防止复位。
清除看门狗计数器的命令必须发生在主程序循环中(图2)。如果未清除监视程序,则进行重置,软件分支到地址 0000(启动例程)。计算执行主循环所需的时间通常很困难,因为可能会调用许多子例程,具体取决于系统的输入。因此,设计人员通常选择比最长测量或计算的环路时间长得多的看门狗超时。
图2.该图显示了在主循环中生成WDI信号的典型程序流程。
图3显示了正常操作时的看门狗和复位信号(看门狗在超时期限内清除)。在图4中,看门狗计数器达到超时后生成复位。行业标准看门狗电路的超时范围为100ms至2s,尽管有可调和定制的看门狗覆盖更宽的范围(30ms至分钟)。如果主环路的执行时间对于看门狗来说太长,设计人员可以在主环路的不同部分实现多个看门狗切换命令,或使用超时更长的设备。
图3.如果WDI引脚始终在看门狗超时内切换,则不会生成复位。
图4.一旦看门狗计数器达到超时值,就会生成复位。
防止系统卡在寄生环路中的一种技术是在主环路开始时将相关I/O引脚设置为高电平,并在主环路的另一部分将其设置为低电平。如果软件在主环路开始时卡在寄生环路中,则看门狗超时,系统恢复,因为WDI保持高电平(图5)。如果使用低-高-低脉冲(如图2所示),看门狗将被清除,但系统将保持卡住状态。对于具有需要监视的多个任务的程序,可能需要更复杂的方案。每个任务设置一个标志,只有在设置了所有标志时,才会切换监视器。所有任务的持续时间必须短于监视器超时期限。与实际程序相比,图 2 和图 5 可能看起来很简单,但它们说明了相关概念。还应监视更复杂的系统中的其他潜在问题,例如内存泄漏和堆栈溢出。这超出了本文的范围,但通常通过使用合适的设计过程、执行仔细的代码审查和使用专门的软件工具来完成。
图5.改进的程序流程具有两个独立的看门狗切换命令,这些命令在 WDI 引脚上生成上升沿和下降沿信号。这可以防止程序卡在寄生循环中。
内部与外部看门狗
许多μP具有集成的可编程看门狗,可在软件控制下禁用。内部看门狗容易出现代码错误,因此不能提供与独立外部看门狗相同的保护。对于安全关键型应用(即自动门、医疗设备、机器人),内部看门狗是不可接受的。监管机构要求使用单独的外部监管机构。因此,最好使用外部看门狗来降低关键系统故障的风险。
简单的看门狗加复位
由于看门狗超时通常会复位系统,因此大多数看门狗都集成了μP复位功能,该复位器还监视处理器电源电压。复位由看门狗或欠压条件激活。图823所示的MAX825-MAX6系列结合了这两种功能,提供标准复位电压、一个标称看门狗、一个复位超时,电流消耗仅为6μA。这些器件采用超小型SC70封装。
图6.MAX823-MAX825系列集成了两种常用功能:看门狗和复位。
工厂预设看门狗系列
MAX6316-MAX6322系列提供26路工厂预设复位电压、1路标称看门狗和<>路标称复位超时以及<>种输出配置(见表<>)。
应用 | 家庭 | 电压监控 | 看门狗超时(分钟) | 复位超时(分钟) | 特殊功能 |
简单加复位 |
MAX823/ MAX824 |
工厂预设 2.5V、3.0V、3.3V 或 5V | 1.12 | 140毫秒 | SOT23 或 SC70 封装 |
定制 |
MAX6316- MAX6322 |
工厂预设,步长为 100mV 2.5V 至 5V | 4.3毫秒, 71毫秒, 1.12秒, 17.9秒 | 1毫秒, 20毫秒, 140毫秒, 1.12秒 | 推挽式、漏极开路或双向输出 |
电容可调 |
MAX6746- MAX6753 |
出厂预设,或通过分压器调节 1.575V 至 5V | 700ms 至 70s,两个范围,100pF 至 100nF 电容器 | 预设,或电容0.5ms至5s | SOT23-8,最小/最大窗口选项 |
MAX6301- MAX6304 |
SO 或 DIP 封装 | ||||
长启动,引脚可选 |
MAX6369- MAX6374 |
双工厂预设 1.8V、2.5V、3.0V、3.3V 或 5.0V | 30ms 至 60s ;200ms 至 60s 首次边缘激活 | 仅看门狗 | 双模式、引脚可编程启动延迟 |
多电源 |
MAX6369- MAX6360 |
双固定1.8V、2.5V、3.0V、3.3V、5V;或双 固定加一个可调 | 1.6s 正常 | 100毫秒 | 手动复位、电源失效比较器、双复位、 复位加复位输出 |
MAX6721- MAX6767 |
25.6秒启动 | ||||
窗口 |
MAX6323/ MAX6324 双路模式 |
工厂预设 2.5V、3V、3.3V 或 5V | 1.5毫秒至719毫秒(最小值);10ms 至 1.3s(最大值)窗口 | 100毫秒 | 八个工厂修剪选项;仅在定义的窗口内接受超时复位脉冲 |
电容可调看门狗
如果应用需要灵活的看门狗超时,设计人员可以使用可调电路。MAX6746-MAX6753系列提供工厂预设或分压器可编程复位电压,以及看门狗和复位超时的外部电容调整。图7显示了一个典型的工作电路,其中:
复位电压由分压器R1/R2确定,
复位超时由电容决定,以设置复位超时(C.SRT),和
看门狗超时由电容器设置,以设置看门狗超时(C斯威特).
图7.图中给出了电容可调看门狗系列MAX6346-MAX6353的典型应用电路。
图 8 显示了 C 的看门狗超时范围斯威特值从 100pF 到 100nF。凭借如此广泛的看门狗超时范围,设计人员可以为任何应用提供解决方案。MAX6301-MAX6304系列与MAX6746-MAX6753系列具有基本相同的特性,但提供SO和DIP封装。
图8.此图显示了各种可用的看门狗超时。
引脚可选看门狗,具有更长的启动/超时
如果启动例程很长(参见图 2),则需要具有两种不同超时的看门狗:较长的初始超时和较短的正常操作超时。MAX6369-MAX6374系列具有引脚可编程的启动延迟,可选择200ms至60s,看门狗超时范围为30ms至60s。某些版本提供看门狗的首次边缘激活,为更长的启动例程提供解决方案。对于这些芯片,看门狗在启动期间被禁用,并由μP相关I/O引脚的第一个边沿激活。
具有多个电源电压的看门狗
对于双电源系统,MAX6358-MAX6360系列可以 监视两个标准电压,并提供具有长启动和正常超时的看门狗。对于具有三路电源电压或同时需要高电平有效和低电平有效复位功能的系统,设计人员可以使用MAX6721-MAX6729系列。这些器件具有双模式看门狗,具有较长的启动时间以及正常的超时。它们可监测两个标准电源电压(MAX6721-MAX6722)或两个标准电源电压加第三个可调电源电压(MAX6723-MAX6724)。这些器件提供手动复位输入、电源失效比较器、双复位输出以及复位和/复位输出。
具有超高可靠性的窗口看门狗
为实现超高可靠性,设计人员可以使用MAX6323/MAX6324窗口看门狗。对于这些器件,看门狗的脉冲清除必须在明确指定的时间窗口内发生。有效脉冲可能最早在最后一个脉冲后1.5ms到达,也可能在最后一个脉冲后10ms到达(有关其他范围,请参见表1)。利用MAX6323/MAX6324,系统从寄生环路中恢复,如果清除看门狗命令在环路内,可以产生快速脉冲序列。这些脉冲将清除正常的看门狗,并且不会产生复位。使用窗口看门狗可以避免这种情况,因为它们需要看门狗脉冲之间的最小延迟。这些器件的典型应用是防抱死制动系统或其他汽车电路、高安全要求的工业和医疗应用,或系统可用性至关重要的应用。
结论
由于每个软件程序都有代码错误,设计人员必须确保系统不会锁定。噪声和EMI也会影响系统中的数据,并导致不可预测的系统行为。看门狗是提高系统可靠性的一种简单、廉价的方法。外部看门狗可防止系统卡住,并在看门狗超时期限内未切换WDI时复位μP。由于当今的看门狗种类繁多,设计人员一定会找到符合器件要求的器件。
审核编辑:郭婷
-
电源
+关注
关注
184文章
17586浏览量
249495 -
emi
+关注
关注
53文章
3582浏览量
127353 -
微处理器
+关注
关注
11文章
2247浏览量
82316
发布评论请先 登录
相关推荐
评论