The ADC driver provides API to configure the ADC module. Below are the high level features supported by the ADC driver.
Features Supported
- Each ADC has 6 selectable single ended or 3 selectable differential inputs.
- 12-bit resolution with 4 MSPS sampling rate max.
- 16 configurable SOCs and 16 individually addressable result registers for each SOC.
- Multiple trigger sources - software, all ePWMs ADCSOC A or B, ADCINT1/2, etc.
- Burst mode.
- Four post processing blocks each with saturating offset calibration, error from setpoint calculation, high, low or zero crossing compare, trigger to sample delay capture.
- External Channel Select for SOCs.
- Trigger Repeater for oversampling and undersampling
- PPB Aggregater feature like Min, Max, Sum for given SOC.
- Safety tiles to compare the ADC results and Safety Aggregator to generate Interrupt on various comparison results.
SysConfig Features
- Note
- It is strongly recommend to use SysConfig where it is available instead of using direct SW API calls. This will help simplify the SW application and also catch common mistakes early in the development cycle.
- Selecting ADC Clock Prescaler.
- Selecting ADC Signal Mode - Single ended or Differential.
- Specifying channels, triggers and sample window size for each ADC SOC.
- Enabling and configuring ADC interrupts.
- Configuring Post Processing Blocks.
- Specifying Burst mode trigger and size.
Features NOT Supported
NA
Important Usage Guidelines
- ADC has a power up time of 500us. Therefore this delay must be allowed between powering up the ADC and starting the sampling of the signal. Sysconfig already handles this, but if ADC is powered up manually by using the API, then this power up delay must be added.
Example Usage
Include the below file to access the APIs
API
APIs for ADC