1. ADC 基础概念

模数转换器(ADC)是嵌入式系统中连接模拟物理世界与数字处理核心的关键桥梁。理解其核心原理与性能指标,是后续调试采样时序与 DMA 传输波形的基础。本节将系统梳理 ADC 的工作原理、分辨率、采样率、量化误差与信噪比。

1.1 ADC 工作原理

ADC 将连续变化的模拟电压转换为离散的数字码值。其核心流程包括采样、保持、量化与编码四个阶段。

核心流程: 模拟信号 → 采样保持 → 量化比较 → 数字编码 → 输出 N 位二进制码
ADC 工作原理流程 模拟输入 采样保持 量化比较 数字编码 N 位码 说明 采样保持电路在采样时钟控制下,将连续信号“冻结”为恒定电平,供后续量化比较器逐次逼近或并行比较。

常见的 ADC 架构包括:

  • 逐次逼近型(SAR ADC): 通过二分搜索逐位比较,速度与精度均衡,广泛用于 MCU 片内 ADC。
  • Σ-Δ 型: 过采样 + 噪声整形,分辨率极高,适用于音频与精密测量。
  • 流水线型: 多级级联,高速高精度,用于通信与视频采集。

1.2 分辨率

分辨率决定了 ADC 能够区分的最小模拟电压变化量,通常用位数 N 表示。分辨率越高,量化阶梯越细。

分辨率 (N bit) 量化阶梯数 (2N) LSB (Vref=3.3V) 典型应用
8 bit 256 12.89 mV 低精度传感器、按键检测
10 bit 1024 3.22 mV MCU 通用 ADC、电位器
12 bit 4096 0.806 mV 工业控制、电机电流检测
16 bit 65536 50.35 µV 精密仪器、音频采集
调试提示: 在驱动调试中,分辨率直接影响 DMA 传输的数据宽度。12 位 ADC 通常右对齐存储在 16 位半字中,DMA 配置时需注意传输大小设为半字(half-word)。

1.3 采样率

采样率(Sampling Rate)表示 ADC 每秒采集并转换的次数,单位是 SPS(Samples Per Second)。根据奈奎斯特采样定理,采样率必须至少为信号最高频率的两倍,才能无混叠地重建信号。

采样率与奈奎斯特准则 模拟信号 fin 采样点 (fs > 2fin) fs ≥ 2 × fin_max

实际调试中,采样率受以下因素制约:

  • ADC 时钟频率: 每个转换周期需要固定数量的 ADC 时钟周期(如 12 位 SAR 通常需要 12~16 个周期)。
  • 采样保持时间: 输入源阻抗越大,需要的采样时间越长,否则采样值不准确。
  • DMA 传输带宽: 高速采样时,DMA 需及时搬走数据,避免 FIFO 溢出。

1.4 量化误差

量化误差是 ADC 将连续模拟量映射到离散数字码时产生的固有误差。理想情况下,量化误差在 ±0.5 LSB 范围内均匀分布。

量化误差示意(3 bit ADC) 理想直线 实际量化阶梯 误差 量化误差 = 实际模拟值 − 数字码对应的中心电压,理想范围 ±0.5 LSB
调试注意: 如果采样保持时间不足或输入信号噪声过大,量化误差会显著超过 ±0.5 LSB,表现为波形上的“台阶”失真或码值跳变。此时应检查 ADC 采样周期配置与前端 RC 滤波。

1.5 信噪比(SNR)

信噪比衡量 ADC 输出中有用信号功率与噪声功率的比值,单位 dB。对于理想 N 位 ADC,理论最大 SNR 由量化噪声决定:

SNR (dB) = 6.02 × N + 1.76
分辨率 (N) 理论 SNR (dB) 实际典型 SNR (dB) 主要噪声来源
8 bit 49.9 45 ~ 48 电源纹波、参考电压抖动
10 bit 61.9 56 ~ 60 PCB 布局串扰、时钟抖动
12 bit 74.0 68 ~ 72 采样保持非线性、DMA 总线干扰
16 bit 98.1 85 ~ 92 热噪声、参考源漂移
调试关联: 在 DMA 传输波形验证中,通过 FFT 分析采集数据的频谱,可以直观评估实际 SNR。如果 SNR 明显低于理论值,应优先排查 ADC 参考电压稳定性与采样时钟抖动。

1.6 关键指标总结

下表汇总了 ADC 基础概念在驱动调试中的直接映射关系:

概念 驱动调试中的体现 常见问题
分辨率 决定数据寄存器宽度与 DMA 传输大小 数据对齐错误(左对齐/右对齐)
采样率 配置 ADC 时钟分频与采样周期寄存器 采样率不足导致信号混叠
量化误差 影响波形阶梯平滑度与有效位数 采样时间过短引入额外误差
信噪比 通过 FFT 评估采集质量 电源噪声耦合导致 SNR 劣化