单片机中ADC直接通道和附加通道什么区别?

在单片机(尤其是以 STM32H7 系列为代表的高性能 MCU)中,直接通道(Direct Channels) 附加通道(Additional Channels)是针对模拟输入引脚到 ADC 内部核心之间硬件布线结构的一种划分。

理解这两者的区别,对于高精度、高速信号采集的 PCB 设计至关重要。

1. 核心区别:内部硬件架构不同

它们最根本的区别在于:信号在芯片内部传输时,有没有经过额外的模拟开关(Analog Switch)。

直接通道 (Direct Channels)
  • 架构: 引脚直接连接到 ADC 内部的采样保持电路(Sample and Hold)。

  • 特点: 路径上没有经过任何的多路复用模拟开关。

  • 性能: 寄生电容极小,输入阻抗极低,信号衰减几乎为零。

附加通道 (Additional Channels)
  • 架构: 引脚与 ADC 核心之间隔着一个或多个内部模拟开关(Analog Switches)。为了让更多的引脚能复用为 ADC 输入,MCU 内部引入了路由开关。

  • 特点: 当你开启该通道时,内部开关导通。这个开关本身会带来额外的等效串联电阻(R_ON,通常在 1kΩ~2kΩ 左右)和寄生电容。

2. 关键性能对比

由于硬件结构的不同,它们在实际开发中的表现有很大差异:

对比维度 直接通道 (Direct) 附加通道 (Additional)
通道寄生电阻 ( R_ON**)** 极低(可忽略) 较高(约1kΩ~2kΩ ,且随温度微幅漂移)
高频/高速信号响应 极好 较差(受高阻抗和寄生电容影响,高频信号会失真)
最高采样率支持 可达到 ADC 的全速额定最高采样率 可能需要**延长采样时间(Sampling Time)**才能充满电容
输入阻抗匹配要求 较低(对前级驱动能力要求不高) 较高(前级信号源阻抗必须足够低,否则电压采不准)

3. 为什么附加通道采不准?(采样时间问题)

ADC 的内部本质上是一个采样电容 (C_ADC)。采样时,外部信号需要通过引脚向这个电容充电,当电容电压等于外部电压时,才能进行精准转换。

根据电路原理,充电时间取决于 R * C。

  • 直接通道: 电阻 R很小,充电极快,哪怕在最高采样率下,短时间内电容也能充满。

  • 附加通道: 引入了 1kΩ~2kΩ 的内部开关电阻,导致 R * C时间常数变大,充电变慢。

⚠️ 大坑: 如果你用附加通道 去采集信号,却在软件里把"采样时间(Sampling Time)"设得非常短(比如几个时钟周期),采样电容还没来得及充满,ADC 就开始转换了。这会导致采集到的电压值明显偏低 ,或者相邻通道之间出现严重的串扰(上一个通道的残留电荷没放完/没充满)。

4. 开发与布线实战建议

在规划单片机引脚时,应当遵循"各司其职"的原则:

  1. 高频、高速、微弱交流信号: 例如:交流电流互感器、超声波测距接收端、高频检波信号、局放信号。

    • 选型: 必须优先分配给直接通道(如 STM32H7 的 PC0~PC5,PA6、PA7 等)。
  2. 低速、直流、大信号: *例如:NTC 温度传感器、电池电压监测(分压后)、可调电位器、直流电源轨监测。

    • 选型: 可以放心分配给附加通道
  3. 附加通道的软件优化: 如果在硬件上不得不使用附加通道采集较为敏感的信号,请务必在 CubeMX 或代码中将该通道的采样时间(Sampling Time)调大(例如从 2.5 周期调大到 64.5 或 387.5 周期),给内部电容留出充足的充电时间。

相关推荐
2401_8541515515 小时前
ARM Cortex-M 体系结构深度解析——寄存器模型、处理器模式、AAPCS 与异常模型
arm开发·stm32·单片机·嵌入式硬件
KaifuZeng18 小时前
通信与接口协议面试五、RS422
嵌入式硬件·面试·通信与接口
迷茫、Peanut19 小时前
蜂鸣器介绍
单片机
Topplyz19 小时前
如何减小DCDC的纹波?
单片机·嵌入式硬件·硬件工程·电源·layout·dcdc
sramdram21 小时前
灵动高性能32位MCU空调解决方案
单片机·嵌入式硬件·mcu·32位mcu
Hotchip_MEMS1 天前
ASIC+MCU方案简化:MS2102AB-M00如何降低主控芯片的判别压力?
人工智能·单片机·嵌入式硬件·物联网·制造
sramdram1 天前
应用在单片机上的MRAM芯片嵌入式存储方案
单片机·嵌入式硬件·mram·mram芯片
piaoyiren1 天前
普中A6 STC8A 动态数码管显示讲解
嵌入式硬件·51单片机·c
阿拉斯攀登1 天前
内核模块开发:module_init 与模块机制详解
linux·网络·嵌入式硬件·linux驱动