Overview

ADC (Analog-to-Digital Converter) blocks provide high-performance data acquisition for motor control, power conversion, and sensor applications. The MPLAB Blockset offers ADC blocks optimized for different device families, from 10-bit converters to 12-bit SAR ADCs with multiple dedicated cores, hardware sequencing, and PWM synchronization.

Available ADC Blocks

ADC - Standard ADC for dsPIC/PIC24


ADC HighSpeed SAR dsPIC - High-Speed SAR ADC for dsPIC33C


ADC HS 12b - High-Speed 12-bit ADC for dsPIC33A


ADC HighSpeed SAR - High-Speed SAR ADC for PIC32


ADC SAM E5x - ADC for SAM E5x/D5x/C2x


AFEC SAM7x - Analog Front-End Controller for SAM E7x/S7x/V7x


ADC SAMRH707x - Radiation-Hardened ADC for SAM RH707x


Block Selection Guide

By Device Family

Device FamilyRecommended ADC BlockKey Advantage
dsPIC30F / dsPIC33FADCdsPIC30F/33F support, proven reliability
dsPIC33E (non-GS)ADC10/12-bit, simultaneous sampling
dsPIC33C (CH/CK/CDV)ADC_HighSpeed_SAR_dsPICDedicated cores, 3.25 Msps
dsPIC33A (33AK)ADC_HS_12bSoftware sequencing, 12-bit precision
PIC24ADCCompatible with PIC24 peripherals
PIC32MK / PIC32MZADC_HighSpeed_SARHigh-speed, special inputs (VBat, Temp)
SAM E5x / D5x / C2xADC_SAME5xDual ADC, oversampling
SAM E7x / S7x / V7xAFEC_SAM7xProgrammable gain, offset compensation
SAM RH707xADC_SAMRH707xRadiation hardened, aerospace-grade

By Application Requirements

ApplicationBlock ChoiceWhy?
3-Phase FOC (dsPIC33A)ADC_HS_12b12-bit precision, flexible sequencing
3-Phase FOC (dsPIC33C)ADC_HighSpeed_SAR_dsPICDedicated cores for simultaneous sampling
3-Phase FOC (dsPIC33E/F)ADCSimultaneous sampling mode
Dual Motor ControlADC_HighSpeed_SAR_dsPIC6 dedicated cores
Precision MeasurementAFEC_SAM7xProgrammable gain, offset compensation
High-Speed Multi-ChannelADC_HighSpeed_SAR3.25 Msps per core
Battery MonitoringADC_HighSpeed_SARVBat special input
Temperature SensingADC_HighSpeed_SARInternal temperature sensor
Aerospace ApplicationsADC_SAMRH707xRadiation hardening, fault detection

By Resolution Requirements

🟢 10-bit (Good for fast sampling, noise-tolerant applications)

  • ADC - dsPIC30F/33F/33E/PIC24
  • ADC_HighSpeed_SAR - PIC32/dsPIC33C (10-bit mode)

🟡 12-bit (Standard for motor control, precision sensing)

  • ADC - dsPIC33E/33C (12-bit mode)
  • ADC_HighSpeed_SAR_dsPIC - dsPIC33C
  • ADC_HS_12b - dsPIC33A (12-bit fixed)
  • ADC_SAME5x - SAM E5x/D5x/C2x
  • AFEC_SAM7x - SAM E7x/S7x/V7x

🔴 Enhanced Resolution (Oversampling for ultra-precision)

  • AFEC_SAM7x - 16-bit with oversampling
  • ADC_SAME5x - 16-bit with oversampling

ADC-PWM Synchronization

Critical for motor control and power conversion - ADC sampling must be synchronized with PWM to avoid sampling during switching transients.

Synchronization Methods:

MethodDescriptionUse Case
PWM Special Event (SEVTCMP)Trigger at specific point in PWM periodCenter-aligned PWM (valley sampling)
PWM Trigger OutputsUp to 8 independent triggers (dsPIC33A)Multi-phase, multi-motor
Timer ComparePeriodic trigger from timerEdge-aligned PWM, general DAQ
External TriggerHardware trigger inputSynchronization with external events

Best Practices:

  • Valley sampling: Set SEVTCMP = 0 for center of low-side conduction (minimum noise)
  • Edge-aligned: Trigger at start or middle of PWM period
  • Verify timing: Use oscilloscope to confirm trigger point relative to PWM edges
  • Sample time: Adjust SAMC parameter based on source impedance and switching noise settling time

Device Family Support Summary

ADC BlockdsPIC30FdsPIC33FdsPIC33EdsPIC33CdsPIC33APIC24PIC32MKPIC32MZSAM E5xSAM E7xSAM RH707x
ADC✅ (non-GS)
ADC_HighSpeed_SAR_dsPIC
ADC_HS_12b
ADC_HighSpeed_SAR⚠️
ADC_SAME5x
AFEC_SAM7x
ADC_SAMRH707x

Legend: ✅ Full Support | ⚠️ Shared with PIC32 | ❌ Not Available


See Also

Related Block Categories:

Application Notes:

  • AN1078 - Sensorless Field-Oriented Control (FOC) for PMSM
  • AN1292 - Sensorless FOC of Three-Phase PMSMs
  • AN1160 - Sensorless FOC of PMSM Motors

Example Projects:


💡 Quick Selection Guide:

  • Need dsPIC30F/33F/33E/PIC24 support? → ADC
  • Need high-speed multi-channel? → ADC_HighSpeed_SAR_dsPIC or ADC_HighSpeed_SAR
  • Need precision measurement? → AFEC_SAM7x (programmable gain)
  • Need aerospace reliability? → ADC_SAMRH707x (radiation hardened)
  • Using dsPIC33A? → ADC_HS_12b

ADC - Standard ADC Block

Standard ADC block supporting up to 32 analog inputs with 10-bit or 12-bit resolution, simultaneous or sequential sampling, DMA transfers, and …

Read more →

ADC HighSpeed SAR - High-Speed SAR ADC Block

High-speed SAR ADC with dedicated cores for simultaneous multi-channel acquisition. Ideal for motor control and high-throughput applications. Block …

Read more →

ADC HighSpeed SAR dsPIC - High-Speed SAR ADC for dsPIC33C

MCHP_ADC_HighSpeed_SAR_dsPIC - dsPIC-style interface (this block) MCHP_ADC_HighSpeed_SAR - PIC32-style interface Both blocks configure the same …

Read more →

ADC HS 12b - 12-bit High-Speed ADC for dsPIC33A

Advanced 12-bit high-speed ADC with flexible software sequencing for dsPIC33A. Each ADC core supports 6 independent sequences with 6 conversions per …

Read more →

ADC SAME5x - ADC for SAM E5x/D5x/C2x Families

SAM E5x - High-performance Cortex-M4F (SAME51, SAME53, SAME54) - SAM D5x - Cost-optimized Cortex-M4F (SAMD51) - SAM C2x - Motor control focused …

Read more →

ADC SAMRH707x - ADC for SAM RH707x Radiation-Hardened MCU

SAMRH707 - 300 MHz Arm Cortex-M7 with radiation hardening - SAMRH70 - Radiation-tolerant variant Supported Device Families SAM RH707x Key Features …

Read more →

AFEC SAM7x - Analog Front-End Controller for SAM 7x

SAM E70 - High-performance Cortex-M7 (up to 300 MHz) - SAM S70 - Secure Cortex-M7 with TrustZone - SAM V70/V71 - Automotive-qualified Cortex-M7 …

Read more →