阅读:1808回复:3
Wince5.0唤醒后进入OEMPowerOff后跑完会自动调用XXX_PowerUP吗
在s3c2440+wince5.0的环境下,做了挂起唤醒的功能,可是唤醒后,程序跑到OEMPowerOff里并恢复寄存器,重新初始LCD后,LCD重新亮起来后,又慢慢变成白屏,应该是因为没有继续刷屏的原因,是程序跑飞了吗?OEMPowerOff的最后是否要做什么调用操作?
部分代码如下: VOID OEMPowerOff(void) { CPUSaveRegs(CPUBackupRegs);/* Save Current Important CPU Regs... */ CPULCDOff();/* LCD Controller Disable */ ConfigStopGPIO();/* Stop all GPIO */ ConfigMiscReg();/* Set misc register for power off */ CPUPowerOff();//////////////////////////////////////////////////////////////sleep//////awaken CPULoadRegs(CPUBackupRegs);/* Recover Process, Load CPU Regs*/ /* Interrupt Clear*/ s2440IOP->rEINTPEND = s2440IOP->rEINTPEND; s2440LCD->rLCDSRCPND = s2440LCD->rLCDSRCPND; s2440LCD->rLCDINTPND = s2440LCD->rLCDINTPND; s2440INT->rSUBSRCPND = s2440INT->rSUBSRCPND; NANDInit(); OEMInitDebugSerial(); RETAILMSG(1,(TEXT("End Poweroff\r\n"))); LCDInit();//执行到这里后屏幕可以亮起来,可是之后就无法在继续刷屏,这里是把reset的初始化操作复制过来再做一遍 RETAILMSG(1,(TEXT("-- Exit OEMPOWER.\r\n"))); s2440IOP->rGPFDAT = (0xA < < 4);//根据LED的显示状态表明,程序有跑到这里.是否还要调用什么函数? } Wince5.0唤醒后进入OEMPowerOff后跑完会自动调用XXX_PowerUP吗,我试着在 OEMPowerOff里调用没有作用,请大侠指点!!! |
|
沙发#
发布于:2008-12-10 08:34
没有高人进来看一下吗?!!!
|
|
板凳#
发布于:2009-04-01 14:29
我也在做唤醒,我的是mini2440+wince5.0,唤醒后执行到
/* Recover Process, Load CPU Regs */ CPULoadRegs(CPUBackupRegs); OEMInitDebugSerial();//bymjf RETAILMSG(1,(TEXT("\r\n***CPULoadRegs.***bymjf.\r\n"))); //bymjf /* Interrupt Clear */ s2440IOP->rEINTPEND = s2440IOP->rEINTPEND; s2440LCD->rLCDSRCPND = s2440LCD->rLCDSRCPND; s2440LCD->rLCDINTPND = s2440LCD->rLCDINTPND; s2440INT->rSUBSRCPND = s2440INT->rSUBSRCPND; // s2440INT->rSRCPND = s2440INT->rSRCPND; // s2440INT->rINTPND = s2440INT->rINTPND; NANDInit(); RETAILMSG(1,(TEXT("\r\n***NANDInit.***bymjf.\r\n"))); //bymjf //InitTimer();//bymjf CPUClearCS8900(); RETAILMSG(1,(TEXT("\r\n***CPUClearCS8900.***bymjf.\r\n"))); //bymjf for test RTC //ADCenable();//bymjf LEDbymjf(); //bymjf RETAILMSG(1,(TEXT("\r\n***-- Exit OEMPOWER.***\r\n"))); RETAILMSG(1,(TEXT("s2440INT->rSRCPND = 0x%x \r\n"), s2440INT->rSRCPND)); RETAILMSG(1,(TEXT("s2440INT->rINTPND = 0x%x \r\n"), s2440INT->rINTPND)); RETAILMSG(1,(TEXT("s2440INT->rINTMOD = 0x%x \r\n"), s2440INT->rINTMOD)); RETAILMSG(1,(TEXT("s2440INT->rINTMSK = 0x%x \r\n"), s2440INT->rINTMSK)); 超级终端能打印出信息,但是并没有去调用XXX_powerUp(),郁闷中 |
|
地板#
发布于:2009-04-02 10:23
用户被禁言,该主题自动屏蔽! |
|