你好,
我设计了一个设置,每隔 25 µs 一个 PIT 触发信号 DMA,将数据从一个缓冲区传输到另一个缓冲区。每个大循环发生 10 次,因此整个大循环每 250 µs 完成一次,我可以使用逻辑分析仪确认这一点。
PIT --> DMA --> 主要循环中断
现在,我正在尝试将 DMA 配置为以主环路间隔的一半(即每 125 µs)触发信号中断。但是,中断仍然是每 250 µs 才触发一次,好像半大环中断功能不起作用。
为了帮助研究这个问题,我创建了一个示例项目供大家参考。如果你能帮忙弄清楚为什么半主循环中断没有按预期触发信号,我将不胜感激。
此外,我还有一个问题:
" 数据包结束信号" 在 DMA 中是什么,通常如何使用?
您好,
如果您有周期触发信号并且仅启用 DMA 半主要中断,则第一次触发信号会在半间隔 (125us) 之后发生,但随后的中断将以 250us 的速率再次触发。同时启用半主要中断和主要中断,每 125us 就会中断一次。
"数据包结束信号" 功能应该禁用。
https://community.nxp.com/t5/S32-Design-Studio/Possible-bug-in-DMA-RTD-driver/td-p/1701972进行了一些讨论
BR, Petr