您的位置 首页 模拟

关于调试STM32进入HardFault_Handler的问题

最近调试UCGUI和UCOSII,程序莫名其妙的死掉了,用JLINK调试,发现进入了HardFault_Handler,主要原因有两个,堆栈溢出和数组越界,很不幸

最近调试UCGUI和UCOSII,程序不可思议的死掉了,用JLINK调试,发现进入了HardFault_Handler,主要原因有两个,仓库溢出和数组越界,很不幸的是这两种状况都被我碰到了。

榜首次是用UCGUI在一个button上显现文字,发现字符串显现不全,只显现榜首个字符,在发动文件startup_stm32f10x_md.s中修正“Stack_Size EQU 0x00000200”,将仓库改大点,改为“Stack_Size EQU 0x00000400”后显现正常。
第2次是UCGUI和UCOSII联合调试时,也进入了HardFault_Handler,这次原因是数组越界,在一个函数中界说了一个数组ya[10],界说了一个计数变量count,因为没有初始化count,导致count的值一开始就大于数组鸿沟,导致数组越界,初始化count=0后,程序正常。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/zhishi/moni/260019.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部