找回密码
 立即注册
查看: 459|回复: 6

【定时器与掉电模式问题】定时器0无法计时

[复制链接]
已绑定手机

1

主题

4

回帖

15

积分

新手上路

积分
15
发表于 2024-12-7 18:33:02 | 显示全部楼层 |阅读模式

本人使用AI8H2K32 MCU,开启定时器0以及定时器中断后,配置了外部中断(MCU支持所有IO中断,使用下降沿中断),并且使用了掉电模式,进入掉电模式前配置好了数字输入和中断后,唤醒MCU等待了8个时钟周期,串口打印发现定时器失效,不再进入定时器中断,即使唤醒后重新配置定时器也无效,另外唤醒后执行delay函数会感到延迟更多(疑似时钟频率比进休眠前变慢了,唤醒后配置CLKSEL = 0x00;无效)。请大神帮忙看看!!!!!!

void sleepmode(void)
{
P21 = 0;
P25 = 0;
//close digital input
P0IE=0x00;
P1IE=0xA0;
P2IE=0x01;
P3IE=0xFC;
P0M1=0xFF; //锟斤拷锟斤拷态
P0M0=0x00;
P1M1=0xFF;
P1M0=0x00;
P2M1=0xFF;
P2M0=0x00;
P3M1=0xFF;
P3M0=0x00;
P4M1=0xFF;
P4M0=0x00;
P5M1=0xFF;
P5M0=0x00;

P1WKUE = 0xA0;
P2WKUE = 0x01;
P3WKUE = 0xFC;

EA = 1;
_nop_();
_nop_();   
PCON=0x02;//0x02 stop mode
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();

}

image.png

回复

使用道具 举报 送花

已绑定手机

1

主题

4

回帖

15

积分

新手上路

积分
15
发表于 2024-12-7 18:57:43 | 显示全部楼层

经过排查,问题出现在调用P3IE=0xFC;,一旦调用,定时器0将停止计数,也就是无法进入定时器中断,疑似有bug。
image.png

image.png

回复 支持 反对

使用道具 举报 送花

已绑定手机

1

主题

4

回帖

15

积分

新手上路

积分
15
发表于 2024-12-7 19:05:20 | 显示全部楼层

经过实测,屏蔽了P3IE=0xFC;调用后,P3口按键外部中断唤醒掉电模式正常,时钟频率正常。

回复 支持 反对

使用道具 举报 送花

已绑定手机

1

主题

4

回帖

15

积分

新手上路

积分
15
发表于 2024-12-8 02:06:53 | 显示全部楼层

不设置P3IE默认是0xFF,插上串口TX(P3.1),正常进入休眠,外部中断唤醒正常;不插串口则无法进入休眠,或者拔掉串口则唤醒系统 P3WKUE = 0xFC;并无设置串口IO作为外部中断;修改P3IE的数值,也会导致定时器异常或者无法进入休眠。

回复 支持 反对

使用道具 举报 送花

已绑定手机

1

主题

4

回帖

15

积分

新手上路

积分
15
发表于 2024-12-8 02:42:26 | 显示全部楼层

最后发现,P30在进入掉电时,不能设置为高阻,会引起异常,设置为双向正常。功耗增加多少尚未测试。
image.png

点评

掉电前任何IO都可以设置为高阻,但是不能悬空,要给0V或VCC的电压。  详情 回复 发表于 2024-12-10 22:23
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:176
  • 最近打卡:2025-02-19 17:24:49

15

主题

265

回帖

1387

积分

金牌会员

积分
1387
发表于 2024-12-8 07:54:38 | 显示全部楼层
pxvu*** 发表于 2024-12-8 02:42
最后发现,P30在进入掉电时,不能设置为高阻,会引起异常,设置为双向正常。功耗增加多少尚未测试。

...

一般情况下双向即可,我试过了,都在双向状态休眠时耗电1.4微安。
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:50
  • 最近打卡:2025-04-30 22:59:03

73

主题

5882

回帖

1万

积分

超级版主

积分
12073
发表于 2024-12-10 22:23:26 | 显示全部楼层
pxvu*** 发表于 2024-12-8 02:42
最后发现,P30在进入掉电时,不能设置为高阻,会引起异常,设置为双向正常。功耗增加多少尚未测试。

...

掉电前任何IO都可以设置为高阻,但是不能悬空,要给0V或VCC的电压。
回复 支持 反对

使用道具 举报 送花

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2025-5-2 07:02 , Processed in 0.142630 second(s), 97 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表