故障保护时钟监视器-windows internals part 2(6th) 无水印pdf

时间:2024-06-27 11:57:53
【文件属性】:

文件名称:故障保护时钟监视器-windows internals part 2(6th) 无水印pdf

文件大小:9.91MB

文件格式:PDF

更新时间:2024-06-27 11:57:53

PIC18F46k80 中文资料

28.5 故障保护时钟监视器 故障保护时钟监视器(FSCM)可使单片机在外部振荡 器发生故障时,自动将器件时钟切换到内部振荡器模块 以保证器件能继续工作。将 FCMEN 配置位置 1 可使能 FSCM 功能。 当使能 FSCM 时,LF-INTOSC 振荡器将一直保持运行 以监视外设时钟,并且在外设时钟发生故障时作为备用 时钟。时钟监视 (如图 28-4 所示)通过创建一个采样 时钟信号实现,该信号为 LF-INTOSC 的 64 分频输出。 这样就使得 FSCM 采样时钟脉冲之间有充足的时间间 隔,从而保证在此期间至少有一个外设时钟沿出现。外 设时钟和采样时钟作为时钟监视(CM)锁存器的输入。 CM 在器件时钟源的下降沿被置 1,在采样时钟的上升 沿被清零。 图 28-4: FSCM 框图 在采样时钟的下降沿检测时钟故障。如果在 CM 仍 置 1 时出现采样时钟的下降沿,就表示检测到时钟故 障(图 28-5)。这将引发以下事件: • 通过将 OSCFIF 位(PIR2<7>)置 1,由 FSCM 产 生振荡器故障中断 • 器件时钟源切换到内部振荡器模块 (OSCCON 不 会被更新,因此无法显示当前时钟源——这就是故 障保护条件) • WDT 复位 切换过程中,对于时序敏感的应用,内部振荡器模块的后 分频器频率可能不够稳定。在这些情况下, 好选择另一 种时钟配置并进入其他功耗管理模式。可以尝试部分恢 复或执行受控关闭。更多详细信息,请参见第 4.1.4 节 “ 多条 SLEEP 命令 ” 和第 28.4.1 节 “ 使用双速启动时的 特殊注意事项 ”。 为了在唤醒器件时使用速度更快的时钟,通过在复位发 生后立即设置 IRCF<2:0>,可以选择 INTOSC 或后分 频器时钟源以提供更快的时钟速度。对于从休眠模式唤 醒的情况,可以在进入休眠模式前设置 IRCF<2:0> 来 选择 INTOSC 或后分频器时钟源。 FSCM 只能检测出主时钟源或辅助时钟源的故障。如果 内部振荡器模块发生故障,将不会检测到故障,当然也 不可能采取任何措施。 28.5.1 FSCM 和看门狗定时器 FSCM 和 WDT 均以 INTOSC 振荡器作为时钟源。由于 WDT 使用独立的分频器和计数器,使能 FSCM 时,禁 止 WDT 对 INTOSC 振荡器的操作没有任何影响。 如前所述,当检测到时钟故障时,时钟源将切换到 INTOSC 时钟。根据由 IRCF<2:0> 位选择的频率的不 同,这可能意味着代码执行速度会发生很大的变化。如 果使能 WDT 时使用的是小预分频值,时钟速度的下降 将引起 WDT 超时,随后使器件复位。由于这个原因, 故障保护时钟事件也会使 WDT 和后分频器复位,使 WDT 从执行速度发生变化那一刻起开始重新计数,从 而降低发生错误超时的可能。 28.5.2 退出故障保护工作模式 器件复位或进入功耗管理模式均可终止故障保护条 件。发生复位时,控制器启动在配置寄存器 1H 中指定 的主时钟源(具有如 OST 或 PLL 定时器等振荡器模式 所需的起振延时)。INTOSC多路开关将在主时钟源就 绪之前提供系统时钟(类似于双速启动)。随后时钟 源切换为主时钟 (由 OSCCON 寄存器中的 OSTS 位 置 1 指示)。然后,故障保护时钟监视器恢复监视外设 时钟。 在起振期间,主时钟源可能永远不能就绪。在这种情况 下,器件工作将以 INTOSC 多路开关作为时钟源。 OSCCON 寄存器将保持复位状态直到进入功耗管理模 式为止。 外设时钟 INTOSC ÷ 64 S C Q (32 μs) 488 Hz (2.048 ms) 时钟监视器 (边沿触发) 检测到 时钟故障 时钟源 Q 锁存器(CM) 2011 Microchip Technology Inc. 初稿 DS39977C_CN 第 481 页


网友评论