quote:以下是引用licelice在2005-03-31 16:57:55的发言:
既然扫描周期不固定,哪岂不就是说可能会出现,如果在n周期画了10ms就进入n+1周期,而n+1周期画了8ms就进入了n+2周期?
那看门狗的作用就是一个周期的时间最多为看门狗时间,是为了防止程序出现不可预知的错误而不能正常进入下一个循环周期?
循环监控周期与程序扫描周期就是两个概念,
比如说,看门狗设定时间是150ms,第N周期的扫描时间是100ms,那么程序结束时,也就是N周期开始的第100ms,程序监控时间也为100ms,此时即将进入N+1周期,程序开始前,先要对看门狗进行复位的,通俗的说法叫“喂狗”(进行一些单片机程序开发的时候,都要程序来进行的,PLC是不需要的),如果N+1周期执行到150ms,看门狗没有进行复位,超过了循环监控时间,就会CPU出现STOP,通俗的说法为“狗叫”,也就是“看门狗”,如果不按时“喂狗”,那狗自然会叫。