[技术问答] AC7811休眠无法进入,在线求解,谢谢, --- 已解决

[复制链接]
2105|11
 楼主| 1983万年青 发表于 2022-7-12 13:52 | 显示全部楼层 |阅读模式
AC, TE
本帖最后由 1983万年青 于 2022-7-14 15:06 编辑

用AC7811 做低功耗休眠,系统10s没有任何操作输入后,进入休眠模式,休眠程序放在100ms时间片里面;10s周期进入休眠功能函数是可以的,感觉就是没有进入stop状态,系统电流从30mA,降到4.1mA又马上回到30mA,个人认为是哪里设置有问题,导致进入STOP模式前等待ACK超时,退出进入stop模式;
请大佬帮忙看看哪儿有问题,谢谢!
  1.        DisableInterrupts               
  2.                                           DMA_Uninitialize(DMA1);
  3.                                           ADC_DMACmd(ADC, DISABLE);
  4.             ADC_Cmd(ADC, DISABLE);
  5.                                           RTC_Uninitialize();
  6.                                           CTU_ModuleDisable();
  7.                                           WakeUpSet();
  8.                                           
  9.                                           SysTick->CTRL = 0;    ///<关闭系统时钟。
  10.                                           /* 休眠前手动关闭外部晶振和PLL */
  11.                                           SystemDeInit();
  12.                                           wdgConfigVal.control.enableWDOG = DISABLE;
  13.                                           
  14.                                                 SysStop();
  15.                                           
  16.                                     SystemInit();
  17.                                           SystemClock_Config();
  18.                                           // Wake up Init begin   
  19.                                           ATC_CTU_Init();
  20.             ATC_GPIO_Init();
  21.             ATC_LIN0_Init();
  22.             ATC_CAN2_Init();
  23.             ATC_ADC_Init();
  24.             ATC_PWM2_Init();
  25.             ATC_WDG_Init();
  26.             ATC_RTC_Init();
  27.             ATC_PWM0_Init();
  28.             ATC_PWM1_Init();
  29.                                                 // End
  30.             EnableInterrupts    ///<唤醒后先进行必要的处理,再打开中断。
  31.                                           wdgConfigVal.control.enableWDOG = ENABLE;
=================================

重新对照了STOP模式下开启状态的功能块,少关闭了CAN.LIN两个模块,加入这两个模块的关闭函数就正常了,后面开始唤醒功能问题。

七毛钱 发表于 2022-7-12 16:33 来自手机 | 显示全部楼层
没遇到过,路过帮忙顶一下
Fish1888 发表于 2022-7-13 09:12 | 显示全部楼层
看看有什么中断产生了,
 楼主| 1983万年青 发表于 2022-7-13 09:36 | 显示全部楼层
Fish1888 发表于 2022-7-13 09:12
看看有什么中断产生了,

中断我已经关了,应该不会有中断。
Sy1vester 发表于 2022-7-14 09:26 | 显示全部楼层
被Timer或RTC唤醒了吗,怎么解决的?
 楼主| 1983万年青 发表于 2022-7-14 15:01 | 显示全部楼层
Sy1vester 发表于 2022-7-14 09:26
被Timer或RTC唤醒了吗,怎么解决的?

不是, 应该是我的CAN/LIN模块没有回ACK,进不了休眠。
tpgf 发表于 2022-8-1 15:31 | 显示全部楼层
估计有代码唤醒了低功耗模式
qcliu 发表于 2022-8-1 15:38 | 显示全部楼层
怎么发现是这个问题引起的呢
drer 发表于 2022-8-1 15:51 | 显示全部楼层
也就是一直进步了低功耗
coshi 发表于 2022-8-1 16:02 | 显示全部楼层
看来是漏掉了什么
kxsi 发表于 2022-8-1 16:25 | 显示全部楼层
这俩模块的功能是什么呢
wiba 发表于 2022-8-1 16:41 | 显示全部楼层
只有应答信号了才能进入休眠模式吗
您需要登录后才可以回帖 登录 | 注册

本版积分规则

7

主题

21

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部