完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
1、STM32f1系列
2、上了FreeRTOS 3、想开发函数调用回溯功能 在编译选项中增加了--use_frame_pointer,编程一个正常的程序(之前一直run的),测试发现,程序启动即crash,请问有没有高手之前遇到过? |
|
相关推荐
1个回答
|
|
首先,我们来分析一下问题。您在STM32F1系列上使用了FreeRTOS,并在编译选项中增加了`--use_frame_pointer`以实现函数调用堆栈回溯功能。然而,在尝试运行程序时,程序启动即崩溃。
要解决这个问题,我们可以按照以下步骤进行: 1. 确保您的FreeRTOS配置正确。检查您的FreeRTOS配置文件(通常是`FreeRTOSConfig.h`),确保所有设置都是正确的,特别是与堆栈相关的设置。 2. 检查您的启动文件。确保您的启动文件(通常是`startup_stm32f10x_md.s`或类似文件)正确地设置了堆栈指针。如果堆栈指针设置不正确,程序可能会在启动时崩溃。 3. 检查您的中断向量表。确保中断向量表正确地指向了您的中断处理函数。如果中断向量表设置不正确,程序可能会在启动时崩溃。 4. 检查您的堆栈大小。确保您为每个任务分配了足够的堆栈空间。如果堆栈空间不足,程序可能会在启动时崩溃。 5. 检查您的代码中是否有内存泄漏或其他问题。这些问题可能导致程序在启动时崩溃。 6. 如果以上步骤都无法解决问题,您可以尝试暂时移除`--use_frame_pointer`选项,看看程序是否能够正常运行。如果移除该选项后程序能够正常运行,那么可能是您的编译器或工具链与该选项不兼容。在这种情况下,您可能需要寻找其他方法来实现函数调用堆栈回溯功能。 |
|
|
|
只有小组成员才能发言,加入小组>>
调试STM32H750的FMC总线读写PSRAM遇到的问题求解?
1614 浏览 1 评论
X-NUCLEO-IHM08M1板文档中输出电流为15Arms,15Arms是怎么得出来的呢?
1541 浏览 1 评论
970 浏览 2 评论
STM32F030F4 HSI时钟温度测试过不去是怎么回事?
682 浏览 2 评论
ST25R3916能否对ISO15693的标签芯片进行分区域写密码?
1592 浏览 2 评论
1863浏览 9评论
STM32仿真器是选择ST-LINK还是选择J-LINK?各有什么优势啊?
644浏览 4评论
STM32F0_TIM2输出pwm2后OLED变暗或者系统重启是怎么回事?
515浏览 3评论
531浏览 3评论
stm32cubemx生成mdk-arm v4项目文件无法打开是什么原因导致的?
504浏览 3评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-21 22:38 , Processed in 0.767897 second(s), Total 81, Slave 63 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号