谭力宁 发表于 2024-4-18 14:25:15

用stm32cubeide生成的STM32G030F6P6代码只要一开中断,任何中断程序都会跑飞.

求助,用stm32cubeide生成的STM32G030F6P6代码只要一开中断,任何中断程序都会跑飞.这个问题是在我升级stm32cubeide后出现的,以前用的正常,升级后重新编译后出现这个现象,但是现在重新安装低版本的也不行了。新建工程也不行

butterflyspring 发表于 2024-4-18 14:40:36

有没有同系列其他型号试试,对比一下,最好能运行官方例程的。

谭力宁 发表于 2024-4-18 14:49:26

butterflyspring 发表于 2024-4-18 14:40
有没有同系列其他型号试试,对比一下,最好能运行官方例程的。

我手里没有G0系列的其他mcu,但我试过了F1的没有问题。就是很离谱,这个代码产品都出了好多了现在跑不起来了

知足- 发表于 2024-4-18 16:19:30

只有生成的代码,没添加一句自己的代码吗?

谭力宁 发表于 2024-4-18 16:30:12

知足- 发表于 2024-4-18 16:19
只有生成的代码,没添加一句自己的代码吗?


是的新建的工程,一开中断就飞了.......

butterflyspring 发表于 2024-4-18 17:42:20

谭力宁 发表于 2024-4-18 16:30
是的新建的工程,一开中断就飞了.......


用 cubemx 生成其他 IDE的工程,对比一下是否也飞了

xmshao 发表于 2024-4-19 09:35:16

不知你具体使用什么CubeIDE版本,我刚才基于STM32CubeIDE的V1.15和STM32G070的板验证,
没有什么不对劲的地方。


我也是基于CubeMx新建的工程,开启了TIMER的比较中断,在中断里做GPIO翻转都正常。当然
TIMER的PWM输出也正常。


会不会是板子方面的问题? 还是说堆栈配置方面的问题?


按理说测试代码简单、中断少话对栈的需求量也不大。不妨检查下CubeMx堆栈配置那个地方。

xmshao 发表于 2024-4-19 10:43:03

会不会是硬件方面的原因呢?

我刚才使用STM32CubeIDE v1.15新建了一个G071带外设中断的工程,没发现啥问题。

还有是不是你栈设置得过小。不过一般来讲,对于小测试工程默认也够了。

谭力宁 发表于 2024-4-19 13:36:58

butterflyspring 发表于 2024-4-18 17:42
用 cubemx 生成其他 IDE的工程,对比一下是否也飞了

那没有测试,目前知道是中断向量表问题,在main函数重新设置就好了。引起这个问题的原因不明。

谭力宁 发表于 2024-4-19 13:38:07

xmshao 发表于 2024-4-19 10:43
会不会是硬件方面的原因呢?

我刚才使用STM32CubeIDE v1.15新建了一个G071带外设中断的工程,没发现啥 ...

谢谢,目前找到原因是中断向量表问题,没有被初始化,在main函数重新初始化就好了。引起这个问题的原因不明。
页: [1]
查看完整版本: 用stm32cubeide生成的STM32G030F6P6代码只要一开中断,任何中断程序都会跑飞.