4c1l 发表于 2025-5-21 23:53

使用 DMA 实现 ADC 连续转换实战指南(适合初学者)

为什么要用 DMA?
传统 ADC 转换结果读取方式是:

转换完成 → 中断 → 读取数据 → 存入数组

问题:

CPU 每次都需处理中断;

采样频率高时,CPU 被严重占用。

DMA 优势:

自动搬运 ADC 结果到 RAM;

无需中断干预,CPU 空出来做其他事;

支持多通道、序列采样。

使用 DMA 实现 ADC 连续采样的整体流程
配置 ADC(序列模式 + 多通道)

配置 DMA(源地址:ADC数据寄存器 → 目标地址:内存数组)

启动 ADC 转换(软件或定时器触发)

等 DMA 完成传输(可选中断或查询)

处理采样结果

页: [1]
查看完整版本: 使用 DMA 实现 ADC 连续转换实战指南(适合初学者)