SAMV71 Xplained Ultra Software Package 1.4

adc.h File Reference

#include <assert.h>
#include <stdint.h>

Go to the source code of this file.

Defines

#define ADC_CLOCK_MAX   20000000
#define ADC_STARTUP_NORMAL_MAX   40
#define ADC_STARTUP_FAST_MAX   12
#define ADC_CHANNEL_0   0
#define ADC_CHANNEL_1   1
#define ADC_CHANNEL_2   2
#define ADC_CHANNEL_3   3
#define ADC_CHANNEL_4   4
#define ADC_CHANNEL_5   5
#define ADC_CHANNEL_6   6
#define ADC_CHANNEL_7   7
#define ADC_CHANNEL_8   8
#define ADC_CHANNEL_9   9
#define ADC_CHANNEL_10   10
#define ADC_CHANNEL_11   11
#define ADC_CHANNEL_12   12
#define ADC_CHANNEL_13   13
#define ADC_CHANNEL_14   14
#define ADC_CHANNEL_15   15
#define ADC_GetModeReg(pAdc)   ((pAdc)->ADC_MR)
#define ADC_StartConversion(pAdc)   ((pAdc)->ADC_CR = ADC_CR_START)
#define ADC_SetCalibMode(pAdc)   ((pAdc)->ADC_CR |= ADC_CR_AUTOCAL)
#define ADC_EnableChannel(pAdc, dwChannel)
#define ADC_DisableChannel(pAdc, dwChannel)
#define ADC_EnableIt(pAdc, dwMode)
#define ADC_DisableIt(pAdc, dwMode)
#define ADC_SetChannelGain(pAdc, dwMode)
#define ADC_SetChannelOffset(pAdc, dwMode)
#define ADC_EnableDataReadyIt(pAdc)   ((pAdc)->ADC_IER = ADC_IER_DRDY)
#define ADC_GetStatus(pAdc)   ((pAdc)->ADC_ISR)
#define ADC_GetCompareMode(pAdc)   (((pAdc)->ADC_EMR)& (ADC_EMR_CMPMODE_Msk))
#define ADC_GetChannelStatus(pAdc)   ((pAdc)->ADC_CHSR)
#define ADC_GetInterruptMaskStatus(pAdc)   ((pAdc)->ADC_IMR)
#define ADC_GetLastConvertedData(pAdc)   ((pAdc)->ADC_LCDR)

Functions

void ADC_Initialize (Adc *pAdc, uint32_t dwId)
uint32_t ADC_SetClock (Adc *pAdc, uint32_t dwPres, uint32_t dwMck)
void ADC_SetTiming (Adc *pAdc, uint32_t dwStartup, uint32_t dwTracking, uint32_t dwSettling)
void ADC_SetTrigger (Adc *pAdc, uint32_t dwTrgSel)
void ADC_SetTriggerMode (Adc *pAdc, uint32_t dwMode)
void ADC_SetLowResolution (Adc *pAdc, uint32_t bEnDis)
void ADC_SetSleepMode (Adc *pAdc, uint8_t bEnDis)
void ADC_SetFastWakeup (Adc *pAdc, uint8_t bEnDis)
void ADC_SetSequenceMode (Adc *pAdc, uint8_t bEnDis)
void ADC_SetSequence (Adc *pAdc, uint32_t dwSEQ1, uint32_t dwSEQ2)
void ADC_SetSequenceByList (Adc *pAdc, uint8_t ucChList[], uint8_t ucNumCh)
void ADC_SetAnalogChange (Adc *pAdc, uint8_t bEnDis)
void ADC_SetTagEnable (Adc *pAdc, uint8_t bEnDis)
void ADC_SetCompareChannel (Adc *pAdc, uint32_t dwChannel)
void ADC_SetCompareMode (Adc *pAdc, uint32_t dwMode)
void ADC_SetComparisonWindow (Adc *pAdc, uint32_t dwHi_Lo)
uint8_t ADC_CheckConfiguration (Adc *pAdc, uint32_t dwMcK)
uint32_t ADC_GetConvertedData (Adc *pAdc, uint32_t dwChannel)
void ADC_SetTsAverage (Adc *pADC, uint32_t dwAvg2Conv)
uint32_t ADC_GetTsXPosition (Adc *pADC)
uint32_t ADC_GetTsYPosition (Adc *pADC)
uint32_t ADC_GetTsPressure (Adc *pADC)
void ADC_SetTsDebounce (Adc *pADC, uint32_t dwTime)
void ADC_SetTsPenDetect (Adc *pADC, uint8_t bEnDis)
void ADC_SetStartupTime (Adc *pAdc, uint32_t dwUs)
void ADC_SetTrackingTime (Adc *pAdc, uint32_t dwNs)
void ADC_SetTriggerPeriod (Adc *pAdc, uint32_t dwPeriod)
void ADC_SetTsMode (Adc *pADC, uint32_t dwMode)
void ADC_TsCalibration (Adc *pAdc)

Detailed Description

Purpose

Interface for configuration the Analog-to-Digital Converter (ADC) peripheral.

Usage

  1. Configurate the pins for ADC.
  2. Initialize the ADC with ADC_Initialize().
  3. Set ADC clock and timing with ADC_SetClock() and ADC_SetTiming().
  4. Select the active channel using ADC_EnableChannel().
  5. Start the conversion with ADC_StartConversion().
  6. Wait the end of the conversion by polling status with ADC_GetStatus().
  7. Finally, get the converted data using ADC_GetConvertedData() or ADC_GetLastConvertedData().

Definition in file adc.h.


Define Documentation

#define ADC_DisableChannel (   pAdc,
  dwChannel 
)
Value:
{\
            (pAdc)->ADC_CHDR = (1 << (dwChannel));\
        }

Definition at line 106 of file adc.h.

#define ADC_DisableIt (   pAdc,
  dwMode 
)
Value:
{\
            (pAdc)->ADC_IDR = (dwMode);\
        }

Definition at line 114 of file adc.h.

#define ADC_EnableChannel (   pAdc,
  dwChannel 
)
Value:
{\
            (pAdc)->ADC_CHER = (1 << (dwChannel));\
        }

Definition at line 102 of file adc.h.

#define ADC_EnableIt (   pAdc,
  dwMode 
)
Value:
{\
            (pAdc)->ADC_IER = (dwMode);\
        }

Definition at line 110 of file adc.h.

#define ADC_SetChannelGain (   pAdc,
  dwMode 
)
Value:
{\
            (pAdc)->ADC_CGR = dwMode;\
        }

Definition at line 118 of file adc.h.

#define ADC_SetChannelOffset (   pAdc,
  dwMode 
)
Value:
{\
            (pAdc)->ADC_COR = dwMode;\
        }

Definition at line 122 of file adc.h.

 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines