vb2002 发表于 6 天前

用P55电平检测写入eeprom,只能持续20ms.怎么利用掉电模式增长时间

我想利用P55监测电平, mcu断电后 由C1提供持续供电. P55拉低,然后进入掉电模式,设置掉电唤醒定时器1秒后唤醒.
由于P55口是INT3. 设置INT3中断唤醒.(这里好像出问题了. 因为本身P55上电后是高电平, 掉电后是低电平,再次上电高电平不能唤醒)
如果在掉电模式1秒内被INT3唤醒了. 则写入EEPROM.
如果超过1秒,掉电唤醒定时器唤醒,然后就delayms ,放完电(下次开机直接读eeprom)




vb2002 发表于 6 天前

国芯人工智能 发表于 2025-6-11 11:23
您的问题涉及使用中断中断复位来延长掉电模式的持续时间。以下是一个详细的解决方案:

1. 设计中断中断复 ...

怎么乱码了

DebugLab 发表于 6 天前

外部电阻大,P55要设置为高阻
注意IO高低电平电压

vb2002 发表于 6 天前

DebugLab 发表于 2025-6-11 16:34
外部电阻大,P55要设置为高阻
注意IO高低电平电压
能正常工作,只是不会做延迟,
比如我设置检测到p55低电平马上进入掉电模式(一秒唤醒)。
在此一秒期间重新开启的话就写入eeprom,
如果超过1秒没有被重新唤醒,就用定时器唤醒后把剩下电容里面的电放完

王昱顺 发表于 5 天前

vb2002 发表于 2025-6-11 18:38
能正常工作,只是不会做延迟,
比如我设置检测到p55低电平马上进入掉电模式(一秒唤醒)。
在此一秒期间重 ...

目前是什么情况呢,可以检测掉电但是没法识别延时?

vb2002 发表于 5 天前

王昱顺 发表于 2025-6-12 14:12
目前是什么情况呢,可以检测掉电但是没法识别延时?

我的思路是,断电后马上检测P55电平(P55用一个上拉10k, 一个下拉10k, 设置高阻).
掉电马上进入省电模式.(1秒定时器唤醒), 如果1秒期间内再次开机,则写eeprom
如果1秒后有定时器唤醒,则放完电,不执行另外的指令
好像思路有点问题了.
其实就是之前的手电代码重写了.
之前代码已经完善了,能顺利换挡了
但是现在想加多一个双击,,也就是两次连续掉电
页: [1]
查看完整版本: 用P55电平检测写入eeprom,只能持续20ms.怎么利用掉电模式增长时间