xiatangtang 发表于 2018-9-19 09:39:27

STM8L051Halt低功耗与DMA问题

如题,最近在做一个项目,主要需要实现的是多路ADC采集电压,通过DMA读取到RAM。不加低功耗模式(halt)的时候是正常的,但是一旦加上Halt模式之后,ADC转换完之后DMA就不产生中断。


代码逻辑:ADC扫描不同通道的数据 》》DMA中断 》》处理电压值》》电压小于2.8,开启RTC唤醒,进入低功耗模式 》》睡眠中..... 》》RTC唤醒,修改时钟》》初始化ADC、初始化DMA》》开启ADC转换,进入之前的ADC扫描状态

问题出现在第二次循环,第一次循环是正常的,能进入DMA中断,但是第二次循环,就不进入DMA中断了,而且以后也不会进入DMA中断。

自检查:去掉DMA,能正常ADC读取或者ADC中断》》》判定ADC正常

注:每次退出halt模式之后,我都会重新初始化DMA的

页: [1]
查看完整版本: STM8L051Halt低功耗与DMA问题