普通ADC采样是单路ADC独立工作,各自采集对应信号源,通道之间互不关联。而ADC三重采样模式(Triple ADC Mode),是在极海APM32F425这类搭载ADC1/ADC2/ADC3三个独立模块的MCU上,通过多ADC协同配合,利用同步或交替时序,实现更高采样率、多通道同步采集或信噪比优化的高级工作模式,在STM32F3/F4/H7等系列芯片中也广泛应用。
ADC转换分为采样和转换两个阶段。三重模式的核心思路,就是让三个ADC在时间上交错或同步触发,并行完成采样与转换,从而突破单ADC速率瓶颈,或实现多路信号在时间上严格对齐采集。
一、三重ADC两种核心工作模式
三重ADC主要分为同步采样与交替采样两种实现方式,适用场景与性能特点差异明显。
1.同步采样模式
同步采样是三重规则通道最常用的配置方式,核心目标是保证多路信号采集时刻完全一致,消除时序偏差带来的测量误差。
工作原理
三个ADC共用同一个外部触发源,例如定时器TRGO信号或外部GPIO触发,触发信号同时启动三路ADC的规则通道转换。每个ADC可配置独立的规则通道,采样在同一时刻完成,转换过程并行执行,最终得到一组时间戳完全对齐的数据。
例如:ADC1采集电压、ADC2采集电流、ADC3采集温度,同一触发信号可实现三路信号同步采样,便于后续数据融合与算法计算。
模式特点
优势:多路数据时间完全对齐,无相位差与时序差,适合三相电力、电机矢量控制、多传感器融合等对同步精度要求高的场景。
局限:总采样率不高于单ADC速率,三路ADC并行转换,速率无法叠加。
配置要点
三路ADC独立配置规则通道序列,采样时间、数据对齐方式保持一致。
关闭自动连续转换,使用单次转换或保证时序同步的连续转换模式。
在公共控制寄存器中配置同步模式,关闭交替时序。
2.交替采样模式
交替采样的核心目标是突破单ADC速率上限,实现高频信号的高速连续采集。
工作原理
以主ADC(通常为ADC1)生成交错时序,ADC1/ADC2/ADC3的采样时刻依次微小延迟,转换阶段并行互不干扰。最终整体采样率接近单ADC速率的三倍。
例如单ADC速率2.4MSPS,三重交替模式下可实现约7.2MSPS的高速采集,适用于振动信号、超声信号等高频采集场景。
模式特点
优势:大幅提升采样速率,无需额外硬件,通过时序并行实现速度倍增。
局限:多路信号存在微小时序偏差,对系统时钟、PCB布线要求更高,数据解析需按固定交替顺序处理。
配置要点
三路ADC可配置为同一通道或相同序列通道,保证采样一致性。
设置合理的转换延迟,控制三路ADC采样错开周期。
在公共寄存器中开启交替同步模式,启用速率叠加功能。
二、三重同步注入采样配置实例(电机三相电流采集)
在电机控制等应用中,三相电流采样对同步性要求极高,通常采用三重同步注入模式。以下为基于APM32F425的典型配置示例:
void MX_ADC1_Init(void){GPIO_Config_T gpioConfig = {0};ADC_Config_T adcConfig = {0};ADC_CommonConfig_T adcCommonConfig ;/* Peripheral clock enable */RCM_EnableAPB2PeriphClock(RCM_APB2_PERIPH_ADC1);RCM_EnableAPB2PeriphClock(RCM_APB2_PERIPH_ADC2);RCM_EnableAPB2PeriphClock(RCM_APB2_PERIPH_ADC3);RCM_EnableAHB1PeriphClock(RCM_AHB1_PERIPH_GPIOA);/**ADC1 GPIO ConfigurationPA0 ------> ADC123_IN0PA1 ------> ADC123_IN1PA2 ------> ADC123_IN2PA3 ------> ADC123_IN3*/gpioConfig.pin = IU_Pin|IV_Pin|IW_Pin|VS_Pin;gpioConfig.mode = GPIO_MODE_AN;gpioConfig.pupd = GPIO_PUPD_NOPULL;GPIO_Config(GPIOA, &gpioConfig);/* ADC Common Configuration */adcCommonConfig.mode = ADC_MODE_TRIPLE_INJECSIMULT;adcCommonConfig.prescaler = ADC_PRESCALER_DIV4; //30MHZ adcadcCommonConfig.accessMode = ADC_ACCESS_MODE_2;adcCommonConfig.twoSampling = ADC_TWO_SAMPLING_5CYCLES;ADC_CommonConfig(&adcCommonConfig);adcConfig.continuousConvMode = DISABLE;adcConfig.dataAlign = ADC_DATA_ALIGN_RIGHT;adcConfig.extTrigConv = ADC_EXT_TRIG_CONV_TMR1_CC1;adcConfig.extTrigEdge = ADC_EXT_TRIG_EDGE_NONE;adcConfig.nbrOfChannel = 3;adcConfig.resolution = ADC_RESOLUTION_12BIT;adcConfig.scanConvMode = ENABLE;ADC_Config(ADC1, &adcConfig);ADC_Config(ADC2, &adcConfig);ADC_Config(ADC3, &adcConfig);ADC_ConfigExternalTrigInjectedConv(ADC1,ADC_EXT_TRIG_INJEC_CONV_TMR1_TRGO);ADC_ConfigExternalTrigInjectedConvEdge(ADC1,ADC_EXT_TRIG_INJEC_EDGE_FALLING);ADC_ConfigInjectedSequencerLength(ADC1,4);ADC_ConfigInjectedChannel(ADC1,ADC_CHANNEL_0,1,ADC_SAMPLETIME_3CYCLES);ADC_ConfigInjectedChannel(ADC1,ADC_CHANNEL_0,2,ADC_SAMPLETIME_3CYCLES);ADC_ConfigInjectedChannel(ADC1,ADC_CHANNEL_0,3,ADC_SAMPLETIME_3CYCLES);ADC_ConfigInjectedChannel(ADC1,ADC_CHANNEL_0,4,ADC_SAMPLETIME_3CYCLES);ADC_ConfigExternalTrigInjectedConv(ADC2,ADC_EXT_TRIG_INJEC_CONV_TMR1_TRGO);ADC_ConfigExternalTrigInjectedConvEdge(ADC2,ADC_EXT_TRIG_INJEC_EDGE_FALLING);ADC_ConfigInjectedSequencerLength(ADC2,4);ADC_ConfigInjectedChannel(ADC2,ADC_CHANNEL_1,1,ADC_SAMPLETIME_3CYCLES);ADC_ConfigInjectedChannel(ADC2,ADC_CHANNEL_1,2,ADC_SAMPLETIME_3CYCLES);ADC_ConfigInjectedChannel(ADC2,ADC_CHANNEL_1,3,ADC_SAMPLETIME_3CYCLES);ADC_ConfigInjectedChannel(ADC2,ADC_CHANNEL_1,4,ADC_SAMPLETIME_3CYCLES);ADC_ConfigExternalTrigInjectedConv(ADC3,ADC_EXT_TRIG_INJEC_CONV_TMR1_TRGO);ADC_ConfigExternalTrigInjectedConvEdge(ADC3,ADC_EXT_TRIG_INJEC_EDGE_FALLING);ADC_ConfigInjectedSequencerLength(ADC3,4);ADC_ConfigInjectedChannel(ADC3,ADC_CHANNEL_2,1,ADC_SAMPLETIME_3CYCLES);ADC_ConfigInjectedChannel(ADC3,ADC_CHANNEL_2,2,ADC_SAMPLETIME_3CYCLES);ADC_ConfigInjectedChannel(ADC3,ADC_CHANNEL_2,3,ADC_SAMPLETIME_3CYCLES);ADC_ConfigInjectedChannel(ADC3,ADC_CHANNEL_3,4,ADC_SAMPLETIME_3CYCLES);//ADC_EnableMultiModeDMARequest();ADC_Enable(ADC1);ADC_Enable(ADC2);ADC_Enable(ADC3);//ADC_SoftwareStartConv(ADC1);}
该配置重点保证了三路电流采样在同一时刻触发,最大程度减少相位误差,满足电机FOC等算法对同步采样的严苛要求。
极海APM32F425的三重ADC模式提供了灵活且强大的采集能力:
同步模式侧重多路信号时间对齐,适合电力电子、电机控制等强同步场景;
交替模式侧重速率提升,通过并行方式突破单ADC速度极限,显著提升系统采样性能。
实际开发中可根据信号频率、同步要求、算法需求灵活选择,在不增加硬件成本的前提下,大幅提升系统采集精度与实时性。
Copyrights© Shenzhen Linkchip Co.,LTD All Rights Reserved.