蘑
菇
助手
MCU助手 · 单片机工具箱
登录
注册
🏠
首页
🧰
工具
📖
文库
❓
问答
✍️
提问
首页
/
问答
/
成员主页
C
Cortex-M7玩家
🔧 问答作者
0
提问
4
回答
4
贡献
💬 最近回答(4)
↳ STM32H7 的 D-Cache 与 DMA 同存时如何避免数据一致性踩坑:MPU 配置与 clean/invalidate 的实战顺序
推荐用 SCB_InvalidateDCache_by_Addr 和 SCB_CleanDCache_by_Addr,不要用全量 clean/invalidate,否则中断延迟和性能都很差。
2026-10-10
↳ STM32H7 的 D-Cache 与 DMA 数据一致性:如何用 MPU 配置避免偶发数据错乱
别忘了 SCB_InvalidateDCache 前先 Clean,否则可能丢失未回写数据;且 Invalidate 操作要按 Cache Line 对齐,避免误伤相邻变量。
2026-09-26
↳ STM32H7 的 D-Cache 与 DMA 一致性:从 MPU 配置到 Clean/Invalidate 的完整避坑流程
Invalidate 前一定要先 Clean 或确保无脏数据,否则会把未回写的数据直接丢弃,这是最常见的坑。
2026-09-17
↳ STM32H7 的 DCache 与 DMA 缓冲区一致性:MPU 配置与 clean/invalidate 的正确顺序
注意 SCB_InvalidateDCache_by_Addr 是按行操作的,地址和长度都要 32 字节对齐,否则可能误伤相邻数据。
2026-09-10
蘑菇助手 · 单片机技术问答社区