都说独立看门狗是防止硬件跑飞的,是因为它使用独立的LSI 时钟吧,而系统在HSI 时钟上跑,所以系统跑飞时就错过了时间喂狗。
而窗口看门狗是有上下限的,过早和超时都触发复位。很多例程在早期唤醒中断中喂狗,搞得我们迷迷糊糊的。我觉得在早中断中喂狗,这个窗口看门狗就没意义了。应该在主程序循环的某个位置(例如每次循环的尾部)喂狗,并且计算好每次循环的周期,使之在窗口内,过早或过晚都表示程序异常。
首先请教大家,我上面的理解对不~
然后我就想问了,一个复杂的程序,我怎么能预算程序执行需要多少时间呢?主程序循环可以很快,遇到各种中断时处理函数占用或多或少的时间,这个窗口值怎么设呢?如果执行时间琢磨不准,设一个比较大的值还有没有意义呢?有没有什么经验值啊,通常设多少或者参考值~ |