Board logo

标题: 请教高手们一个问题,关于EEPROM和看门狗 [打印本页]

作者: pang123hui    时间: 2012-2-2 09:42     标题: 请教高手们一个问题,关于EEPROM和看门狗

1.我使用的是MC9S12G128MLL,但是看门狗不进中断却直接复位了

我的看门狗初始化如下:
void WCOP_Init( void )
{
    // Disable protection of clock-source register
    CPMUPROT = 0x26U;
    // COP disable during pseudo-stop mode  
    CPMUCLKS_PCE = 0;      
    // Clock select: Internal clock
    CPMUCLKS_COPOSCSEL = 0;
    // Re-Enable protection of clock-source register
    CPMUPROT = 0x00;
    // Normal COP operation
    // Allows the COP and RTI to keep running in Active BDM mode
    // Time-out period prescaler:6
    // Time-out period 2^23 = 8388ms
    CPMUCOP = 0x06;
}
中断服务程序如下:
#pragma CODE_SEG __NEAR_SEG NON_BANKED
void interrupt 2 WCOP_Interrupt( void )
{
    //没有停在这里,而是直接复位
 while(1);
    _asm  jmp _EntryPoint;
}
#pragma CODE_SEG DEFAULT

2.还有一个问题,我怎么可以在复位后检测是不是看门狗复位呢?没有这个标志位
PE生成的代码,我很奇怪为什么是不是看门狗复位和CPMURTI 寄存器有什么关系
  if (CPMURTI != 0x00U) {              /* CPMURTI register is set to zero after reset. */
    LastResetSource = CPMURTI;         /* WatchDog or Clock monitor reset enrty points sets this register to non-zero value */
  } else if (CPMUFLG_ILAF == 0x01U) {  /* Illegal Address Reset? */
    LastResetSource = CPU_ILLEGAL_ADDRESS_RESET; /* Store reset reason to the temporary location */
  } else if (CPMUFLG_PORF == 0x01U) {  /* Power on Reset? */
    LastResetSource = CPU_POWER_ON_RESET; /* Store reset reason to the temporary location */
  } else if (CPMUFLG_LVRF == 0x01U) {  /* Low Voltage Reset? */
    LastResetSource = CPU_LVI_RESET;   /* Store reset reason to the temporary location */
  } else {                             /* (!testReg8Bit(CRGFLG, LVRF)) */
    /* External Reset */
    LastResetSource = CPU_EXTERNAL_RESET; /* Store reset reason to the temporary location */
  }

3.还有一个问题是,我想事先在EEPROM放一些数据,我知道可以在PRM文件里初始化,但能不能用PE micro直接去写EEPROM,而不影响FLASH里的数据,以前用AVR STUDIO都是可以的,FLASH和EEPROM可以单独分别烧写?

感谢回答,谢谢!
作者: pang123hui    时间: 2012-2-2 22:21

请教大家
……




欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) Powered by Discuz! 7.0.0