STM32L452一个函数debug模式可以正常运行,load后没有正常运行

2019-07-14 14:55发布

一个基于STM32L452的项目。现在遇到一个问题,使用Keil5.25.2,ST-LINK V2调试。在调试中发现,在main()中调用一个函数,debug模式下函数可以正确运行。但将该工程load到芯片后,发现代码没有正常运行-debug模式下带该函数和load模式下带该函数的耗流不同。但是,不加该函数的代码在debug和load模式下的耗流又是相同的。之前开发项目时没有遇到过这种现象。不知道哪位大侠可以指点一下,可能是哪些原因导致该问题的产生。。。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
7条回答
zhouxk
1楼-- · 2019-07-15 02:08
确定你所说的“调用一个函数”,只是一个函数吗?有没有控制什么外设?
你的函数实现什么功能
Green_LJ
2楼-- · 2019-07-15 06:56
很大情况下是代码的问题,debug模式有断点的话,CPU会停在断点,但是其他的外设或者timer会继续运行,可能刚好错过了某个timer或事件的运行,bug没暴露出来
youxi8745
3楼-- · 2019-07-15 11:15
 精彩回答 2  元偷偷看……
shuqingli
4楼-- · 2019-07-15 16:00
硬件上本身的 Reset 产生是否正常?
在 Debug 模式下程序是否仅在 RAM 运行而非储存于片内的 Flash 上?
这 Project 是否设置是于 Debug 模式而非 Release 的模式?
最后有空请看 这篇 能否解决问题?!
wuerywds
5楼-- · 2019-07-15 21:35
这个函数的作用是?涉及到哪些耗流的外设?
wyfwer
6楼-- · 2019-07-15 21:37
不贴代码的提问都是耍流氓,贴的代码太乱也是耍流氓

一周热门 更多>