DMA可以减轻CPU的压力,让 CPU 去 睡觉,欢迎围观
DMA外设和存储器(或存储器和存储器)直接通过总线进行数据交换而不经过CPU的技术。在MCU中,DMA是一项十分重要的技术,它可以降低CPU的处理压力,提高外设数据的处理效率。 通道:DMA的通道表示一组外设对存储器的请求,数据对齐:源和目的数据源的地址要对齐,传输宽度对齐仲裁器:协调优先权,多个外设访问同一个存储器时可通过软件设置优先级,优先级相同时由硬件决策DMA的定义可以看出,这是一种利用总线的技术,降低CPU在数据读取和存储上面的压力,可以执行其他操作。当CPU初始化这个传输动作,传输动作本身是由DMA 控制器来实行和完成。 DMA主要特性直接存储器访问 (DMA) 用于在外设与存储器之间以及存储器与存储器之间提供高速数据传 输。可以在无需任何 CPU 操作的情况下通过 DMA 快速移动数据。这样节省的 CPU 资源可 供其它操作使用。以下系列都有DMA功能:
STC32G12K128系列、STC8H8K64U系列、STC8H4K64TL系列、STC8H4K64TLCD系列 DMA也会占用总线带宽的,只是比用软件效率高很多而已 ayb_ice 发表于 2022-5-30 08:52
DMA也会占用总线带宽的,只是比用软件效率高很多而已
RMB5, 2路CAN, 3路LIN, 3路 SPI, 128k Flash的 STC32G12K128 很好的处理了这一点,CPU 使用 edata/4k, 不够用时才使用 xdata/8k, DMA 使用 xdata/8k, 基本分开并行处理了
3路 SPI=====2路 USART 有 2个完整的 SPI, 再加独立的 SPI
STCMCUNT018 发表于 2022-5-30 13:28
RMB5, 2路CAN, 3路LIN, 3路 SPI, 128k Flash的 STC32G12K128 很好的处理了这一点,CPU 使用 edata/4k, 不 ...
SFR不能按16位,32位访问是硬伤,希望尽快改进
页:
[1]