你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

停机程序调试遇到的坑

[复制链接]
yyq006 发布时间:2018-1-11 17:09
做了个控制器,因为用电池供电,要求低功耗,所以空闲的时候就进入停机模式了。先把停机命令替换成循环等待调试好程序,然后恢复停机命令,结果总是无法唤醒,用LED指示发现有时进入中断了,但还是不能正常工作。折腾了很多天没调好,一气之下拿回家,晚上搞,结果发现工作没问题,一切正常。再拿回单位,又出问题了。这不科学啊,单位和家里用的软件版本都一样。突然发现调试时中断程序里设置了断点,在家的时候是直接全速运行,没设过断点。赶紧试试,把断点都去掉,果然正常运行了。
以前调试的时候主动停止调试后断点不影响程序运行,没想到进停机模式时调试器自动断开后断点居然还有效,运行到断点就停了,导致外面看起来程序工作不正常。
第一次做STM的停机程序,经验不足啊。
收藏 评论14 发布时间:2018-1-11 17:09

举报

14个回答
Inc_brza 回答时间:2018-1-11 17:23:15
我做低功耗都会脱离仿真器仿真
回答时间:2018-1-12 09:27:24
楼主怎么会说是坑呢?如果在STOP模式下是需要开启STOP仿真才会执行,默认都是关闭的。STOP以后,仿真器就失效了,不会发生类似的问题。
yyq006 回答时间:2018-1-12 09:40:23
Inc_brza 发表于 2018-1-11 17:23
我做低功耗都会脱离仿真器仿真

脱离仿真器?是怎么做的?
yyq006 回答时间:2018-1-12 15:16:47
安 发表于 2018-1-12 09:27
楼主怎么会说是坑呢?如果在STOP模式下是需要开启STOP仿真才会执行,默认都是关闭的。STOP以后,仿真器就失 ...

我是用KEIL+STLINK调试的,没发现还有stop仿真的选项,应该在哪里设置?
zhoupxa 回答时间:2018-1-12 15:37:49
安 发表于 2018-1-12 09:27
楼主怎么会说是坑呢?如果在STOP模式下是需要开启STOP仿真才会执行,默认都是关闭的。STOP以后,仿真器就失 ...

调试过程中发现,MCU进入低功耗模式(待机)后,仿真器无法通过SWD接口连接上
回答时间:2018-1-12 16:19:49
zhoupxa 发表于 2018-1-12 15:37
调试过程中发现,MCU进入低功耗模式(待机)后,仿真器无法通过SWD接口连接上 ...

不同的芯片都保存的地方都不一样,一般是在dbgmcu.h文件中配置开启或者关闭。
yyq006 回答时间:2018-1-12 16:36:23
新手,直接用cubemx生成的程序。刚才找了一下,没发现类似的文件,不知道在哪里。
回答时间:2018-1-13 08:57:55
楼主应该说一下芯片型号,不同的芯片存放的地方可能不一样
yyq006 回答时间:2018-1-15 11:49:38
STM32F103C8T6
12下一页

所属标签

STM32团队

意法半导体微控制器和微处理器拥有广泛的产品线,包含低成本的8位单片机和基于ARM® Cortex®-M0、M0+、M3、M4、M33、M7及A7内核并具备丰富外设选择的32位微控制器及微处理器


最新内容

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版