凭什么认为是唤醒不了呢? |
有,可以通过ADC中断来唤醒 但这没有意义,ADC时间本身就很快,进入空闲模式之前你要先启动ADC,当你进入空闲模式之后,可能马上就唤醒了,1mS时估计都不到 |
MCU在空闲模式下可由任一个中断或硬件复位唤醒。在空闲模式下ADC虽然处于工作状态,没有CPU指令不能执行AD转换操作,也就不会产生ADC中断请求。笔者在一款电池供电的压力检测设备运用STC8G1K08A的P3.2作为ADC转换和外部中断复用。休眠时P3.2工作于外部中断,当检测压力达到最低阈值时触发外部中断,唤醒单片机,P3.2工作于ADC2输入通道。正常工作,LCD显示当前压力。当检测压力连续30秒低于阈值,单片机关闭外设进入休眠,P3.2工作于外部中断。 |
你是不是对空闲模式有什么误解? 他只说AD会继续工作(即:会耗电,非常非常耗,你看关于ADC的介绍,里面会提到这个空闲模式,以及掉电模式耗电的问题),没说能产生中断。 空闲模式会停止时钟,即所有需要时钟的工作都会停止(除了看门狗计数器),就连程序都不能往下走了,你还指望ADC能产生中断? 而退出空闲模式,唯一的方法就是产生中断。最可靠的中断,就是外部中断,你要ADC唤醒,最简单的方法就是分一路电给INT0, INT0电平变化,一定可以唤醒。 |