棋子 · 2020年02月17日

Hard fault : Cortex M0+ platform.

Micro-Controller platform: STM32L0x1

Environment: Bare-Metal (No OS)

Brief description of the problem:

From interrupt context, we are trying to copy information received to EEPROM. Soon after entering into this routine, we it hard fault.

I started to debug according to the information provided here,

https://community.arm.com/dev...

But still can't exactly figure out the reason. In fact just to verify, even if we don't write to EEPROM the program still crashed. I have attached register information here.

I suspect it could be something related to stack corruption but unable to prove my theory. Any direction to solve this mystery will be greatly appreciated.

1 个回答 得票排序 · 时间排序
极术小姐姐 · 2020年02月17日

You set it to zero but it is -4?! I'd just try and set it to a RAM address.

你的回答
关注数
1
收藏数
0
浏览数
2679
极术小姐姐
极术微信服务号
关注极术微信号
实时接收点赞提醒和评论通知
安谋科技学堂公众号
关注安谋科技学堂
实时获取安谋科技及 Arm 教学资源
安谋科技招聘公众号
关注安谋科技招聘
实时获取安谋科技中国职位信息