ZHCUAN6E October 2022 – May 2025 MSPM0L1105 , MSPM0L1106 , MSPM0L1116 , MSPM0L1117 , MSPM0L1227 , MSPM0L1227-Q1 , MSPM0L1228 , MSPM0L1228-Q1 , MSPM0L1303 , MSPM0L1304 , MSPM0L1304-Q1 , MSPM0L1305 , MSPM0L1305-Q1 , MSPM0L1306 , MSPM0L1306-Q1 , MSPM0L1343 , MSPM0L1344 , MSPM0L1345 , MSPM0L1346 , MSPM0L2227 , MSPM0L2227-Q1 , MSPM0L2228 , MSPM0L2228-Q1
DMA 路由是外设与 DMA 控制器之间的固定路由,(可选)通过附加边带信号将 DMA 完成条件从 DMA 控制器传递回触发外设,以指示 DMA 活动何时运行到结束。DMA 触发路由如图 7-2 所示。
大多数能够生成 DMA 触发的外设还有一组额外的事件管理寄存器(除了用于 CPU 中断和任何 GEN_EVENTx 通用路由发布者的 CPU_INT 寄存器外)。可使用这些寄存器来选择用于生成 DMA 触发的外设条件。
当 DMA 接收到触发信号时,DMA 确认请求,外设清除该请求。DMA 还确认已清除的请求,之后外设可以发出新的请求。
DMA 路由还可以包含状态信号(针对特定外设),以向触发外设指示 DMA 传输序列已完成。例如,可以设置 DMA,以便根据 UART TX DMA 触发,从 SRAM 缓冲区传输 N 个字节到 UART TX 数据寄存器中。每次从 UART 触发时,DMA 都会确认传输成功。在第 N 个字节上,DMA 将向 UART 发送一个完整状态信号,UART 可使用该信号将传输完成中断传播到 CPU。
某些外设(例如 12 位 DAC)不会实现用于管理其 DMA 触发的事件管理寄存器组。在这些情况下,外设会实现特定的 DMA 配置逻辑,这样管理寄存器就不需要与 DMA 连接。图 7-3 展示了未实现事件管理寄存器时的模型。有关在这种情况下如何配置 DMA 通道的指导,请参阅本文档的外设特定部分。