4238|10

72

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

挂起后唤醒并进入OEMPowerOff但无法恢复 [复制链接]

在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的显示状态表明,程序有跑到这里.是否还要调用什么函数?
}


请大家帮忙看看问题可能会是哪里?

最新回复

ding   详情 回复 发表于 2009-5-31 21:13
点赞 关注

回复
举报

67

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
系统已经回到这里就好办了,查一下到底是跑了哪个函数后出了问题
系统Resume的过程基本上是这样的
OEMPowerOff-->Driver Power Handler-->Driver IOCTL
 
 

回复

58

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
已经能亮,说明LCD 初始化中对于背光(backlight)的控制已经有效果了。
然后用示波器量一下对应的点频(PCLK),行频(HSYNC),场频(VSYNC)是否都正常工作了。
 
 
 

回复

79

帖子

0

TA的资源

一粒金砂(初级)

4
 
引用 1 楼 hzdysymbol 的回复:
系统已经回到这里就好办了,查一下到底是跑了哪个函数后出了问题
系统Resume的过程基本上是这样的
OEMPowerOff-->Driver Power Handler-->Driver IOCTL


请问一下,Driver Power Handler-->Driver IOCTL 这个应该要怎么做,OEMPowerOff会跳转到哪个函数里去执行呢
 
 
 

回复

63

帖子

0

TA的资源

一粒金砂(初级)

5
 
等待高人,再顶一下
 
 
 

回复

79

帖子

0

TA的资源

一粒金砂(初级)

6
 
OEMPowerOff后会进到各个驱动的PowerHandler里啊,前面不写得这么清楚了吗?
PowerHandler跑完后会进到PM.dll里面,然后PM里面会调用各个驱动的IOCTL来设置相应的各驱动的电源状态
 
 
 

回复

74

帖子

0

TA的资源

一粒金砂(初级)

7
 
@linchunfu
你的问题解决了吗?我现在也遇到了同样的问题,不知道怎么解决,希望指教一下,谢谢!
@hzdysymbol
LCD驱动似乎找不到PowerHandler和IOCTL啊
 
 
 

回复

66

帖子

0

TA的资源

一粒金砂(中级)

8
 
引用 5 楼 hzdysymbol 的回复:
OEMPowerOff后会进到各个驱动的PowerHandler里啊,前面不写得这么清楚了吗?
PowerHandler跑完后会进到PM.dll里面,然后PM里面会调用各个驱动的IOCTL来设置相应的各驱动的电源状态


哦,这个很强大。学了不少。

其实会调用驱动中的XXX_PowerOn等函数设置电源状态吧。我打印信息会这样的。
 
 
 

回复

62

帖子

0

TA的资源

一粒金砂(初级)

9
 
看loader中对clk设定是否正确。
 
 
 

回复

61

帖子

0

TA的资源

一粒金砂(初级)

10
 
请问问题解决了吗?遇到同样问题了,系统唤醒后LCD白屏,无法显示图像。
 
 
 

回复

77

帖子

0

TA的资源

一粒金砂(初级)

11
 
ding
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/6 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表