OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 3245|回复: 0

雅特力科技AT32 MCUDBG结合低功耗使用的相关建议

[复制链接]

34

主题

37

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
211
金钱
211
注册时间
2019-12-27
在线时间
26 小时
发表于 2020-12-13 16:00:26 | 显示全部楼层 |阅读模式
MCUDBG的功能理解
  一般芯片内核进入调试状态时,外设无时钟不会动作,MCUDBG主要是为调试状态提供时钟,为外设的工作提供条件
MCUDBG结合低功耗(Stop)使用
  若Bit位DBG_STOP=1时,不管是处于调试状态还是正常的运行,进入Stop后的系统时钟是HSI,且在退出Stop后如果不重新做时钟初始化的话,系统时钟就固定为HSI;
  若Bit位DBG_STOP=0时,调试进Stop时Link会断线,正常运行进入Stop后的系统时钟会被切换到LSI,且在退出Stop后如果不重新做时钟初始化的话,系统时钟还会被切换到HSI。
原则上,进入Stop的话,HSI会被关掉,但是实测当DBG_STOP=1时,HSI被选做了系统时钟。
结论总结:
  由此衍生注意点,如果Stop相关应用需要关注功耗的话,一定要在进入Stop前将DBG_STOP清零,即调用库函数MCUDBG_PeriphDebugModeConfig(MCUDBG_STOP, DISABLE);
  当然推测此特性同样适用于Sleep及Standby,所以如下三句话建议所有低功耗相关应用都尽量去调用执行一次
    MCUDBG_PeriphDebugModeConfig(MCUDBG_SLEEP, DISABLE);
    MCUDBG_PeriphDebugModeConfig(MCUDBG_STOP, DISABLE);
    MCUDBG_PeriphDebugModeConfig(MCUDBG_STANDBY, DISABLE);
特别说明一下:
  前述特点在AT即ST上行为均相同,本贴的目的只是给各位小伙伴们分享下我之前做应用时候的一点心得体会
DBG.PNG

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-23 20:34

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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