huyang27 发表于 2019-4-11 22:39:34

stm32F207运行问题

使用芯片:STM32F207VET6 编译环境:MDK5
电源正常:3.3v
BOOT0为低
仿真下载发现这样的问题:
(1)点击Debug仿真,自动run,点击Reset不能正常复位,点击STOP后发现运行在如下图(1)区域,这个地址不在rom也不在ram中。硬件复位也没有任何反应。
(2)断电后马上上电也不能正常工作,硬件复位芯片也不能正常运行,断电一会(不固定时间)下载的程序才能正常跑起来。
(3)上述问题偶尔仿真是正常的,可以正常调试运行的,不过几率很少。
(4)一开始机贴板子回来是正常调试的,没有出现任何问题,突然发现出现的情况。

                      图(1)
原理图如下






wenyangzeng 发表于 2019-4-12 10:04:07

应该是优化等级太高了,在0x1fff22d0里死循环了。或者可以将这个循环里所要判断的变量用volatile修饰一下。

huyang27 发表于 2019-4-12 10:30:42

wenyangzeng 发表于 2019-4-12 10:04
应该是优化等级太高了,在0x1fff22d0里死循环了。或者可以将这个循环里所要判断的变量用volatile修饰一下。 ...

0x1fff22d0这个地址不在rom也不在ram的呢,找不到它的c代码在哪里

吕小布丶 发表于 2019-4-12 11:03:23

我也碰到过这种情况,概率性出现,目前也没解决:L

wolfgang2015 发表于 2019-4-12 11:04:00

https://www.stmcu.org.cn/module/forum/thread-615019-1-1.html

会不会是KEIL的DFP包太老了~~,请参考上贴内容更新最新的KEIL dfp包。

huyang27 发表于 2019-4-12 11:12:39

wenyangzeng 发表于 2019-4-12 10:04
应该是优化等级太高了,在0x1fff22d0里死循环了。或者可以将这个循环里所要判断的变量用volatile修饰一下。 ...

应该不会这里问题,没有跑到main函数

huyang27 发表于 2019-4-12 11:14:45

wolfgang2015 发表于 2019-4-12 11:04
https://www.stmcu.org.cn/module/forum/thread-615019-1-1.html

会不会是KEIL的DFP包太老了~~,请参考上贴 ...

试过了,没有解决

huyang27 发表于 2019-4-12 11:16:00

吕小布丶 发表于 2019-4-12 11:03
我也碰到过这种情况,概率性出现,目前也没解决

天啊,我们还做了小批量

toofree 发表于 2019-4-12 11:54:12

这么诡异!

我估计你需要一个标准的点灯测试程序,用来测试MCU硬件是否有问题。
如果用最简单测试程序,测试硬件没问题,那么这时候就得怀疑你的软件有问题。

wenyangzeng 发表于 2019-4-12 11:58:30

huyang27 发表于 2019-4-12 10:30
0x1fff22d0这个地址不在rom也不在ram的呢,找不到它的c代码在哪里

先把优化等级降低试看看
页: [1] 2
查看完整版本: stm32F207运行问题