我写的程序,wait 可以进去,stop有时可以进去,但是进取后又出不来,但有时候又进不去,我用的是irq唤醒。麻烦高人赐教,谢谢!用的芯片是mc9s08aw32 void Init_stop2(void) { SOPT_STOPE=1;// SPMSC2_PPDC=1; SPMSC1_LVDE=0; }
void main(void) { Init_IRQ(); Init_stop2(); EnableInterrupts; /* enable interrupts */ /* include your code here */ asm(STOP); for(;;) { if(SPMSC2_PPDF==1) { SPMSC2_PPDACK=1; } __RESET_WATCHDOG(); /* feeds the dog */ } #pragma CODE_SEG NON_BANKED interrupt 2 void IRQ_ISR(void) { if((IRQSC & 0x08)==0x08) { if(SPMSC2_PPDF==1) { SPMSC2_PPDACK=1; } IRQSC_IRQACK=1; stop_flag=0; } } #pragma CODE_SEG DEFAULT |