热心市民 发表于 2025-1-20 10:41:00

芯片:AI8H1K08,请教低功耗为啥不起作用呢|已解决

AI8H1K08单片机设置PCON = PD进不了低功耗
用了中断2和串口唤醒,当灯具关闭后,定时器设置2S后进入低功耗,但是没起作用,
调光口:
PWM1N P1.1
PWM2N P1.3
PWM3N P1.5


DebugLab 发表于 2025-1-20 11:21:08

使用闲置或无影响IO
PCON = PD改为让该IO输出信号
先检查程序是否可以正确运行到这里
先排除逻辑错误

王昱顺 发表于 2025-1-20 11:21:42



如果进入省电模式前串口还没有完成接收的话,有可能会被串口接收立刻唤醒。
可以尝试给PD进入条件加入等待串口发送完毕,然后再试一下

jolson 发表于 2025-1-20 11:26:45

王昱顺 发表于 2025-1-20 11:21
如果进入省电模式前串口还没有完成接收的话,有可能会被串口接收立刻唤醒。
可以尝试给PD进入条件加入等 ...

测试过,屏蔽senddat()程序也无法进入低功耗

jolson 发表于 2025-1-20 11:31:22

DebugLab 发表于 2025-1-20 11:21
使用闲置或无影响IO
PCON = PD改为让该IO输出信号
先检查程序是否可以正确运行到这里


测试过,程序可以执行到这里,最开始没用串口时候可以进入低功耗,后面用了串口发送接收发现进不了,但是把senddat()屏蔽也无法进入,不知道什么原因

DebugLab 发表于 2025-1-20 11:32:31

jolson 发表于 2025-1-20 11:31
测试过,程序可以执行到这里,最开始没用串口时候可以进入低功耗,后面用了串口发送接收发现进不了,但是 ...

检查是否进入掉电模式后又被立即唤醒

jolson 发表于 2025-1-20 14:08:30

DebugLab 发表于 2025-1-20 11:32
检查是否进入掉电模式后又被立即唤醒

好的谢谢

Lkck8210 发表于 2025-1-20 14:18:54

把senddat()和串口的相关代码都贴出来
定时器中断优先度比串口高
所以在定时器中断内运行代码时
单片机不会响应串口中断
在代码不全的情况下
盲猜试试在PCON = PD;之前
先清掉TI和RI

vb2002 发表于 2025-1-22 23:03:31

之前我有个断电也是,能进入掉电模式,但是马上又起来了,
后面发现是程序问题
页: [1]
查看完整版本: 芯片:AI8H1K08,请教低功耗为啥不起作用呢|已解决