智能车制作

标题: XS128的看门狗 问题 [打印本页]

作者: 寺枫叶0808    时间: 2011-3-19 23:24
标题: XS128的看门狗 问题
哥们
小弟有个问题
就是看门狗的

话说要定时喂狗
但是下面这个程序把我搞晕了
#include <hidef.h>      /* common defines and macros */
#include <mc9s12dg128.h>     /* derivative information */
#pragma LINK_INFO DERIVATIVE "mc9s12dg128b"



void main(void) {
  /* put your own code here */
  COPCTL = 0x07;


  EnableInterrupts;

  for(;;)
  {
    ARMCOP = 0x55;
    ARMCOP = 0xAA;


    //ARMCOP = 0x00; // COP Reset would happen becaue not 55-AA written


  } /* wait forever */
  /* please make sure that you never leave this function */
}

#pragma CODE_SEG NON_BANKED

void COP_RESET_ISR(void){
  /* write code here what to do after COP reset*/
}


看上面好像意思是说 把喂狗程序放在主函数里面就可以了

但是这样子不就和定时喂狗的概念有矛盾了吗

求解求解啊 :'(
作者: s614857575    时间: 2011-3-21 21:42
高手能不能解释清楚一点啊
作者: 寺枫叶0808    时间: 2011-3-22 15:35
回复 2# s614857575


    兄弟
是这样的
就是你定时喂狗的时间比你整个程序的时间要长一点
然后把喂狗的程序放在主程序里面就没问题了
不过好像对于智能车来说
智能车是没什么用的
作者: 雪男    时间: 2012-3-7 11:24
就是,把喂狗的时间设置的比你整个程序的大循环时间要长一点,使每一次循环都会喂狗,当陷入死循环时,喂狗程序得不到执行,喂狗溢出,整个程序复位!   喂狗周期比大循环的周期大一点就可以,使得循环能够及时进行!
作者: melon_1    时间: 2013-2-28 14:53
ARMCOP = 0x55;放在程序最后面也是比程序执行时间长,也算是定时吧,




欢迎光临 智能车制作 (http://dns.znczz.com/) Powered by Discuz! X3.2