RX Family ADC Module Using Firmware Integration Technology
R01AN1666EJ0220 Rev. 2.20 Page 47 of 74
Dec 01, 2016
#define ADC_DDA_STATE_CNT_MAX (15)
typedef struct st_adc_dda
{
adc_charge_t method;
uint8_t num_states; // 2-15
} adc_dda_t;
/* for ADC_CMD_SET_SAMPLE_STATE_CNT */
typedef enum e_adc_sst_reg // sample state registers
{
ADC_SST_CH0 = 0,
ADC_SST_CH1,
ADC_SST_CH2,
ADC_SST_CH3,
ADC_SST_CH4,
ADC_SST_CH5,
ADC_SST_CH6,
ADC_SST_CH7, // end unit 0
ADC_SST_CH8,
ADC_SST_CH9,
ADC_SST_CH10,
ADC_SST_CH11,
ADC_SST_CH12,
ADC_SST_CH13,
ADC_SST_CH14,
ADC_SST_CH15,
ADC_SST_CH16_TO_20,
ADC_SST_TEMPERATURE,
ADC_SST_VOLTAGE,
ADC_SST_REG_MAX
} adc_sst_reg_t;
#define ADC_SST_CNT_MIN (5)
#define ADC_SST_CNT_MAX (255)
#define ADC_SST_CNT_DEFAULT (11)
typedef struct st_adc_time
{
adc_sst_reg_t reg_id;
uint8_t num_states; // ch8-20 use the same value
} adc_sst_t;
/* for ADC_CMD_CONFIGURE_SCAN */
// Bitwise OR these masks together for desired channels and sensors
// Used for all commands containing a "mask" or "flags" field
#define ADC_MASK_CH0 (1<<0)
#define ADC_MASK_CH1 (1<<1)
#define ADC_MASK_CH2 (1<<2)
#define ADC_MASK_CH3 (1<<3)
#define ADC_MASK_CH4 (1<<4)
#define ADC_MASK_CH5 (1<<5)
#define ADC_MASK_CH6 (1<<6)
#define ADC_MASK_CH7 (1<<7)
#define ADC_MASK_CH8 (1<<8)
#define ADC_MASK_CH9 (1<<9)
#define ADC_MASK_CH10 (1<<10)
#define ADC_MASK_CH11 (1<<11)
#define ADC_MASK_CH12 (1<<12)