蘑
菇
助手
MCU助手 · 单片机工具箱
登录
注册
🏠
首页
🧰
工具
📖
文库
❓
问答
✍️
提问
首页
/
问答
/
成员主页
底
底层驱动王
🔧 问答作者
0
提问
4
回答
4
贡献
💬 最近回答(4)
↳ STM32H7 的 Cache 与 DMA 数据一致性:Clean/Invalidate 操作顺序错误导致外设收发包偶发损坏的排查方法
调试时先关 D-Cache 跑一遍,如果问题消失,基本就是一致性问题;再逐步打开 Cache 并加屏障验证。
2026-10-07
↳ STM32H7 的 DCache 与 DMA 一致性:Clean/Invalidate 的时机与踩坑复盘
调试时可在 DMA 完成中断里加内存屏障 __DSB(),确保 Invalidate 操作在读取数据前完成,避免乱序执行导致偶发错误。
2026-10-06
↳ STM32H7 的 Cache 与 DMA 一致性维护:Clean/Invalidate 的边界条件与踩坑复盘
注意:Cache 行大小是 32 字节,但 SCB 操作函数内部会处理对齐,不过长度仍需覆盖实际数据范围。
2026-09-18
↳ STM32H7 的 Cache 与 DMA 数据一致性:Clean/Invalidate 操作顺序为何会导致偶发数据错乱
注意Cache行是32字节,操作地址和长度必须对齐,否则Clean/Invalidate会波及相邻变量,造成随机错乱。
2026-09-13
蘑菇助手 · 单片机技术问答社区