SmartSnippets DA1459x SDK
Data Structures | Macros | Typedefs | Enumerations

Enumeration, structure, type and macro definitions. More...

Data Structures

struct  hw_gpadc_config_t
 ADC configuration. More...
 

Macros

#define HW_GPADC_RESULT_NOB   (16U)
 The 16 LSBits of the 32-bit result register. More...
 
#define HW_GPADC_DEFAULT_ENOB   (10U)
 The default Effective Number Of Bits with no averaging (zero oversampling) More...
 
#define HW_GPADC_UNUSED_BITS   (HW_GPADC_RESULT_NOB - HW_GPADC_DEFAULT_ENOB)
 The excessive bits in the result register with no averaging (zero oversampling) More...
 
#define HW_GPADC_MID_SCALE_ADC   (1 << (HW_GPADC_RESULT_NOB - 1))
 A help macro to define a mid-scale measurement: 0 mVolt in Differential mode Vref/2 mVolt in Single-ended mode.
 
#define HW_GPADC_OFFSET_RESET   0x200
 Reset value for the GP_ADC_OFFP and GP_ADC_OFFN registers. The given default 0x200 is suitable for Common Mode Level = VREF/2. It should be adjusted according to paragraph Common Mode Adjustment in the DataSheet.
 
#define HW_GPADC_DMA_SUPPORT   dg_configGPADC_DMA_SUPPORT
 DMA support for GPADC.
 
#define HW_GPADC_DIE_TEMP_SMPL_TIME   0x04
 Recommended sample time setting for accurate temperature measurements with DIE_TEMP. More...
 
#define HW_GPADC_DIE_TEMP_INIT_DELAY   0x68 /* 26 usec with a clock speed of (DivN_clk / 2) */
 Delay for enabling the ADC after enabling the LDO when ADC input is the temperature sensor. More...
 
#define HW_GPADC_VREF_MILLIVOLT   (900)
 GPADC Reference Voltage Level. More...
 

Typedefs

typedef void(* hw_gpadc_interrupt_cb) (void)
 ADC interrupt handler. More...
 
typedef void(* hw_gpadc_read_cb) (void *user_data, uint32_t conv_to_go)
 ADC callback for read function. More...
 

Enumerations

enum  HW_GPADC_INPUT_MODE { HW_GPADC_INPUT_MODE_DIFFERENTIAL = 0, HW_GPADC_INPUT_MODE_SINGLE_ENDED = 1 }
 ADC input mode. More...
 
enum  HW_GPADC_OVERSAMPLING {
  HW_GPADC_OVERSAMPLING_1_SAMPLE = 0, HW_GPADC_OVERSAMPLING_2_SAMPLES = 1, HW_GPADC_OVERSAMPLING_4_SAMPLES = 2, HW_GPADC_OVERSAMPLING_8_SAMPLES = 3,
  HW_GPADC_OVERSAMPLING_16_SAMPLES = 4, HW_GPADC_OVERSAMPLING_32_SAMPLES = 5, HW_GPADC_OVERSAMPLING_64_SAMPLES = 6, HW_GPADC_OVERSAMPLING_128_SAMPLES = 7
}
 GPADC oversampling. More...
 
enum  HW_GPADC_MAX_INPUT_VOLTAGE { HW_GPADC_INPUT_VOLTAGE_UP_TO_0V9 = 0, HW_GPADC_INPUT_VOLTAGE_UP_TO_1V8 = 1, HW_GPADC_INPUT_VOLTAGE_UP_TO_2V7 = 2, HW_GPADC_INPUT_VOLTAGE_UP_TO_3V6 = 3 }
 GPADC input voltages. More...
 
enum  HW_GPADC_STORE_DELAY {
  HW_GPADC_STORE_DEL_0 = 0x0, HW_GPADC_STORE_DEL_2_CYCLES = 0x1, HW_GPADC_STORE_DEL_3_CYCLES = 0x2, HW_GPADC_STORE_DEL_4_CYCLES = 0x3,
  HW_GPADC_STORE_DEL_5_CYCLES = 0x4, HW_GPADC_STORE_DEL_6_CYCLES = 0x5, HW_GPADC_STORE_DEL_7_CYCLES = 0x6, HW_GPADC_STORE_DEL_8_CYCLES = 0x7
}
 Store delay. More...
 
enum  HW_GPADC_INPUT_POSITIVE {
  HW_GPADC_INP_P1_0 = HW_GPADC_INPUT_ADC0, HW_GPADC_INP_P1_1 = HW_GPADC_INPUT_ADC1, HW_GPADC_INP_P1_2 = HW_GPADC_INPUT_ADC2, HW_GPADC_INP_P0_10 = HW_GPADC_INPUT_ADC3,
  HW_GPADC_INP_DIE_TEMP = 4, HW_GPADC_INP_VDCDC = 5, HW_GPADC_INP_VBAT = 6, HW_GPADC_INP_VDDD = 7,
  HW_GPADC_INP_VSSA = 8, HW_GPADC_INP_VDDIO = 9, HW_GPADC_INP_P1_5 = HW_GPADC_INPUT_ADC4, HW_GPADC_INP_P1_6 = HW_GPADC_INPUT_ADC5,
  HW_GPADC_INP_P1_9 = HW_GPADC_INPUT_ADC6, HW_GPADC_INP_P1_11 = HW_GPADC_INPUT_ADC7
}
 ADC input - Positive side. More...
 
enum  HW_GPADC_INPUT_NEGATIVE {
  HW_GPADC_INN_P1_0 = HW_GPADC_INPUT_ADC0, HW_GPADC_INN_P1_1 = HW_GPADC_INPUT_ADC1, HW_GPADC_INN_P1_2 = HW_GPADC_INPUT_ADC2, HW_GPADC_INN_P0_10 = HW_GPADC_INPUT_ADC3,
  HW_GPADC_INN_P1_5 = HW_GPADC_INPUT_ADC4, HW_GPADC_INN_P1_6 = HW_GPADC_INPUT_ADC5, HW_GPADC_INN_P1_9 = HW_GPADC_INPUT_ADC6, HW_GPADC_INN_P1_11 = HW_GPADC_INPUT_ADC7
}
 ADC input - Negative side. More...
 

Detailed Description

Enumeration, structure, type and macro definitions.

Macro Definition Documentation

◆ HW_GPADC_DEFAULT_ENOB

#define HW_GPADC_DEFAULT_ENOB   (10U)

The default Effective Number Of Bits with no averaging (zero oversampling)

◆ HW_GPADC_DIE_TEMP_INIT_DELAY

#define HW_GPADC_DIE_TEMP_INIT_DELAY   0x68 /* 26 usec with a clock speed of (DivN_clk / 2) */

Delay for enabling the ADC after enabling the LDO when ADC input is the temperature sensor.

HW_GPADC_DIE_TEMP_INIT_DELAY * 4 * ADC_CLK period should be > 25usec

◆ HW_GPADC_DIE_TEMP_SMPL_TIME

#define HW_GPADC_DIE_TEMP_SMPL_TIME   0x04

Recommended sample time setting for accurate temperature measurements with DIE_TEMP.

◆ HW_GPADC_RESULT_NOB

#define HW_GPADC_RESULT_NOB   (16U)

The 16 LSBits of the 32-bit result register.

◆ HW_GPADC_UNUSED_BITS

#define HW_GPADC_UNUSED_BITS   (HW_GPADC_RESULT_NOB - HW_GPADC_DEFAULT_ENOB)

The excessive bits in the result register with no averaging (zero oversampling)

◆ HW_GPADC_VREF_MILLIVOLT

#define HW_GPADC_VREF_MILLIVOLT   (900)

GPADC Reference Voltage Level.

Typedef Documentation

◆ hw_gpadc_interrupt_cb

typedef void(* hw_gpadc_interrupt_cb) (void)

ADC interrupt handler.

◆ hw_gpadc_read_cb

typedef void(* hw_gpadc_read_cb) (void *user_data, uint32_t conv_to_go)

ADC callback for read function.

Enumeration Type Documentation

◆ HW_GPADC_INPUT_MODE

ADC input mode.

Enumerator
HW_GPADC_INPUT_MODE_DIFFERENTIAL 

differential mode (default)

HW_GPADC_INPUT_MODE_SINGLE_ENDED 

single ended mode

◆ HW_GPADC_INPUT_NEGATIVE

ADC input - Negative side.

Enumerator
HW_GPADC_INN_P1_0 

GPIO 1.0

HW_GPADC_INN_P1_1 

GPIO 1.1

HW_GPADC_INN_P1_2 

GPIO 1.2

HW_GPADC_INN_P0_10 

GPIO 0.10

HW_GPADC_INN_P1_5 

GPIO 1.5

HW_GPADC_INN_P1_6 

GPIO 1.6

HW_GPADC_INN_P1_9 

GPIO 1.9

HW_GPADC_INN_P1_11 

GPIO 1.11

◆ HW_GPADC_INPUT_POSITIVE

ADC input - Positive side.

Enumerator
HW_GPADC_INP_P1_0 

GPIO 1.0

HW_GPADC_INP_P1_1 

GPIO 1.1

HW_GPADC_INP_P1_2 

GPIO 1.2

HW_GPADC_INP_P0_10 

GPIO 0.10

HW_GPADC_INP_DIE_TEMP 

temperature sensor Used jointly with DIE_TEMP=1. MUST wait 25usec before measurement

HW_GPADC_INP_VDCDC 

DCDC voltage level

HW_GPADC_INP_VBAT 

Battery voltage level

HW_GPADC_INP_VDDD 

VDD supply of the ADC circuit

HW_GPADC_INP_VSSA 

VSSA

HW_GPADC_INP_VDDIO 

VDDIO

HW_GPADC_INP_P1_5 

GPIO 1.5

HW_GPADC_INP_P1_6 

GPIO 1.6

HW_GPADC_INP_P1_9 

GPIO 1.9

HW_GPADC_INP_P1_11 

GPIO 1.11

◆ HW_GPADC_MAX_INPUT_VOLTAGE

GPADC input voltages.

Enumerator
HW_GPADC_INPUT_VOLTAGE_UP_TO_0V9 

input voltages up to 0.9 V are allowed

HW_GPADC_INPUT_VOLTAGE_UP_TO_1V8 

input voltages up to 1.8 V are allowed

HW_GPADC_INPUT_VOLTAGE_UP_TO_2V7 

input voltages up to 2.7 V are allowed

HW_GPADC_INPUT_VOLTAGE_UP_TO_3V6 

input voltages up to 3.6 V are allowed

◆ HW_GPADC_OVERSAMPLING

GPADC oversampling.

In this mode multiple successive conversions will be executed and the results are added together to increase the effective number of bits

Enumerator
HW_GPADC_OVERSAMPLING_1_SAMPLE 

1 sample is taken or 2 in case chopping is enabled

HW_GPADC_OVERSAMPLING_2_SAMPLES 

2 samples are taken

HW_GPADC_OVERSAMPLING_4_SAMPLES 

4 samples are taken

HW_GPADC_OVERSAMPLING_8_SAMPLES 

8 samples are taken

HW_GPADC_OVERSAMPLING_16_SAMPLES 

16 samples are taken

HW_GPADC_OVERSAMPLING_32_SAMPLES 

32 samples are taken

HW_GPADC_OVERSAMPLING_64_SAMPLES 

64 samples are taken

HW_GPADC_OVERSAMPLING_128_SAMPLES 

128 samples are taken

◆ HW_GPADC_STORE_DELAY

Store delay.

Note
Values 1-3 are reserved
Enumerator
HW_GPADC_STORE_DEL_0 

Data is stored after handshake synchronization

HW_GPADC_STORE_DEL_2_CYCLES 

Data is stored 2 ADC_CLK cycles after internal start trigger

HW_GPADC_STORE_DEL_3_CYCLES 

Data is stored 3 ADC_CLK cycles after internal start trigger

HW_GPADC_STORE_DEL_4_CYCLES 

Data is stored 4 ADC_CLK cycles after internal start trigger

HW_GPADC_STORE_DEL_5_CYCLES 

Data is stored 5 ADC_CLK cycles after internal start trigger

HW_GPADC_STORE_DEL_6_CYCLES 

Data is stored 6 ADC_CLK cycles after internal start trigger

HW_GPADC_STORE_DEL_7_CYCLES 

Data is stored 7 ADC_CLK cycles after internal start trigger

HW_GPADC_STORE_DEL_8_CYCLES 

Data is stored 8 ADC_CLK cycles after internal start trigger