Microchip
直播中

孙秀英

8年用户 184经验值
私信 关注
[问答]

INT0无法从深度睡眠中唤醒PIC24FJ64GB002怎么办

大家好,我正在移植一个项目,它以前工作得很好,从pic24FV32KA301到PIC24FJ64GB002。问题是,即使INT0在正常例程中正确地生成中断,当在深睡眠时它也不会唤醒mcu。我真的不明白为什么。遵循以下规则:说实话,它不能说服我也处于真正的深度睡眠中,因为它正在消耗377mA几秒钟,然后是444mA(测量断开所有输入),即使OSCO上的时钟信号停止到vdd.谢谢大家,卢卡会回答的。

回帖(15)

张娜

2020-5-11 12:41:15
我基本上从来不在任何照片上使用深度睡眠。现在我来看看数据表的第94.2节,嗯,有一些窍门,但看起来它应该工作…
举报

丁峙昌

2020-5-11 12:56:32
你好,达里奥,首先,祝贺你在微芯片论坛的头10年,我在这里不是很活跃,但多年来,你总是在我的所有话题上提供帮助,谢谢你继续支持社区。我不明白为什么深睡眠();不能工作,当睡眠();的确。我反复检查了92.4.2次,所以我记住了所有的句子。说实话,我仍然对睡眠和深度睡眠的区别感到困惑,主要是关于功耗(我不能分析,因为除了4mA““深度睡眠””“问题,它们淹没在电路消耗中)。在PIC24FV32 KA301的深度睡眠()上,工作良好,获得与睡眠()相当的结果;在PIC24FJ64 GBB2中。你知道有什么不同吗?谢谢,卢卡
举报

张丽

2020-5-11 13:21:48
@IUABBM,您发布的代码片段是如此的不完整,以至于不可能识别出您哪里出错了。目前我有一个PIC24FJ64GB004,所以这里有一个在INT0上的从高到低的转换中醒来的深度睡眠的工作示例。在我的测试套接字中,PIC24FJ64GB004绘制了0.0007毫安在深睡眠和51.6毫安时峰值运行在32 MHz。
举报

张娜

2020-5-11 13:45:41
上面应该映射到asm(“pwrsav#0”),不同之处在于前面的代码——“通过将DSEN位设置到DSCON寄存器中,然后在一个指令周期内执行Sleepcommand(PWRSAV#SLEEP_MODE)来输入深度睡眠模式,以最小化将引发深度睡眠的可能性“闯入”
举报

更多回帖

发帖
×
20
完善资料,
赚取积分