7421|24

69

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

关于wince5.0+2440 睡眠唤醒问题 [复制链接]

如题,我的BSP能够睡眠。但是唤醒不了。我想通过rtc唤醒,做了如下设置:
ldr     r0,=vRTCBASE                 ;;;RTC alarm
        ldr     r1,=0x41
        str     r1,[r0,#oRTCALM]
  
    ldr     r1,=0x10                  ;;10s唤醒
        str     r1,[r0,#oALMSEC]  
led test,led灯由GPF5控制。
在LEAF_ENTRY OALCPUPowerOff 加如下代码

        ldr     r7, =vGPIOBASE    ;;;qzw led test
        ldr     r8, =0x550a
        str     r8, [r7, #oGPFCON]
       
        ldr     r8,=0x0
    str     r8,[r7,#oGPFDAT]
挂起后就是led不亮,这说明睡眠没进入OALCPUPowerOff,但是为什么还是能正常睡眠?
睡眠时测了功耗。电流140多mA。。。。睡眠状态下不是才5mA,同时测PWR_EN是低电平。这是为何?
此帖出自WindowsCE论坛

最新回复

没错。我用的是三星的2440BSP,里面的代码只是针对开发板做的。但是要真正的做到全部唤醒还要做些什么?eeworld的高手们好像都贼忙啊。。。。苦苦等待中。。。。。。。。。  详情 回复 发表于 2009-10-20 11:29
点赞 关注
 

回复
举报

75

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
怎么没人来啊。。。。自己顶下。。。。。
此帖出自WindowsCE论坛
 
 
 

回复

65

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
帮顶
此帖出自WindowsCE论坛
 
 
 

回复

68

帖子

0

TA的资源

一粒金砂(初级)

4
 
三星的芯片RTC不能做唤醒源的。。。。只能通过外部中断
此帖出自WindowsCE论坛
 
 
 

回复

70

帖子

0

TA的资源

一粒金砂(初级)

5
 
引用 3 楼 seven_zhangxw 的回复:
三星的芯片RTC不能做唤醒源的。。。。只能通过外部中断

怎么会这样啊。手册上怎么还写很多介绍怎么用的。。。。。。为什么不能用RTC唤醒
此帖出自WindowsCE论坛
 
 
 

回复

55

帖子

0

TA的资源

一粒金砂(中级)

6
 
http://groups.google.com/group/gooogleman/web/windows-ce-2440?hl=zh-CN
看看这个,
此帖出自WindowsCE论坛
 
 
 

回复

74

帖子

0

TA的资源

一粒金砂(初级)

7
 
别听他瞎说.
是中断就可以唤醒(注意优先级).

睡眠的时候140毫安,我对你的睡眠质量持保留态度.

此帖出自WindowsCE论坛
 
 
 

回复

76

帖子

0

TA的资源

一粒金砂(初级)

8
 
引用 5 楼 gooogleman 的回复:
http://groups.google.com/group/gooogleman/web/windows-ce-2440?hl=zh-CN
看看这个,

gooogleman,看到网上你的一篇“ 关于2440 休眠唤醒的实现疑惑”http://topic.eeworld.net/u/20090330/13/34EC9ED9-660A-412E-932B-ABF789E9A26B.html
我的bootloader也是用ADS的,可以实现唤醒的吗?怎么修改?
此帖出自WindowsCE论坛
 
 
 

回复

77

帖子

0

TA的资源

一粒金砂(初级)

9
 
引用 6 楼 gelu1040 的回复:
别听他瞎说.
是中断就可以唤醒(注意优先级).

睡眠的时候140毫安,我对你的睡眠质量持保留态度.



还有哪些外设电源还没关掉吗?RTC的中断是最低级吧。。。
此帖出自WindowsCE论坛
 
 
 

回复

93

帖子

0

TA的资源

一粒金砂(初级)

10
 
2440的RTC是可以用作sleep wake-up。

你怎么确定你有进入sleep?PWR_EN有拉低吗?如果外部设备不是很耗电的话,CPU sleep才几个mA而已。
此帖出自WindowsCE论坛
 
 
 

回复

79

帖子

0

TA的资源

一粒金砂(初级)

11
 
引用 9 楼 skynet000 的回复:
2440的RTC是可以用作sleep wake-up。

你怎么确定你有进入sleep?PWR_EN有拉低吗?如果外部设备不是很耗电的话,CPU sleep才几个mA而已。

PWR_EN已经是低电平。外设没有啥东西。就只几个usb口和串口。这是何故?
此帖出自WindowsCE论坛
 
 
 

回复

55

帖子

0

TA的资源

一粒金砂(初级)

12
 
引用 10 楼 wen_hua 的回复:
引用 9 楼 skynet000 的回复:
2440的RTC是可以用作sleep wake-up。

你怎么确定你有进入sleep?PWR_EN有拉低吗?如果外部设备不是很耗电的话,CPU sleep才几个mA而已。

PWR_EN已经是低电平。外设没有啥东西。就只几个usb口和串口。这是何故?


你的PWR_EN是CPU自己拉低的吗?还是你用外部GPIO强制拉低的啊。
请问有进入OEMPowerOff的OALCPUPowerOff();这句??在它前面打印有一下看看。
此帖出自WindowsCE论坛
 
 
 

回复

62

帖子

0

TA的资源

一粒金砂(初级)

13
 
引用 11 楼 skynet000 的回复:
引用 10 楼 wen_hua 的回复:
引用 9 楼 skynet000 的回复:
2440的RTC是可以用作sleep wake-up。

你怎么确定你有进入sleep?PWR_EN有拉低吗?如果外部设备不是很耗电的话,CPU sleep才几个mA而已。

PWR_EN已经是低电平。外设没有啥东西。就只几个usb口和串口。这是何故?


你的PWR_EN是CPU自己拉低的吗?还是你用外部GPIO强制拉低的啊。
请问有进入OEMPowerOff的OALCPUPowerOff();这句??在它前面打印有一下看看。


pwr_en是cpu自己拉低。进入有到OALCPUPowerOff();
此帖出自WindowsCE论坛
 
 
 

回复

84

帖子

0

TA的资源

一粒金砂(初级)

14
 
贴出我ADS的bootloader的wakeup代码:
WAKEUP_SLEEP
        ;Release SCLKn after wake-up from the SLEEP mode.
        ldr        r1,=MISCCR
        ldr        r0,[r1]
        bic        r0,r0,#(7<<17)  ;SCLK0:0->SCLK, SCLK1:0->SCLK, SCKE:0->=SCKE.
        str        r0,[r1]

        ;Set memory control registers
        ldr        r0,=SMRDATA        ;be careful!, hzh
        ldr        r1,=BWSCON        ;BWSCON Address
        add        r2, r0, #52        ;End address of SMRDATA
0
        ldr        r3, [r0], #4
        str        r3, [r1], #4
        cmp        r2, r0
        bne        %B0

        mov r1,#256
0        subs r1,r1,#1        ;1) wait until the SelfRefresh is released.
        bne %B0

        ldr r1,=GSTATUS3         ;GSTATUS3 has the start address just after SLEEP wake-up
        ldr r0,[r1]

        mov pc,r0
此帖出自WindowsCE论坛
 
 
 

回复

71

帖子

0

TA的资源

一粒金砂(初级)

15
 
PWR_EN有拉低,那应该是进入sleep了。但是你的电流这么大,是不是哪里短路了。或者是CPU已经wake-up了。只是卡在启动的地方了??
你有没有试过其他唤醒方式??可以先试试以前有效的代码。看看进入sleep会不会有这么大的电流。

要从sleep唤醒,要注意在进入power off的sleep之前要把相应的RTC的中断打开、唤醒源打开。然后就是要保证main 电压正确。
此帖出自WindowsCE论坛
 
 
 

回复

73

帖子

0

TA的资源

一粒金砂(初级)

16
 
引用 14 楼 skynet000 的回复:
PWR_EN有拉低,那应该是进入sleep了。但是你的电流这么大,是不是哪里短路了。或者是CPU已经wake-up了。只是卡在启动的地方了??
你有没有试过其他唤醒方式??可以先试试以前有效的代码。看看进入sleep会不会有这么大的电流。

要从sleep唤醒,要注意在进入power off的sleep之前要把相应的RTC的中断打开、唤醒源打开。然后就是要保证main 电压正确。


我这边的代码跟网上的差不多。就是不知道哪有问题。skynet000兄能否提供点相关代码。。。
此帖出自WindowsCE论坛
 
 
 

回复

65

帖子

0

TA的资源

一粒金砂(初级)

17
 
继续顶上去。。。忙活了几天终于有点效果。。现在可以唤醒。不过还是有问题我,唤醒后屏幕出现一小行白屏,USB没电源。刚唤醒屏幕没触摸。过10s左右屏幕变暗。有触摸。
出现这种情况是睡眠先没做好保存吗?还是唤醒后有些要相应设置下。比如初始化。。。具体要设置哪些呢?求解。。。。。。
此帖出自WindowsCE论坛
 
 
 

回复

53

帖子

0

TA的资源

一粒金砂(初级)

18
 
唤醒后是不是要重新加载驱动。。。。具体流程是怎么样的,网上看了很多好像没那么详细。。。。
此帖出自WindowsCE论坛
 
 
 

回复

79

帖子

0

TA的资源

一粒金砂(初级)

19
 
mark
此帖出自WindowsCE论坛
 
 
 

回复

61

帖子

0

TA的资源

一粒金砂(初级)

20
 
继续求解。。。。。。。
此帖出自WindowsCE论坛
 
 
 

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

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

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

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

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

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

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

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