You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Cortex-M4平台MPU受保护区域无法抵御EEFC_FCR寄存器ES指令擦除的问题咨询

Cortex-M4平台MPU受保护区域无法抵御EEFC_FCR寄存器ES指令擦除的问题咨询

各位技术同行们好,我最近在Cortex-M4上配置MPU时遇到了一个困惑,想跟大家请教下:

我给芯片设置了一个MPU区域,AP编码设为000(完全禁止访问),相关寄存器配置代码如下:

MPU->RBAR = address | (1 << 4) | (1 << 0);
MPU->RASR = (1 << 17) | (1 << 3) | (1 << 0);
MPU->CTRL = 0b111;
SCB->SHCSR |= (1 << 16);

测试下来,如果从背景区域尝试往这个受保护的区域写数据,确实会触发故障,这符合预期。但奇怪的是,当我通过EEFC_FCR寄存器的ES指令去擦除这个MPU保护区域时,操作居然毫无阻碍地执行成功了。

我想问问大家:是不是MPU本来就不会对Flash控制器发起的擦除操作进行保护?

备注:内容来源于stack exchange,提问作者zeb92

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.17 07:48:07