硬汉嵌入式论坛

 找回密码
 立即注册
查看: 955|回复: 2
收起左侧

[MPU] STM32H743 使用MPU管理 AXI-SRAM造成HardFault

[复制链接]

0

主题

3

回帖

3

积分

新手上路

积分
3
发表于 2024-11-24 03:00:09 | 显示全部楼层 |阅读模式
本帖最后由 dreamland 于 2024-11-24 03:04 编辑

我最近在学习MPU,看到了MPU有一个可以阻止一部分内存进入Cache的作用,所以我就使用了一下,CubeMX的MPU的配置如下:
1.png
其实重点还是放到了Region2上
然后我又使用了LVGL,FreeRTOS,但是每次运行到这个函数处就会进入HardFault:
2.png
这个文件是LVGL下Src/themes/default/lv_theme_default.c文件,卡住的这一行是lv_theme_default_init这个函数
在theme->base.color_secondary = color_secondary 这一行直接进入了HardFault
我查看了它的反汇编和寄存器值,如下:
registers
4.png
disassembly
3.png
我尝试把Region 2这一块MPU关掉,就可以正常运行了,是不是我的MPU设置有问题呢?还是需要有一些其他的配置才可以使之正常运行?
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
115490
QQ
发表于 2024-11-24 10:14:07 | 显示全部楼层
你的MPU配置是Strongly order,这个属性下,字节对齐访问有问题会造成异常,你看下你的hard fault错误类型是不是对齐错误,如果是,那就是这个问题。
回复

使用道具 举报

0

主题

3

回帖

3

积分

新手上路

积分
3
 楼主| 发表于 2024-11-24 19:03:46 | 显示全部楼层
eric2013 发表于 2024-11-24 10:14
你的MPU配置是Strongly order,这个属性下,字节对齐访问有问题会造成异常,你看下你的hard fault错误类型 ...

确实是!!感谢硬汉哥!!!终于排除这个错误了!!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2025-4-28 19:52 , Processed in 0.236428 second(s), 28 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表