Host API Example for the ADMW1001

Embed: (wiki syntax)

« Back to documentation index

ADMW1001 Host Library API

Data Structures

struct  ADMW1001_POWER_CONFIG
struct  ADMW1001_MULTICYCLE_CONFIG
struct  ADMW1001_MEASUREMENT_CONFIG
struct  ADMW1001_ADC_EXC_CURRENT_CONFIG
struct  ADMW1001_ADC_FILTER_CONFIG
struct  ADMW1001_ADC_CHANNEL_CONFIG
struct  ADMW1001_DIGITAL_SENSOR_DATA_FORMAT
struct  ADMW1001_DIGITAL_SENSOR_COMMAND
struct  ADMW1001_DIGITAL_CALIBRATION_COMMAND
struct  ADMW1001_DIGITAL_SENSOR_COMMS
struct  ADMW1001_I2C_CHANNEL_CONFIG
struct  ADMW1001_SPI_CHANNEL_CONFIG
struct  ADMW1001_CHANNEL_CONFIG
struct  ADMW1001_DIAGNOSTICS_CONFIG
struct  ADMW1001_CONFIG
union  ADMW1001_LUT_TABLE_DATA

Enumerations

enum  ADMW1001_CHANNEL_PRIORITY
enum  ADMW1001_OPERATING_MODE { ADMW1001_OPERATING_MODE_SINGLECYCLE = 0, ADMW1001_OPERATING_MODE_CONTINUOUS, ADMW1001_OPERATING_MODE_MULTICYCLE }
enum  ADMW1001_DATAREADY_MODE { ADMW1001_DATAREADY_PER_CONVERSION = 0, ADMW1001_DATAREADY_PER_CYCLE, ADMW1001_DATAREADY_PER_FIFO_FILL }
enum  ADMW1001_POWER_MODE { ADMW1001_POWER_MODE_HIBERNATION = 0, ADMW1001_POWER_MODE_ACTIVE }
enum  ADMW1001_FILTER_SETTLING { ADMW1001_FILTER_SETTLING_ALWAYS = 0, ADMW1001_FILTER_SETTLING_FAST }
enum  ADMW1001_MEASUREMENT_UNIT { ADMW1001_MEASUREMENT_UNIT_UNSPECIFIED = 0, ADMW1001_MEASUREMENT_UNIT_CELSIUS, ADMW1001_MEASUREMENT_UNIT_FAHRENHEIT }
enum  ADMW1001_OPEN_SENSOR_DIAGNOSTICS { ADMW1001_OPEN_SENSOR_DIAGNOSTICS_DISABLED = 0, ADMW1001_OPEN_SENSOR_DIAGNOSTICS_PER_CYCLE, ADMW1001_OPEN_SENSOR_DIAGNOSTICS_PER_100_CYCLES, ADMW1001_OPEN_SENSOR_DIAGNOSTICS_PER_1000_CYCLES }
enum  ADMW1001_ADC_RTD_CURVE { ADMW1001_ADC_RTD_CURVE_EUROPEAN = 0, ADMW1001_ADC_RTD_CURVE_AMERICAN, ADMW1001_ADC_RTD_CURVE_JAPANESE, ADMW1001_ADC_RTD_CURVE_ITS90 }
enum  ADMW1001_ADC_GAIN {
  ADMW1001_ADC_GAIN_1X = 0, ADMW1001_ADC_GAIN_2X, ADMW1001_ADC_GAIN_4X, ADMW1001_ADC_GAIN_8X,
  ADMW1001_ADC_GAIN_16X, ADMW1001_ADC_GAIN_32X, ADMW1001_ADC_GAIN_64X, ADMW1001_ADC_GAIN_128X
}
enum  ADMW1001_ADC_EXC_STATE { ADMW1001_ADC_EXC_STATE_OFF = -1, ADMW1001_ADC_EXC_STATE_ALWAYS_ON, ADMW1001_ADC_EXC_STATE_CYCLE_POWER }
enum  ADMW1001_ADC_EXC_CURRENT {
  ADMW1001_ADC_NO_EXTERNAL_EXC_CURRENT = -1, ADMW1001_ADC_EXC_CURRENT_EXTERNAL = 0, ADMW1001_ADC_EXC_CURRENT_50uA, ADMW1001_ADC_EXC_CURRENT_100uA,
  ADMW1001_ADC_EXC_CURRENT_250uA, ADMW1001_ADC_EXC_CURRENT_500uA, ADMW1001_ADC_EXC_CURRENT_1000uA
}
enum  ADMW1001_ADC_EXC_CURRENT_DIODE_RATIO {
  ADMW1001_ADC_EXC_CURRENT_IOUT_DIODE_10UA_100UA = 0, ADMW1001_ADC_EXC_CURRENT_IOUT_DIODE_20UA_160UA, ADMW1001_ADC_EXC_CURRENT_IOUT_DIODE_50UA_300UA, ADMW1001_ADC_EXC_CURRENT_IOUT_DIODE_100UA_600UA,
  ADMW1001_ADC_EXC_CURRENT_IOUT_DIODE_10UA_50UA_100UA, ADMW1001_ADC_EXC_CURRENT_IOUT_DIODE_20UA_100UA_160UA, ADMW1001_ADC_EXC_CURRENT_IOUT_DIODE_50UA_150UA_300UA, ADMW1001_ADC_EXC_CURRENT_IOUT_DIODE_100UA_300UA_600UA
}
enum  ADMW1001_ADC_REFERENCE_TYPE { ADMW1001_ADC_REFERENCE_VOLTAGE_INTERNAL = 0, ADMW1001_ADC_REFERENCE_VOLTAGE_EXTERNAL_1, ADMW1001_ADC_REFERENCE_VOLTAGE_EXTERNAL_2, ADMW1001_ADC_REFERENCE_VOLTAGE_AVDD }
enum  ADMW1001_ADC_GND_SW { ADMW1001_ADC_GND_SW_OPEN = 0, ADMW1001_ADC_GND_SW_CLOSED }
enum  ADMW1001_CHOP_MD { ADMW1001_CHOP_MD_NONE = 0, ADMW1001_CHOP_MD_HW, ADMW1001_CHOP_MD_SW, ADMW1001_CHOP_MD_HWSW }
enum  ADMW1001_ADC_FILTER_TYPE { ADMW1001_ADC_FILTER_SINC4 = 0, ADMW1001_ADC_FILTER_SINC3 }
enum  ADMW1001_SINC_FILTER_RANGE {
  ADMW1001_SF_976HZ = 0, ADMW1001_SF_488HZ = 1, ADMW1001_SF_244HZ = 3, ADMW1001_SF_122HZ = 7,
  ADMW1001_SF_61HZ = 31, ADMW1001_SF_30P5HZ = 51, ADMW1001_SF_10HZ = 124, ADMW1001_SF_8P24HZ = 125,
  ADMW1001_SF_5HZ = 127
}
enum  ADMW1001_DIGITAL_SENSOR_COMMS_I2C_CLOCK_SPEED { ADMW1001_DIGITAL_SENSOR_COMMS_I2C_CLOCK_SPEED_100K = 0, ADMW1001_DIGITAL_SENSOR_COMMS_I2C_CLOCK_SPEED_400K }
enum  ADMW1001_DIGITAL_SENSOR_COMMS_SPI_MODE { ADMW1001_DIGITAL_SENSOR_COMMS_SPI_MODE_0 = 0, ADMW1001_DIGITAL_SENSOR_COMMS_SPI_MODE_1, ADMW1001_DIGITAL_SENSOR_COMMS_SPI_MODE_2, ADMW1001_DIGITAL_SENSOR_COMMS_SPI_MODE_3 }
enum  ADMW1001_DIGITAL_SENSOR_COMMS_SPI_CLOCK {
  ADMW1001_DIGITAL_SENSOR_COMMS_SPI_CLOCK_8MHZ = 0, ADMW1001_DIGITAL_SENSOR_COMMS_SPI_CLOCK_4MHZ, ADMW1001_DIGITAL_SENSOR_COMMS_SPI_CLOCK_2MHZ, ADMW1001_DIGITAL_SENSOR_COMMS_SPI_CLOCK_1MHZ,
  ADMW1001_DIGITAL_SENSOR_COMMS_SPI_CLOCK_500KHZ, ADMW1001_DIGITAL_SENSOR_COMMS_SPI_CLOCK_250KHZ, ADMW1001_DIGITAL_SENSOR_COMMS_SPI_CLOCK_125KHZ, ADMW1001_DIGITAL_SENSOR_COMMS_SPI_CLOCK_62P5KHZ,
  ADMW1001_DIGITAL_SENSOR_COMMS_SPI_CLOCK_31P3KHZ, ADMW1001_DIGITAL_SENSOR_COMMS_SPI_CLOCK_15P6KHZ, ADMW1001_DIGITAL_SENSOR_COMMS_SPI_CLOCK_7P8KHZ, ADMW1001_DIGITAL_SENSOR_COMMS_SPI_CLOCK_3P9KHZ,
  ADMW1001_DIGITAL_SENSOR_COMMS_SPI_CLOCK_1P9KHZ, ADMW1001_DIGITAL_SENSOR_COMMS_SPI_CLOCK_977HZ, ADMW1001_DIGITAL_SENSOR_COMMS_SPI_CLOCK_488HZ, ADMW1001_DIGITAL_SENSOR_COMMS_SPI_CLOCK_244HZ
}
enum  ADMW1001_LUT_SELECT { ADMW1001_LUT_DEFAULT = 0, ADMW1001_LUT_UNITY = 1, ADMW1001_LUT_CUSTOM = 2, ADMW1001_LUT_RESERVED = 3 }
enum  ADMW1001_DIGITAL_SENSOR_DATA_CODING { ADMW1001_DIGITAL_SENSOR_DATA_CODING_NONE = 0, ADMW1001_DIGITAL_SENSOR_DATA_CODING_UNIPOLAR, ADMW1001_DIGITAL_SENSOR_DATA_CODING_TWOS_COMPLEMENT, ADMW1001_DIGITAL_SENSOR_DATA_CODING_OFFSET_BINARY }
enum  ADMW1001_LUT_GEOMETRY {
  ADMW1001_LUT_GEOMETRY_RESERVED = 0x00, ADMW1001_LUT_GEOMETRY_COEFFS = 0x01, ADMW1001_LUT_GEOMETRY_NES_1D = 0x02, ADMW1001_LUT_GEOMETRY_NES_2D = 0x03,
  ADMW1001_LUT_GEOMETRY_ES_1D = 0x04, ADMW1001_LUT_GEOMETRY_ES_2D = 0x05
}
enum  ADMW1001_LUT_EQUATION {
  ADMW1001_LUT_EQUATION_POLYN, ADMW1001_LUT_EQUATION_POLYNEXP, ADMW1001_LUT_EQUATION_QUADRATIC, ADMW1001_LUT_EQUATION_STEINHART,
  ADMW1001_LUT_EQUATION_LOGARITHMIC, ADMW1001_LUT_EQUATION_BIVARIATE_POLYN, ADMW1001_LUT_EQUATION_COUNT, ADMW1001_LUT_EQUATION_LUT
}
enum  ADMW1001_LUT_TC_DIRECTION { ADMW1001_LUT_TC_DIRECTION_FORWARD, ADMW1001_LUT_TC_DIRECTION_BACKWARD, ADMW1001_LUT_TC_DIRECTION_COUNT }
enum  ADMW1001_LUT_DATA_TYPE { ADMW1001_LUT_DATA_TYPE_RESERVED = 0, ADMW1001_LUT_DATA_TYPE_FLOAT32 = 1, ADMW1001_LUT_DATA_TYPE_FLOAT64 = 2 }
enum  ADMW1001_CH_ID {
  ADMW1001_CH_ID_NONE = -1, ADMW1001_CH_ID_ANLG_1_UNIVERSAL = 0, ADMW1001_CH_ID_ANLG_2_UNIVERSAL, ADMW1001_CH_ID_ANLG_1_DIFFERENTIAL,
  ADMW1001_CH_ID_ANLG_2_DIFFERENTIAL, ADMW1001_CH_ID_DIG_I2C_0, ADMW1001_CH_ID_DIG_I2C_1, ADMW1001_CH_ID_DIG_I2C_2,
  ADMW1001_CH_ID_DIG_I2C_3, ADMW1001_CH_ID_DIG_I2C_4, ADMW1001_CH_ID_DIG_I2C_5, ADMW1001_CH_ID_DIG_SPI_0,
  ADMW1001_CH_ID_DIG_SPI_1, ADMW1001_CH_ID_DIG_SPI_2, ADMW1001_MAX_CHANNELS
}
enum  ADMW1001_ADC_SENSOR_TYPE {
  ADMW1001_ADC_SENSOR_THERMOCOUPLE_T = 0, ADMW1001_ADC_SENSOR_THERMOCOUPLE_J = 1, ADMW1001_ADC_SENSOR_THERMOCOUPLE_K = 2, ADMW1001_ADC_SENSOR_THERMOCOUPLE_1 = 8,
  ADMW1001_ADC_SENSOR_THERMOCOUPLE_2 = 9, ADMW1001_ADC_SENSOR_THERMOCOUPLE_3 = 10, ADMW1001_ADC_SENSOR_THERMOCOUPLE_4 = 11, ADMW1001_ADC_SENSOR_RTD_2WIRE_PT100 = 32,
  ADMW1001_ADC_SENSOR_RTD_2WIRE_PT1000 = 33, ADMW1001_ADC_SENSOR_RTD_2WIRE_1 = 40, ADMW1001_ADC_SENSOR_RTD_2WIRE_2 = 41, ADMW1001_ADC_SENSOR_RTD_2WIRE_3 = 42,
  ADMW1001_ADC_SENSOR_RTD_2WIRE_4 = 43, ADMW1001_ADC_SENSOR_RTD_3WIRE_PT100 = 64, ADMW1001_ADC_SENSOR_RTD_3WIRE_PT1000 = 65, ADMW1001_ADC_SENSOR_RTD_3WIRE_1 = 72,
  ADMW1001_ADC_SENSOR_RTD_3WIRE_2 = 73, ADMW1001_ADC_SENSOR_RTD_3WIRE_3 = 74, ADMW1001_ADC_SENSOR_RTD_3WIRE_4 = 75, ADMW1001_ADC_SENSOR_RTD_4WIRE_PT100 = 96,
  ADMW1001_ADC_SENSOR_RTD_4WIRE_PT1000 = 97, ADMW1001_ADC_SENSOR_RTD_4WIRE_1 = 104, ADMW1001_ADC_SENSOR_RTD_4WIRE_2 = 105, ADMW1001_ADC_SENSOR_RTD_4WIRE_3 = 106,
  ADMW1001_ADC_SENSOR_RTD_4WIRE_4 = 107, ADMW1001_ADC_SENSOR_THERMISTOR_A_10K = 128, ADMW1001_ADC_SENSOR_THERMISTOR_B_10K = 129, ADMW1001_ADC_SENSOR_THERMISTOR_1 = 136,
  ADMW1001_ADC_SENSOR_THERMISTOR_2 = 137, ADMW1001_ADC_SENSOR_THERMISTOR_3 = 138, ADMW1001_ADC_SENSOR_THERMISTOR_4 = 139, ADMW1001_ADC_SENSOR_BRIDGE_4WIRE_1 = 168,
  ADMW1001_ADC_SENSOR_BRIDGE_4WIRE_2 = 169, ADMW1001_ADC_SENSOR_BRIDGE_4WIRE_3 = 170, ADMW1001_ADC_SENSOR_BRIDGE_4WIRE_4 = 171, ADMW1001_ADC_SENSOR_BRIDGE_6WIRE_1 = 200,
  ADMW1001_ADC_SENSOR_BRIDGE_6WIRE_2 = 201, ADMW1001_ADC_SENSOR_BRIDGE_6WIRE_3 = 202, ADMW1001_ADC_SENSOR_BRIDGE_6WIRE_4 = 203, ADMW1001_ADC_SENSOR_DIODE_2C_TYPEA = 224,
  ADMW1001_ADC_SENSOR_DIODE_3C_TYPEA = 225, ADMW1001_ADC_SENSOR_DIODE_2C_1 = 232, ADMW1001_ADC_SENSOR_DIODE_3C_1 = 233, ADMW1001_ADC_SENSOR_MICROPHONE_A = 256,
  ADMW1001_ADC_SENSOR_MICROPHONE_B = 257, ADMW1001_ADC_SENSOR_MICROPHONE_1 = 264, ADMW1001_ADC_SENSOR_MICROPHONE_2 = 265, ADMW1001_ADC_SENSOR_VOLTAGE = 512,
  ADMW1001_ADC_SENSOR_VOLTAGE_PRESSURE_A = 544, ADMW1001_ADC_SENSOR_VOLTAGE_PRESSURE_B = 545, ADMW1001_ADC_SENSOR_VOLTAGE_PRESSURE_1 = 552, ADMW1001_ADC_SENSOR_VOLTAGE_PRESSURE_2 = 553,
  ADMW1001_ADC_SENSOR_CURRENT = 768, ADMW1001_ADC_SENSOR_CURRENT_PRESSURE_A = 800, ADMW1001_ADC_SENSOR_CURRENT_PRESSURE_1 = 808, ADMW1001_ADC_SENSOR_CURRENT_PRESSURE_2 = 809
}
enum  ADMW1001_I2C_SENSOR_TYPE {
  ADMW1001_I2C_SENSOR_HUMIDITY_A = 2112, ADMW1001_I2C_SENSOR_HUMIDITY_B = 2113, ADMW1001_I2C_SENSOR_HUMIDITY_C = 2114, ADMW1001_I2C_SENSOR_HUMIDITY_D = 2115,
  ADMW1001_I2C_SENSOR_AMBIENTLIGHT_A = 2176, ADMW1001_I2C_SENSOR_PRESSURE_A = 2208, ADMW1001_I2C_SENSOR_TEMPERATURE_A = 2216, ADMW1001_I2C_SENSOR_TEMPERATURE_B = 2217,
  ADMW1001_I2C_SENSOR_CO2_A = 2224
}
enum  ADMW1001_SPI_SENSOR_TYPE { ADMW1001_SPI_SENSOR_PRESSURE_A = 3072, ADMW1001_SPI_SENSOR_ACCELEROMETER_A = 3200, ADMW1001_SPI_SENSOR_ACCELEROMETER_B = 3201 }

Functions

ADMW_RESULT admw1001_ReadRegister (ADMW_DEVICE_HANDLE const hDevice, uint16_t const nAddress, void *const pData, unsigned const nLength)
 Read one or more device registers at the specified register address.
ADMW_RESULT admw1001_Read_Debug_Register (ADMW_DEVICE_HANDLE const hDevice, uint16_t const nAddress, void *const pData, unsigned const nLength)
 Read one or more device registers at the specified debug register address.
ADMW_RESULT admw1001_WriteRegister (ADMW_DEVICE_HANDLE const hDevice, uint16_t const nAddress, void *const pData, unsigned const nLength)
 Write one or more device registers at the specified register address.
ADMW_RESULT admw1001_Write_Debug_Register (ADMW_DEVICE_HANDLE const hDevice, uint16_t const nAddress, void *const pData, unsigned const nLength)
 Write one or more device registers at the specified debug register address.
ADMW_RESULT admw1001_SetMeasurementConfig (ADMW_DEVICE_HANDLE hDevice, ADMW1001_MEASUREMENT_CONFIG *pMeasurementConfig)
 Update measurement configuration settings on the device.
ADMW_RESULT admw1001_SetDiagnosticsConfig (ADMW_DEVICE_HANDLE hDevice, ADMW1001_DIAGNOSTICS_CONFIG *pDiagnosticsConfig)
 Update diagnostics configuration settings on the device.
ADMW_RESULT admw1001_SetChannelConfig (ADMW_DEVICE_HANDLE hDevice, ADMW1001_CH_ID eChannelId, ADMW1001_CHANNEL_CONFIG *pChannelConfig)
 Update channel configuration settings for a specific channel.
ADMW_RESULT admw1001_SetChannelCount (ADMW_DEVICE_HANDLE hDevice, ADMW1001_CH_ID eChannelId, uint32_t nMeasurementsPerCycle)
 Update number of measurements-per-cycle for a specific channel.
ADMW_RESULT admw1001_SetChannelPriority (ADMW_DEVICE_HANDLE hDevice, ADMW1001_CH_ID eChannelId, ADMW1001_CHANNEL_PRIORITY ePriority)
 Update priority level for a specific channel.
ADMW_RESULT admw1001_SetChannelThresholdLimits (ADMW_DEVICE_HANDLE hDevice, ADMW1001_CH_ID eChannelId, float32_t fHighThresholdLimit, float32_t fLowThresholdLimit)
 Update the measurement threshold limits for a specified channel.
ADMW_RESULT admw1001_SetSensorParameter (ADMW_DEVICE_HANDLE hDevice, ADMW1001_CH_ID eChannelId, float32_t fSensorParam)
 Set a sensor specific parameter for a specified channel.
ADMW_RESULT admw1001_SetChannelSettlingTime (ADMW_DEVICE_HANDLE hDevice, ADMW1001_CH_ID eChannelId, uint32_t nSettlingTime)
 Update the extra settling time for a specified channel.
ADMW_RESULT admw1001_SetAdvancedAccess (ADMW_DEVICE_HANDLE hDevice, ADMW1001_ADVANCED_ACCESS_KEY key)
 Enable access to advanced sensor configuration options.
ADMW_RESULT admw1001_AssembleLutData (ADMW1001_LUT *pLutBuffer, unsigned nLutBufferSize, unsigned const nNumTables, ADMW1001_LUT_DESCRIPTOR *const ppDesc[], ADMW1001_LUT_TABLE_DATA *const ppData[])
 Assemble a list of separate Look-Up Tables into a single buffer.
ADMW_RESULT admw1001_SetLutData (ADMW_DEVICE_HANDLE hDevice, ADMW1001_LUT *const pLutData)
 Write Look-Up Table data to the device memory.
ADMW_RESULT admw1001_SetLutDataRaw (ADMW_DEVICE_HANDLE hDevice, ADMW1001_LUT_RAW *const pLutData)
 Write Look-Up Table raw data to the device memory.
ADMW_RESULT admw1001_GetDataReadyModeInfo (ADMW_DEVICE_HANDLE const hDevice, ADMW_MEASUREMENT_MODE const eMeasurementMode, ADMW1001_OPERATING_MODE *const peOperatingMode, ADMW1001_DATAREADY_MODE *const peDataReadyMode, uint32_t *const pnSamplesPerDataready, uint32_t *const pnSamplesPerCycle, uint8_t *const pnBytesPerSample)
 Get the number of samples available when DATAREADY status is asserted.
struct __attribute__ ((packed, aligned(4)))

Detailed Description

ADMW1001 device-specific API function prototypes. These are supplementary to the common ADMW Host Library API.


Enumeration Type Documentation

ADMW1001 analog sensor excitation current output level options

Note:
applicable only to ADC analog sensor channels, and specific sensor types
Enumerator:
ADMW1001_ADC_NO_EXTERNAL_EXC_CURRENT 

NO External excitation is provided

ADMW1001_ADC_EXC_CURRENT_EXTERNAL 

External excitation is provided

ADMW1001_ADC_EXC_CURRENT_50uA 

50uA excitation current enabled

ADMW1001_ADC_EXC_CURRENT_100uA 

100uA excitation current

ADMW1001_ADC_EXC_CURRENT_250uA 

250uA excitation current enabled

ADMW1001_ADC_EXC_CURRENT_500uA 

500uA excitation current enabled

ADMW1001_ADC_EXC_CURRENT_1000uA 

1mA excitation current enabled

Definition at line 237 of file admw1001_config.h.

ADMW1001 analog sensor excitation current ratios used for diode sensor

Note:
applicable only to a diode sensor
Enumerator:
ADMW1001_ADC_EXC_CURRENT_IOUT_DIODE_10UA_100UA 

2 Current measurement 10uA 100uA

ADMW1001_ADC_EXC_CURRENT_IOUT_DIODE_20UA_160UA 

2 Current measurement 20uA 160uA

ADMW1001_ADC_EXC_CURRENT_IOUT_DIODE_50UA_300UA 

2 Current measurement 50uA 300uA

ADMW1001_ADC_EXC_CURRENT_IOUT_DIODE_100UA_600UA 

2 Current measurement 100uA 600uA

ADMW1001_ADC_EXC_CURRENT_IOUT_DIODE_10UA_50UA_100UA 

3 current measuremetn 10uA 50uA 100uA

ADMW1001_ADC_EXC_CURRENT_IOUT_DIODE_20UA_100UA_160UA 

3 current measuremetn 20uA 100uA 160uA

ADMW1001_ADC_EXC_CURRENT_IOUT_DIODE_50UA_150UA_300UA 

3 current measuremetn 50uA 150uA 300uA

ADMW1001_ADC_EXC_CURRENT_IOUT_DIODE_100UA_300UA_600UA 

3 current measuremetn 100uA 300uA 600uA

Definition at line 260 of file admw1001_config.h.

ADMW1001 analog sensor excitation state options

Note:
applicable only to ADC analog sensor channels, and specific sensor types
Enumerator:
ADMW1001_ADC_EXC_STATE_OFF 

Excitation for measurement is off

ADMW1001_ADC_EXC_STATE_ALWAYS_ON 

Excitation for measurement is always on

ADMW1001_ADC_EXC_STATE_CYCLE_POWER 

Excitation for measurement is active only during measurement

Definition at line 221 of file admw1001_config.h.

ADMW1001 analog filter selection options

Note:
applicable only to ADC analog sensor channels
Enumerator:
ADMW1001_ADC_FILTER_SINC4 

SINC4 - 4th order sinc response filter

ADMW1001_ADC_FILTER_SINC3 

SINC3 - 3rd order sinc response filter

Definition at line 333 of file admw1001_config.h.

ADMW1001 analog input signal amplification gain options

Note:
applicable only to ADC analog sensor channels
Enumerator:
ADMW1001_ADC_GAIN_1X 

no amplification gain

ADMW1001_ADC_GAIN_2X 

x2 amplification gain

ADMW1001_ADC_GAIN_4X 

x4 amplification gain

ADMW1001_ADC_GAIN_8X 

x8 amplification gain

ADMW1001_ADC_GAIN_16X 

x16 amplification gain

ADMW1001_ADC_GAIN_32X 

x32 amplification gain

ADMW1001_ADC_GAIN_64X 

x64 amplification gain

ADMW1001_ADC_GAIN_128X 

x128 amplification gain

Definition at line 195 of file admw1001_config.h.

ADMW1001 ADC Reference configuration

Note:
applicable only to ADC analog sensor channels
Enumerator:
ADMW1001_ADC_GND_SW_OPEN 

Ground switch not enabled for measurement.

ADMW1001_ADC_GND_SW_CLOSED 

Ground switch enabled for measurement.

Definition at line 303 of file admw1001_config.h.

ADMW1001 analog reference selection options

Note:
applicable only to ADC analog sensor channels, and specific sensor types
Enumerator:
ADMW1001_ADC_REFERENCE_VOLTAGE_INTERNAL 

Internal VRef - 1.2V

ADMW1001_ADC_REFERENCE_VOLTAGE_EXTERNAL_1 

External reference voltage #1

ADMW1001_ADC_REFERENCE_VOLTAGE_EXTERNAL_2 

External reference voltage #2

ADMW1001_ADC_REFERENCE_VOLTAGE_AVDD 

Analag Supply Voltage AVDD reference (typically 3.3V) is selected

Definition at line 286 of file admw1001_config.h.

ADMW1001 analog input signal amplification gain options

Note:
applicable only to ADC analog sensor channels
Enumerator:
ADMW1001_ADC_RTD_CURVE_EUROPEAN 

EUROPEAN RTD curve used.

ADMW1001_ADC_RTD_CURVE_AMERICAN 

AMERICAN RTD curve used.

ADMW1001_ADC_RTD_CURVE_JAPANESE 

JAPANESE RTD curve used.

ADMW1001_ADC_RTD_CURVE_ITS90 

ITS90 RTD curve used.

Definition at line 179 of file admw1001_config.h.

ADMW1001 analog sensor type options

Select the sensor type that is connected to an ADC analog measurement channel.

Note:
Some channels may only support a subset of the available sensor types below.
Enumerator:
ADMW1001_ADC_SENSOR_THERMOCOUPLE_T 

Standard T-type Thermocouple temperature sensor

Note:
For use with Analog Sensor channels only
ADMW1001_ADC_SENSOR_THERMOCOUPLE_J 

Standard J-type Thermocouple temperature sensor

Note:
For use with Analog Sensor channels only
ADMW1001_ADC_SENSOR_THERMOCOUPLE_K 

Standard K-type Thermocouple temperature sensor

Note:
For use with Analog Sensor channels only
ADMW1001_ADC_SENSOR_THERMOCOUPLE_1 

Standard thermocouple temperature sensor

Note:
For use with Analog Sensor channels only
ADMW1001_ADC_SENSOR_THERMOCOUPLE_2 

Standard thermocouple temperature sensor

Note:
For use with Analog Sensor channels only
ADMW1001_ADC_SENSOR_THERMOCOUPLE_3 

Standard thermocouple temperature sensor

Note:
For use with Analog Sensor channels only
ADMW1001_ADC_SENSOR_THERMOCOUPLE_4 

Standard thermocouple temperature sensor

Note:
For use with Analog Sensor channels only
ADMW1001_ADC_SENSOR_RTD_2WIRE_PT100 

Standard 2-wire PT100 RTD temperature sensor

Note:
For use with Cold-Juction Compensation and Analog Sensor channels only
ADMW1001_ADC_SENSOR_RTD_2WIRE_PT1000 

Standard 2-wire PT1000 RTD temperature

Note:
For use with Cold-Juction Compensation and Analog Sensor channels only
ADMW1001_ADC_SENSOR_RTD_2WIRE_1 

2-wire RTD temperature sensor

Note:
For use with Cold-Juction Compensation and Analog Sensor channels only
ADMW1001_ADC_SENSOR_RTD_2WIRE_2 

2-wire RTD temperature sensor

Note:
For use with Cold-Juction Compensation and Analog Sensor channels only
ADMW1001_ADC_SENSOR_RTD_2WIRE_3 

2-wire RTD temperature sensor

Note:
For use with Cold-Juction Compensation and Analog Sensor channels only
ADMW1001_ADC_SENSOR_RTD_2WIRE_4 

2-wire RTD temperature sensor

Note:
For use with Cold-Juction Compensation and Analog Sensor channels only
ADMW1001_ADC_SENSOR_RTD_3WIRE_PT100 

Standard 3-wire PT100 RTD temperature sensor

Note:
For use with Analog Sensor channels only
ADMW1001_ADC_SENSOR_RTD_3WIRE_PT1000 

Standard 3-wire PT1000 RTD temperature sensor

Note:
For use with Analog Sensor channels only
ADMW1001_ADC_SENSOR_RTD_3WIRE_1 

3-wire RTD temperature sensor

Note:
For use with Analog Sensor channels only
ADMW1001_ADC_SENSOR_RTD_3WIRE_2 

3-wire RTD temperature sensor

Note:
For use with Analog Sensor channels only
ADMW1001_ADC_SENSOR_RTD_3WIRE_3 

3-wire RTD temperature sensor

Note:
For use with Analog Sensor channels only
ADMW1001_ADC_SENSOR_RTD_3WIRE_4 

3-wire RTD temperature sensor

Note:
For use with Analog Sensor channels only
ADMW1001_ADC_SENSOR_RTD_4WIRE_PT100 

Standard 4-wire PT100 RTD temperature sensor

Note:
For use with Analog Sensor channels only
ADMW1001_ADC_SENSOR_RTD_4WIRE_PT1000 

Standard 4-wire PT1000 RTD temperature sensor

Note:
For use with Analog Sensor channels only
ADMW1001_ADC_SENSOR_RTD_4WIRE_1 

4-wire RTD temperature sensor

Note:
For use with Analog Sensor channels only
ADMW1001_ADC_SENSOR_RTD_4WIRE_2 

4-wire RTD temperature sensor

Note:
For use with Analog Sensor channels only
ADMW1001_ADC_SENSOR_RTD_4WIRE_3 

4-wire RTD temperature sensor

Note:
For use with Analog Sensor channels only
ADMW1001_ADC_SENSOR_RTD_4WIRE_4 

4-wire RTD temperature sensor

Note:
For use with Analog Sensor channels only
ADMW1001_ADC_SENSOR_THERMISTOR_A_10K 

Standard 10kOhm NTC Thermistor

Note:
For use with Analog Sensor channels only
ADMW1001_ADC_SENSOR_THERMISTOR_B_10K 

Standard 10kOhm NTC Thermistor

Note:
For use with Analog Sensor channels only
ADMW1001_ADC_SENSOR_THERMISTOR_1 

Thermistor sensor

Note:
For use with Analog Sensor channels only
ADMW1001_ADC_SENSOR_THERMISTOR_2 

Thermistor sensor with user-defined linearisation and default configuration options

Note:
For use with Analog Sensor channels only
ADMW1001_ADC_SENSOR_THERMISTOR_3 

Thermistor sensor

Note:
For use with Analog Sensor channels only
ADMW1001_ADC_SENSOR_THERMISTOR_4 

Thermistor sensor

Note:
For use with Analog Sensor channels only
ADMW1001_ADC_SENSOR_BRIDGE_4WIRE_1 

Standard 4-wire Bridge Transducer sensor

Note:
For use with Analog Sensor channels only
Bridge Excitation Voltage must be selected as reference
ADMW1001_ADC_SENSOR_BRIDGE_4WIRE_2 

Standard 4-wire Bridge Transducer sensor

Note:
For use with Analog Sensor channels only
Bridge Excitation Voltage must be selected as reference
ADMW1001_ADC_SENSOR_BRIDGE_4WIRE_3 

Standard 4-wire Bridge Transducer sensor

Note:
For use with Analog Sensor channels only
Bridge Excitation Voltage must be selected as reference
ADMW1001_ADC_SENSOR_BRIDGE_4WIRE_4 

Standard 4-wire Bridge Transducer sensor

Note:
For use with Analog Sensor channels only
Bridge Excitation Voltage must be selected as reference
ADMW1001_ADC_SENSOR_BRIDGE_6WIRE_1 

Standard 6-wire Bridge Transducer sensor

Note:
For use with Analog Sensor channels only
Bridge Excitation Voltage must be selected as reference
ADMW1001_ADC_SENSOR_BRIDGE_6WIRE_2 

Standard 6-wire Bridge Transducer sensor

Note:
For use with Analog Sensor channels only
Bridge Excitation Voltage must be selected as reference
ADMW1001_ADC_SENSOR_BRIDGE_6WIRE_3 

Standard 6-wire Bridge Transducer sensor

Note:
For use with Analog Sensor channels only
Bridge Excitation Voltage must be selected as reference
ADMW1001_ADC_SENSOR_BRIDGE_6WIRE_4 

Standard 6-wire Bridge Transducer sensor

Note:
For use with Analog Sensor channels only
Bridge Excitation Voltage must be selected as reference
ADMW1001_ADC_SENSOR_DIODE_2C_TYPEA 

Standard Diode two current temperature sensor

Note:
For use with Analog Sensor channels only
ADMW1001_ADC_SENSOR_DIODE_3C_TYPEA 

Standard Diode three current temperature sensor

Note:
For use with Analog Sensor channels only
ADMW1001_ADC_SENSOR_DIODE_2C_1 

Standard Diode two current sensor

Note:
For use with Analog Sensor channels only
ADMW1001_ADC_SENSOR_DIODE_3C_1 

Standard Diode three current sensor

Note:
For use with Analog Sensor channels only
ADMW1001_ADC_SENSOR_MICROPHONE_A 

Generic microphone sensor without external amplifier

Note:
For use with Analog Sensor channels only
ADMW1001_ADC_SENSOR_MICROPHONE_B 

Generic microphone sensor with external amplifier and bias

Note:
For use with Analog Sensor channels only
ADMW1001_ADC_SENSOR_MICROPHONE_1 

Generic microphone sensor without external amplifier

Note:
For use with Analog Sensor channels only
ADMW1001_ADC_SENSOR_MICROPHONE_2 

Generic microphone sensor with external amplifier and bias

Note:
For use with Analog Sensor channels only
ADMW1001_ADC_SENSOR_VOLTAGE 

Generic voltage sensor

Note:
For use with Analog 0-10V Voltage Sensor channels only
ADMW1001_ADC_SENSOR_VOLTAGE_PRESSURE_A 

Honeywell Pressure voltage sensor (HSCMRNN1.6BAAA3) with default linearisation and default configuration options

Note:
For use with Analog 0-10V Voltage Sensor channels only
ADMW1001_ADC_SENSOR_VOLTAGE_PRESSURE_B 

Amphenol Pressure voltage sensor (NPA-300B-015A)

Note:
For use with Analog 0-10V Voltage Sensor channels only
ADMW1001_ADC_SENSOR_VOLTAGE_PRESSURE_1 

Generic pressure voltage sensor

Note:
For use with Analog 0-10V Voltage Sensor channels only
ADMW1001_ADC_SENSOR_VOLTAGE_PRESSURE_2 

Generic pressure voltage sensor

Note:
For use with Analog 0-10V Voltage Sensor channels only
ADMW1001_ADC_SENSOR_CURRENT 

Generic current sensor with no linearisation applied

Note:
For use with Analog 4-20mA Current Sensor channels only
ADMW1001_ADC_SENSOR_CURRENT_PRESSURE_A 

Honeywell Pressure current sensor (PX2CN2XX100PACH)

Note:
For use with Analog 4-20mA Current Sensor channels only
ADMW1001_ADC_SENSOR_CURRENT_PRESSURE_1 

Generic pressure current sensor

Note:
For use with Analog 4-20mA Current Sensor channels only
ADMW1001_ADC_SENSOR_CURRENT_PRESSURE_2 

Generic pressure current sensor

Note:
For use with Analog 4-20mA Current Sensor channels only

Definition at line 103 of file admw1001_sensor_types.h.

ADMW1001 measurement channel identifiers

Enumerator:
ADMW1001_CH_ID_NONE 

Used to indicate when no channel is selected

ADMW1001_CH_ID_ANLG_1_UNIVERSAL 

Universal channel 1 universal channel

ADMW1001_CH_ID_ANLG_2_UNIVERSAL 

Universal channel 2 universal channel

ADMW1001_CH_ID_ANLG_1_DIFFERENTIAL 

Universal channel 1 differential channel

ADMW1001_CH_ID_ANLG_2_DIFFERENTIAL 

Universal channel 2 differential channel

ADMW1001_CH_ID_DIG_I2C_0 

Digital I2C Sensor channel #0

ADMW1001_CH_ID_DIG_I2C_1 

Digital I2C Sensor channel #1

ADMW1001_CH_ID_DIG_I2C_2 

Digital I2C Sensor channel #2

ADMW1001_CH_ID_DIG_I2C_3 

Digital I2C Sensor channel #3

ADMW1001_CH_ID_DIG_I2C_4 

Digital I2C Sensor channel #4

ADMW1001_CH_ID_DIG_I2C_5 

Digital I2C Sensor channel #5

ADMW1001_CH_ID_DIG_SPI_0 

Digital SPI Sensor channel #0

ADMW1001_CH_ID_DIG_SPI_1 

Digital SPI Sensor channel #1

ADMW1001_CH_ID_DIG_SPI_2 

Digital SPI Sensor channel #2

ADMW1001_MAX_CHANNELS 

Maximum number of measurement channels on ADMW1001

Definition at line 55 of file admw1001_sensor_types.h.

ADMW1001 channel priority options

Definition at line 61 of file admw1001_config.h.

ADMW1001 analog filter chop mode

Note:
applicable only to ADC analog sensor channels
Enumerator:
ADMW1001_CHOP_MD_NONE 

No chop performed.

ADMW1001_CHOP_MD_HW 

Hardware only chop performed.

ADMW1001_CHOP_MD_SW 

Software only chop performed.

ADMW1001_CHOP_MD_HWSW 

Hardware and software chop performed.

Definition at line 316 of file admw1001_config.h.

ADMW1001 data ready mode options

Enumerator:
ADMW1001_DATAREADY_PER_CONVERSION 

The DATAREADY signal is asserted after completion of each conversion

  • a single data sample only from the latest completed conversion is stored in this mode
ADMW1001_DATAREADY_PER_CYCLE 

The DATAREADY signal is asserted after completion of each measurement cycle

  • data samples only from the lastest completed measurement cycle are stored in this mode
ADMW1001_DATAREADY_PER_FIFO_FILL 

The DATAREADY signal is asserted after each fill of the data FIFO

Definition at line 95 of file admw1001_config.h.

ADMW1001 I2C clock speed options

Note:
applicable only for I2C sensors
Enumerator:
ADMW1001_DIGITAL_SENSOR_COMMS_I2C_CLOCK_SPEED_100K 

100kHz I2C clock speed

ADMW1001_DIGITAL_SENSOR_COMMS_I2C_CLOCK_SPEED_400K 

400kHz I2C clock speed

Definition at line 375 of file admw1001_config.h.

ADMW1001 SPI clock speed options

Note:
applicable only for SPI sensors
Enumerator:
ADMW1001_DIGITAL_SENSOR_COMMS_SPI_CLOCK_8MHZ 

SPI Clock Speed configured to 8MHz

ADMW1001_DIGITAL_SENSOR_COMMS_SPI_CLOCK_4MHZ 

SPI Clock Speed configured to 4MHz

ADMW1001_DIGITAL_SENSOR_COMMS_SPI_CLOCK_2MHZ 

SPI Clock Speed configured to 2MHz

ADMW1001_DIGITAL_SENSOR_COMMS_SPI_CLOCK_1MHZ 

SPI Clock Speed configured to 1MHz

ADMW1001_DIGITAL_SENSOR_COMMS_SPI_CLOCK_500KHZ 

SPI Clock Speed configured to 500kHz

ADMW1001_DIGITAL_SENSOR_COMMS_SPI_CLOCK_250KHZ 

SPI Clock Speed configured to 250kHz

ADMW1001_DIGITAL_SENSOR_COMMS_SPI_CLOCK_125KHZ 

SPI Clock Speed configured to 125kHz

ADMW1001_DIGITAL_SENSOR_COMMS_SPI_CLOCK_62P5KHZ 

SPI Clock Speed configured to 62.5kHz

ADMW1001_DIGITAL_SENSOR_COMMS_SPI_CLOCK_31P3KHZ 

SPI Clock Speed configured to 31.3kHz

ADMW1001_DIGITAL_SENSOR_COMMS_SPI_CLOCK_15P6KHZ 

SPI Clock Speed configured to 15.6kHz

ADMW1001_DIGITAL_SENSOR_COMMS_SPI_CLOCK_7P8KHZ 

SPI Clock Speed configured to 7.8kHz

ADMW1001_DIGITAL_SENSOR_COMMS_SPI_CLOCK_3P9KHZ 

SPI Clock Speed configured to 3.9kHz

ADMW1001_DIGITAL_SENSOR_COMMS_SPI_CLOCK_1P9KHZ 

SPI Clock Speed configured to 1.9kHz

ADMW1001_DIGITAL_SENSOR_COMMS_SPI_CLOCK_977HZ 

SPI Clock Speed configured to 977Hz

ADMW1001_DIGITAL_SENSOR_COMMS_SPI_CLOCK_488HZ 

SPI Clock Speed configured to 488Hz

ADMW1001_DIGITAL_SENSOR_COMMS_SPI_CLOCK_244HZ 

SPI Clock Speed configured to 244Hz

Definition at line 405 of file admw1001_config.h.

ADMW1001 SPI mode options

Note:
applicable only for SPI sensors
Enumerator:
ADMW1001_DIGITAL_SENSOR_COMMS_SPI_MODE_0 

SPI mode 0 Clock Polarity = 0 Clock Phase = 0

ADMW1001_DIGITAL_SENSOR_COMMS_SPI_MODE_1 

SPI mode 0 Clock Polarity = 0 Clock Phase = 1

ADMW1001_DIGITAL_SENSOR_COMMS_SPI_MODE_2 

SPI mode 0 Clock Polarity = 1 Clock Phase = 0

ADMW1001_DIGITAL_SENSOR_COMMS_SPI_MODE_3 

SPI mode 0 Clock Polarity = 1 Clock Phase = 1

Definition at line 388 of file admw1001_config.h.

ADMW1001 digital sensor data encoding

Note:
applicable only to SPI and I2C digital sensor channels
Enumerator:
ADMW1001_DIGITAL_SENSOR_DATA_CODING_NONE 

None/Invalid - data format is ignored if coding is set to this value.

ADMW1001_DIGITAL_SENSOR_DATA_CODING_UNIPOLAR 

Unipolar - unsigned integer values.

ADMW1001_DIGITAL_SENSOR_DATA_CODING_TWOS_COMPLEMENT 

Twos-complement - signed integer values.

ADMW1001_DIGITAL_SENSOR_DATA_CODING_OFFSET_BINARY 

Offset Binary - used to represent signed values with unsigned integers, with the mid-range value representing 0.

Definition at line 587 of file admw1001_config.h.

ADMW1001 measurement analog filter settling options

Enumerator:
ADMW1001_FILTER_SETTLING_ALWAYS 

Allow full settling time to elapse between every measurement from an analog sensor

ADMW1001_FILTER_SETTLING_FAST 

Skip settling time between consecutive measurements from an analog sensor

Definition at line 127 of file admw1001_config.h.

ADMW1001 I2C digital sensor type options

Select the sensor type that is connected to an I2C digital measurement channel.

Note:
These are pre-defined sensors using built-in linearisation data
Enumerator:
ADMW1001_I2C_SENSOR_HUMIDITY_A 

Honeywell HiH9000-series humidity sensor

Note:
For use with I2C Digital Sensor channels only
ADMW1001_I2C_SENSOR_HUMIDITY_B 

Sensirion SHT35-DIS-B humidity sensor

Note:
For use with I2C Digital Sensor channels only
ADMW1001_I2C_SENSOR_HUMIDITY_C 

TE MS8607 humidity sensor Note: the MS8607 is a combined Pressure & Temperature, Humidity sensor. The humidity sensor is treated as a virtual device, i.e. standalone.

Note:
For use with I2C Digital Sensor channels only
ADMW1001_I2C_SENSOR_HUMIDITY_D 

Sensirion SCD30 humidity sensor Note: the SCD30 is a combined CO2, Humidity and Temperature sensor. The humidity sensor is treated as a virtual device, i.e. standalone.

Note:
For use with I2C Digital Sensor channels only
ADMW1001_I2C_SENSOR_AMBIENTLIGHT_A 

ON-Semiconductor NOA1305 ambient light sensor

Note:
For use with I2C Digital Sensor channels only
ADMW1001_I2C_SENSOR_PRESSURE_A 

TE MS8607 pressure sensor Note: the MS8607 is a combined Pressure & Temperature, Humidity sensor. The pressure sensor is treated as a virtual device, i.e. standalone.

Note:
For use with I2C Digital Sensor channels only
ADMW1001_I2C_SENSOR_TEMPERATURE_A 

TE MS8607 temperature sensor Note: the MS8607 is a combined Pressure & Temperature, Humidity sensor. The temperature sensor is treated as a virtual device, i.e. standalone.

Note:
For use with I2C Digital Sensor channels only
ADMW1001_I2C_SENSOR_TEMPERATURE_B 

Sensirion SCD30 temperature sensor Note: the SCD30 is a combined CO2, Humidity and Temperature sensor. The temperature sensor is treated as a virtual device, i.e. standalone.

Note:
For use with I2C Digital Sensor channels only
ADMW1001_I2C_SENSOR_CO2_A 

Sensirion SCD30 C02 sensor Note: the SCD30 is a combined CO2, Humidity and Temperature sensor. The CO2 sensor is treated as a virtual device, i.e. standalone.

Note:
For use with I2C Digital Sensor channels only

Definition at line 411 of file admw1001_sensor_types.h.

Linearisation data vector format

Enumerator:
ADMW1001_LUT_DATA_TYPE_RESERVED 

Reserved - for internal use only.

ADMW1001_LUT_DATA_TYPE_FLOAT32 

Single-precision 32-bit floating-point.

ADMW1001_LUT_DATA_TYPE_FLOAT64 

Double-precision 64-bit floating-point.

Definition at line 123 of file admw1001_lut_data.h.

Linearisation equation type

Enumerator:
ADMW1001_LUT_EQUATION_POLYN 

Polynomial equation, typically used for Thermocouple and RTD linearisation.

ADMW1001_LUT_EQUATION_POLYNEXP 

Polynomial + exponential equation, typically used for Thermocouple inverse linearisation.

ADMW1001_LUT_EQUATION_QUADRATIC 

Quadratic linearisation equation, typically used for RTD linearisation.

ADMW1001_LUT_EQUATION_STEINHART 

Steinhart-Hart equation, typically used for Thermistor linearisation.

ADMW1001_LUT_EQUATION_LOGARITHMIC 

Beta-based logarithmic equation, typically used for Thermistor linearisation.

ADMW1001_LUT_EQUATION_BIVARIATE_POLYN 

Bi-variate polynomial equation, typically used for bridge pressure sensor linearisation.

Note:
2nd-degree is the maximum currently supported
ADMW1001_LUT_EQUATION_COUNT 

Enum count value - for internal use only.

ADMW1001_LUT_EQUATION_LUT 

Hard-coded Look-Up Table - for internal use only.

Definition at line 85 of file admw1001_lut_data.h.

Linearisation look-up table / co-efficient list geometry

Enumerator:
ADMW1001_LUT_GEOMETRY_RESERVED 

reserved - for internal use only

ADMW1001_LUT_GEOMETRY_COEFFS 

1D/2D equation coefficient list

ADMW1001_LUT_GEOMETRY_NES_1D 

1-dimensional not-equally-spaced look-up table

ADMW1001_LUT_GEOMETRY_NES_2D 

2-dimensional not-equally-spaced look-up table

ADMW1001_LUT_GEOMETRY_ES_1D 

1-dimensional equally-spaced look-up table

ADMW1001_LUT_GEOMETRY_ES_2D 

2-dimensional equally-spaced look-up table

Definition at line 69 of file admw1001_lut_data.h.

ADMW1001 look-up table selection Select table used to linearise the measurement.

Enumerator:
ADMW1001_LUT_DEFAULT 

Default LUT

ADMW1001_LUT_UNITY 

Unity LUT

ADMW1001_LUT_CUSTOM 

User defined custom LUT

ADMW1001_LUT_RESERVED 

Reserved for future use

Definition at line 570 of file admw1001_config.h.

Enumerator:
ADMW1001_LUT_TC_DIRECTION_FORWARD 

Thermocouple forward (mV to Celsius) linearisation Use this value by default for non-thermocouple sensors.

ADMW1001_LUT_TC_DIRECTION_BACKWARD 

Thermocouple inverse (Celsius to mV) linearisation.

ADMW1001_LUT_TC_DIRECTION_COUNT 

Enum count value - for internal use only.

Definition at line 112 of file admw1001_lut_data.h.

ADMW1001 measurement unit options

Optionally select a measurement unit for final conversion results. Currently applicable only to specific temperature sensor types.

Enumerator:
ADMW1001_MEASUREMENT_UNIT_UNSPECIFIED 

No measurement unit specified

ADMW1001_MEASUREMENT_UNIT_CELSIUS 

Celsius temperature unit - applicable to temperature sensors only

ADMW1001_MEASUREMENT_UNIT_FAHRENHEIT 

Fahrenheit temperature unit - applicable to temperature sensors only

Definition at line 141 of file admw1001_config.h.

ADMW1001 Open-Sensor Diagnostics frequency

Select the per-cycle frequency at which open-sensor diagnostic checks should be performed. Open-sensor diagnostic checks typically require specific or time-consuming processing which cannot be executed while a measurement cycle is running.

Note:
Open-sensor diagnostic checks, when performed, will add a delay to the start of the next measurement cycle.
Enumerator:
ADMW1001_OPEN_SENSOR_DIAGNOSTICS_DISABLED 

No Open-Sensor Detection is performed

ADMW1001_OPEN_SENSOR_DIAGNOSTICS_PER_CYCLE 

No Open-Sensor Detection is performed prior to each cycle

ADMW1001_OPEN_SENSOR_DIAGNOSTICS_PER_100_CYCLES 

No Open-Sensor Detection is performed at intervals of 100 cycles

ADMW1001_OPEN_SENSOR_DIAGNOSTICS_PER_1000_CYCLES 

No Open-Sensor Detection is performed at intervals of 1001 cycles

Definition at line 162 of file admw1001_config.h.

ADMW1001 operating mode options

Enumerator:
ADMW1001_OPERATING_MODE_SINGLECYCLE 

Executes a single measurement cycle and stops

ADMW1001_OPERATING_MODE_CONTINUOUS 

Continuously executes measurement cycles

ADMW1001_OPERATING_MODE_MULTICYCLE 

Executes a burst of measurement cycles, repeated at defined intervals

Definition at line 83 of file admw1001_config.h.

ADMW1001 power mode options

Enumerator:
ADMW1001_POWER_MODE_HIBERNATION 

module has entede hibernation mode. All analog circuitry is disabled. All peripherals disabled apart from the Wake-up pin functionality.

ADMW1001_POWER_MODE_ACTIVE 

Part is fully powered up and either cycling through a sequence or awaiting a configuration

Definition at line 117 of file admw1001_config.h.

ADMW1001 Sinc Filter range (SF)

Note:
applicable only to ADC analog sensor channels
SF must be set in conjunction with chop mode and sinc filter type to achieve the desired sampling rate.
Enumerator:
ADMW1001_SF_976HZ 

SF setting for 976Hz sample rate.

ADMW1001_SF_488HZ 

SF setting for 488Hz sample rate.

ADMW1001_SF_244HZ 

SF setting for 244Hz sample rate.

ADMW1001_SF_122HZ 

SF setting for 122Hz sample rate.

ADMW1001_SF_61HZ 

SF setting for 61Hz sample rate.

ADMW1001_SF_30P5HZ 

SF setting for 61Hz sample rate.

ADMW1001_SF_10HZ 

SF setting for 10Hz sample rate.

ADMW1001_SF_8P24HZ 

SF setting for 8.24Hz sample rate.

ADMW1001_SF_5HZ 

SF setting for 5Hz sample rate.

Definition at line 348 of file admw1001_config.h.

ADMW1001 SPI digital sensor type options

Select the sensor type that is connected to an SPI digital measurement channel.

Note:
These are pre-defined sensors using built-in linearisation data
Enumerator:
ADMW1001_SPI_SENSOR_PRESSURE_A 

Honeywell HSCDRNN1.6BASA3 pressure sensor

Note:
For use with SPI Digital Sensor channels only
ADMW1001_SPI_SENSOR_ACCELEROMETER_A 

Analog Devices ADxL362 3-axis accelerometer sensor

Note:
For use with SPI Digital Sensor channels only
This sensor requires the use of 3 SPI Digital Sensor channels, with the sensor measurements from the X/Y/Z axes each output on a seperate dedicated channel (SPI#0/SPI#1/SPI#2, respectively)
ADMW1001_SPI_SENSOR_ACCELEROMETER_B 

Analog Devices ADxL355 3-axis accelerometer sensor

Note:
For use with SPI Digital Sensor channels only
This sensor requires the use of 3 SPI Digital Sensor channels, with the sensor measurements from the X/Y/Z axes each output on a seperate dedicated channel (SPI#0/SPI#1/SPI#2, respectively)

Definition at line 480 of file admw1001_sensor_types.h.


Function Documentation

struct __attribute__ ( (packed, aligned(4))   ) [read, write]

Struct for a list of coefficients to be used in an equation

Struct for a 1-dimensional equally-spaced look-up table

Struct for a 1-dimensional not-equally-spaced look-up table

Struct for a 2-dimensional equally-spaced look-up table

Struct for a 2-dimensional not-equally-spaced look-up table

Struct for a 2-dimensional list of coefficients to be used in a bi-variate polynomial equation

Look-Up Table descriptor

Look-Up Table structure

LUT data format versions

LUT data header structure

LUT data top-level structure

Alternative top-level structure for raw LUT data representation

Note:
This is intended to be used for encapsulating the storage of static LUT data declarations in C files. The rawTableData can be cast to the ADMW_LUT type for further parsing/processing.

< number of coefficients

< look-up table range - minimum

< look-up table range - maximum

< C99 flexible array: sorted by ascending exponent in polynomials

< number of elements.

< initial input value, corresponding to first table element

< interval between successive input values

< C99 flexible array

< number of elements of each array.

< C99 flexible array, first X's array then Y's array

< number of elements for input X.

< number of elements for input Y.

< initial X input value

< interval between successive X input values

< initial Y input value

< interval between successive Y input values

< C99 flexible array, Z matrix[y][x]

< number of elements in array X.

< number of elements in array Y.

< C99 flexible array, Order: X's array, Y's array, Z matrix[y][x]

< number of coefficients

< look-up table range - minimum X input value

< look-up table range - maximum X input value

< look-up table range - minimum Y input value

< look-up table range - maximum Y input value

< C99 flexible array: sorted by ascending X degree then sorted by ascending Y exponent

< ADMW1001_LUT_GEOMETRY

< ADMW1001_LUT_EQUATION

< ADMW1001_LUT_TC_DIRECTION

< ADMW1001_ADC_SENSOR_TYPE

< ADMW1001_LUT_DATA_TYPE

< Length (bytes) of table data section (excl. this header)

< CRC-16-CCITT of the data

< Look-Up Table descriptor

< Look-Up Table data

< Major version number

< Minor version number

< Hard-coded signature value (ADMW_LUT_SIGNATURE)

< LUT data format version (ADMW_LUT_VERSION)

< Total number of tables

< Total length (in bytes) of all table descriptors and data (excluding this header) This, plus the header length, must not exceed ADMW_LUT_MAX_SIZE

< LUT data top-level header structure

< Variable-length array of one-or-more look-up table structures

< LUT data top-level header structure

< Variable-length byte array of look-up tables in raw binary format

Definition at line 133 of file admw1001_lut_data.h.

ADMW_RESULT admw1001_AssembleLutData ( ADMW1001_LUT *  pLutBuffer,
unsigned  nLutBufferSize,
unsigned const   nNumTables,
ADMW1001_LUT_DESCRIPTOR *const   ppDesc[],
ADMW1001_LUT_TABLE_DATA *const   ppData[] 
)

Assemble a list of separate Look-Up Tables into a single buffer.

Parameters:
[out]pLutBufferPointer to the Look-Up Table data buffer where the assembled Look-Up Table data will be placed
[in]nLutBufferSizeAllocated size, in bytes, of the output data buffer
[in]nNumTablesNumber of tables to add to the Look-Up Table buffer
[in]ppDescArray of pointers to the table descriptors to be added
[in]ppDataArray of pointers to the table data to be added
Returns:
Status

This utiliity function fills the Look-up Table header fields; then walks through the array of individual table descriptor and data pointers provided, appending (copying) each one to the Look-Up Table data buffer. The length and crc16 fields of each table descriptor will be calculated and filled by this function, but other fields in the descriptor structure must be filled by the caller beforehand.

Note:
The assembled LUT data buffer filled by this function can then be written to the device memory using admw1001_SetLutData.

Definition at line 2464 of file admw_1001.c.

ADMW_RESULT admw1001_GetDataReadyModeInfo ( ADMW_DEVICE_HANDLE const   hDevice,
ADMW_MEASUREMENT_MODE const   eMeasurementMode,
ADMW1001_OPERATING_MODE *const   peOperatingMode,
ADMW1001_DATAREADY_MODE *const   peDataReadyMode,
uint32_t *const   pnSamplesPerDataready,
uint32_t *const   pnSamplesPerCycle,
uint8_t *const   pnBytesPerSample 
)

Get the number of samples available when DATAREADY status is asserted.

Parameters:
[in]hDeviceADMW device context handle
[in]eMeasurementModeMust be set to the same value used for admw_StartMeasurement().
[out]peOperatingModePointer to return the configured operating mode
[out]peDataReadyModePointer to return the configured data publishing mode
[out]pnSamplesPerDatareadyPointer to return the calculated number of samples available when DATAREADY is asserted
[out]pnSamplesPerCyclePointer to return the calculated number of samples produced per measurement cycle
[out]pnBytesPerSamplePointer to return the size, in bytes, of each sample
Returns:
Status

Examines the current configuration settings in the device registers to calculate the number of samples available whenever the DATAREADY signal is asserted, along with other related information. This may be used to allocate buffers to store samples and to determine how many samples to retrieve whenever the DATAREADY status is asserted.

Definition at line 856 of file admw_1001.c.

ADMW_RESULT admw1001_Read_Debug_Register ( ADMW_DEVICE_HANDLE const   hDevice,
uint16_t const   nAddress,
void *const   pData,
unsigned const   nLength 
)

Read one or more device registers at the specified debug register address.

Parameters:
[in]hDeviceADMW1001 device context handle
[in]nAddressRegister map address to read from
[out]pDataPointer to return the register map data
[in]nLengthNumber of bytes of data to read from the register map
Returns:
Status

Provides direct byte-level read access to the device register map. The size and format of the register(s) must be known.

Note:
Reads from special "keyhole" or "FIFO" registers will be handled according to documentation for those registers.

Definition at line 803 of file admw_1001.c.

ADMW_RESULT admw1001_ReadRegister ( ADMW_DEVICE_HANDLE const   hDevice,
uint16_t const   nAddress,
void *const   pData,
unsigned const   nLength 
)

Read one or more device registers at the specified register address.

Parameters:
[in]hDeviceADMW1001 device context handle
[in]nAddressRegister map address to read from
[out]pDataPointer to return the register map data
[in]nLengthNumber of bytes of data to read from the register map
Returns:
Status

Provides direct byte-level read access to the device register map. The size and format of the register(s) must be known.

Note:
Reads from special "keyhole" or "FIFO" registers will be handled according to documentation for those registers.

Definition at line 762 of file admw_1001.c.

ADMW_RESULT admw1001_SetAdvancedAccess ( ADMW_DEVICE_HANDLE  hDevice,
ADMW1001_ADVANCED_ACCESS_KEY  key 
)

Enable access to advanced sensor configuration options.

Parameters:
[in]hDeviceADMW1001 device context handle
[in]keyKey to unlock advanced access
Returns:
Status

When the correct access key is provided, access to advanced sensor configuration options and use of advanced sensor types is enabled.

Note:
Settings are not applied until admw_ApplyConfigUpdates() is called
ADMW_RESULT admw1001_SetChannelConfig ( ADMW_DEVICE_HANDLE  hDevice,
ADMW1001_CH_ID  eChannelId,
ADMW1001_CHANNEL_CONFIG pChannelConfig 
)

Update channel configuration settings for a specific channel.

Parameters:
[in]hDeviceADMW1001 device context handle
[in]eChannelIdSelects the channel to be updated
[in]pChannelConfigChannel configuration details
Returns:
Status

Translates configuration details provided into device-specific register settings and updates device configuration registers. Allows individual channel configuration details to be dynamically adjusted without rewriting the full device configuration.

Note:
Settings are not applied until admw_ApplyConfigUpdates() is called

Definition at line 2163 of file admw_1001.c.

ADMW_RESULT admw1001_SetChannelCount ( ADMW_DEVICE_HANDLE  hDevice,
ADMW1001_CH_ID  eChannelId,
uint32_t  nMeasurementsPerCycle 
)

Update number of measurements-per-cycle for a specific channel.

Parameters:
[in]hDeviceADMW1001 device context handle
[in]eChannelIdSelects the channel to be updated
[in]nMeasurementsPerCycleSpecifies the number of measurements to be obtained from this channel in each measurement cycle. Set as 0 to disable the channel (omit from measurement cycle).
Returns:
Status

Translates configuration details provided into device-specific register settings and updates device configuration registers. Allows individual channels to be dynamically enabled/disabled, and measurements-per-cycle to be adjusted.

Note:
Settings are not applied until admw_ApplyConfigUpdates() is called

Definition at line 1139 of file admw_1001.c.

ADMW_RESULT admw1001_SetChannelPriority ( ADMW_DEVICE_HANDLE  hDevice,
ADMW1001_CH_ID  eChannelId,
ADMW1001_CHANNEL_PRIORITY  ePriority 
)

Update priority level for a specific channel.

Parameters:
[in]hDeviceADMW1001 device context handle
[in]eChannelIdSelects the channel to be updated
[in]ePrioritySpecifies the channel priority level
Returns:
Status

Translates configuration details provided into device-specific register settings and updates device configuration registers. Allows individual channels to be dynamically re-prioritised.

Note:
Settings are not applied until admw_ApplyConfigUpdates() is called
ADMW_RESULT admw1001_SetChannelSettlingTime ( ADMW_DEVICE_HANDLE  hDevice,
ADMW1001_CH_ID  eChannelId,
uint32_t  nSettlingTime 
)

Update the extra settling time for a specified channel.

Parameters:
[in]hDeviceADMW1001 device context handle
[in]eChannelIdSelects the channel to be updated
[in]nSettlingTimeA minimum settling time is applied internally for each channel, based on the sensor type. However, additional settling time (microseconds) can optionally be specified here. Set to 0 if not required.
Returns:
Status

Translates configuration details provided into device-specific register settings and updates device configuration registers. Allows individual channel settling times to be dynamically adjusted.

Note:
Settings are not applied until admw_ApplyConfigUpdates() is called

Definition at line 2138 of file admw_1001.c.

ADMW_RESULT admw1001_SetChannelThresholdLimits ( ADMW_DEVICE_HANDLE  hDevice,
ADMW1001_CH_ID  eChannelId,
float32_t  fHighThresholdLimit,
float32_t  fLowThresholdLimit 
)

Update the measurement threshold limits for a specified channel.

Parameters:
[in]hDeviceADMW1001 device context handle
[in]eChannelIdSelects the channel to be updated
[in]fHighThresholdLimitOptional maximum threshold value for each processed sample, to be checked prior to publishing. A channel ALERT condition is raised if the processed value is higher than this threshold. Set to NaN if not required.
[in]fLowThresholdLimitOptional minimum threshold value for each processed sample, to be checked prior to publishing. A channel ALERT condition is raised if the processed value is lower than this threshold. Set to NaN if not required.
Returns:
Status

Translates configuration details provided into device-specific register settings and updates device configuration registers. Allows individual channel thresholds to be dynamically adjusted.

Note:
Settings are not applied until admw_ApplyConfigUpdates() is called

Definition at line 2079 of file admw_1001.c.

ADMW_RESULT admw1001_SetDiagnosticsConfig ( ADMW_DEVICE_HANDLE  hDevice,
ADMW1001_DIAGNOSTICS_CONFIG pDiagnosticsConfig 
)

Update diagnostics configuration settings on the device.

Parameters:
[in]hDeviceADMW1001 device context handle
[in]pDiagnosticsConfigDiagnostics configuration details
Returns:
Status

Translates configuration details provided into device-specific register settings and updates device configuration registers.

Note:
Settings are not applied until admw_ApplyConfigUpdates() is called

Definition at line 1097 of file admw_1001.c.

ADMW_RESULT admw1001_SetLutData ( ADMW_DEVICE_HANDLE  hDevice,
ADMW1001_LUT *const   pLutData 
)

Write Look-Up Table data to the device memory.

Parameters:
[in]hDeviceADMW1001 device context handle
[out]pLutDataPointer to the Look-Up Table data structure
Returns:
Status

Validates the Look-Up Table data format and loads it into device memory via dedicated keyhole registers.

Note:
Settings are not applied until admw_ApplyConfigUpdates() is called

Definition at line 2329 of file admw_1001.c.

ADMW_RESULT admw1001_SetLutDataRaw ( ADMW_DEVICE_HANDLE  hDevice,
ADMW1001_LUT_RAW *const   pLutData 
)

Write Look-Up Table raw data to the device memory.

Parameters:
[in]hDeviceADMW device context handle
[out]pLutDataPointer to the Look-Up Table raw data structure
Returns:
Status

This can be used instead of admw1001_SetLutData for loading LUT data from the alternative raw data format. See admw1001_SetLutData for more information.

Note:
Settings are not applied until admw_ApplyConfigUpdates() is called

Definition at line 2423 of file admw_1001.c.

ADMW_RESULT admw1001_SetMeasurementConfig ( ADMW_DEVICE_HANDLE  hDevice,
ADMW1001_MEASUREMENT_CONFIG pMeasurementConfig 
)

Update measurement configuration settings on the device.

Parameters:
[in]hDeviceADMW1001 device context handle
[in]pMeasurementConfigMeasurement configuration details
Returns:
Status

Translates configuration details provided into device-specific register settings and updates device configuration registers.

Note:
Settings are not applied until admw_ApplyConfigUpdates() is called

Definition at line 1063 of file admw_1001.c.

ADMW_RESULT admw1001_SetSensorParameter ( ADMW_DEVICE_HANDLE  hDevice,
ADMW1001_CH_ID  eChannelId,
float32_t  fSensorParam 
)

Set a sensor specific parameter for a specified channel.

Parameters:
[in]hDeviceADMW1001 device context handle
[in]eChannelIdSelects the channel to be updated
[in]fSensorParamSensor specific parameter
Returns:
Status

Translates configuration details provided into device-specific register settings and updates device configuration registers. Allows optional sensor-specific parameter to be specified

Note:
Settings are not applied until admw_ApplyConfigUpdates() is called

Definition at line 2125 of file admw_1001.c.

ADMW_RESULT admw1001_Write_Debug_Register ( ADMW_DEVICE_HANDLE const   hDevice,
uint16_t const   nAddress,
void *const   pData,
unsigned const   nLength 
)

Write one or more device registers at the specified debug register address.

Parameters:
[in]hDeviceADMW1001 device context handle
[in]nAddressRegister map address to read from
[out]pDataPointer to return the register map data
[in]nLengthNumber of bytes of data to read from the register map
Returns:
Status

Provides direct byte-level write access to the device register map. The size and format of the register(s) must be known.

Definition at line 722 of file admw_1001.c.

ADMW_RESULT admw1001_WriteRegister ( ADMW_DEVICE_HANDLE const   hDevice,
uint16_t const   nAddress,
void *const   pData,
unsigned const   nLength 
)

Write one or more device registers at the specified register address.

Parameters:
[in]hDeviceADMW1001 device context handle
[in]nAddressRegister map address to read from
[out]pDataPointer to return the register map data
[in]nLengthNumber of bytes of data to read from the register map
Returns:
Status

Provides direct byte-level write access to the device register map. The size and format of the register(s) must be known.

Note:
Writes to read-only registers will be ignored by the device.
Writes to special "keyhole" registers will be handled according to documentation for those registers.

Definition at line 681 of file admw_1001.c.