![]() |
no-OS
|
Header file of AD7746 Driver. More...
Classes | |
| struct | ad7746_cap |
| struct | ad7746_vt |
| struct | ad7746_exc |
| struct | ad7746_config |
| struct | ad7746_setup |
| struct | ad7746_init_param |
| struct | ad7746_dev |
Enumerations | |
| enum | ad7746_id { ID_AD7745 , ID_AD7746 , ID_AD7747 } |
| enum | ad7746_vtmd { AD7746_VTMD_INT_TEMP , AD7746_VTMD_EXT_TEMP , AD7746_VTMD_VDD_MON , AD7746_VIN_EXT_VIN } |
| enum | ad7746_exc_pin { AD7746_EXC_PIN_DISABLED , AD7746_EXC_PIN_INVERTED , AD7746_EXC_PIN_NORMAL } |
| enum | ad7746_exclvl { AD7746_EXCLVL_1_DIV_8 , AD7746_EXCLVL_2_DIV_8 , AD7746_EXCLVL_3_DIV_8 , AD7746_EXCLVL_4_DIV_8 } |
| enum | ad7746_md { AD7746_MODE_IDLE , AD7746_MODE_CONT , AD7746_MODE_SINGLE , AD7746_MODE_POWERDOWN , AD7746_MODE_OFFSET_CALIB = 5 , AD7746_MODE_GAIN_CALIB } |
Functions | |
| int32_t | ad7746_init (struct ad7746_dev **device, struct ad7746_init_param *init_param) |
| Initialize the ad7606 device structure. | |
| int32_t | ad7746_reg_write (struct ad7746_dev *dev, uint8_t reg, uint8_t *data, uint16_t bytes_number) |
| Writes data into AD7746 registers, starting from the selected register address pointer. | |
| int32_t | ad7746_reg_read (struct ad7746_dev *dev, uint8_t reg, uint8_t *data, uint16_t bytes_number) |
| Reads data from AD7746 registers, starting from the selected register address pointer. | |
| int32_t | ad7746_reset (struct ad7746_dev *dev) |
| Resets the AD7746. | |
| int32_t | ad7746_remove (struct ad7746_dev *dev) |
| Deinitialize the ad7746 driver and free all allocated resources. | |
| int32_t | ad7746_set_cap (struct ad7746_dev *dev, struct ad7746_cap cap) |
| Configure the capacitive setup register. | |
| int32_t | ad7746_set_vt (struct ad7746_dev *dev, struct ad7746_vt vt) |
| Configure the voltage/temperature setup register. | |
| int32_t | ad7746_set_exc (struct ad7746_dev *dev, struct ad7746_exc exc) |
| Configure the excitation setup register. | |
| int32_t | ad7746_set_config (struct ad7746_dev *dev, struct ad7746_config config) |
| Set the configuration register. | |
| int32_t | ad7746_set_cap_dac_a (struct ad7746_dev *dev, bool enable, uint8_t code) |
| Set the DAC code and enable state for EXCA. | |
| int32_t | ad7746_set_cap_dac_b (struct ad7746_dev *dev, bool enable, uint8_t code) |
| Set the DAC code and enable state for EXCB. | |
| int32_t | ad7746_set_cap_offset (struct ad7746_dev *dev, uint16_t offset) |
| Set the capacitive offset. | |
| int32_t | ad7746_set_cap_gain (struct ad7746_dev *dev, uint16_t gain) |
| Set the capacitive gain. | |
| int32_t | ad7746_set_volt_gain (struct ad7746_dev *dev, uint16_t gain) |
| Set the voltage gain. | |
| int32_t | ad7746_get_vt_data (struct ad7746_dev *dev, uint32_t *vt_data) |
| Waits until a conversion on a voltage/temperature channel has been finished and returns the output data. | |
| int32_t | ad7746_get_cap_data (struct ad7746_dev *dev, uint32_t *cap_data) |
| Waits until a conversion on the capacitive channel has been finished and returns the output data. | |
| int32_t | ad7746_calibrate (struct ad7746_dev *dev, enum ad7746_md md) |
| Perform offset/gain calibration. | |
Header file of AD7746 Driver.
Copyright 2021(c) Analog Devices, Inc.
SPDX-License-Identifier: BSD-3-Clause
| #define AD7746_ADDRESS 0x48 |
| #define AD7746_CAPDAC_DACEN_MSK NO_OS_BIT(7) |
| #define AD7746_CAPDAC_DACP_MSK NO_OS_GENMASK(6,0) |
| #define AD7746_CAPSETUP_CAPCHOP_MSK NO_OS_BIT(0) |
| #define AD7746_CAPSETUP_CAPDIFF_MSK NO_OS_BIT(5) |
| #define AD7746_CAPSETUP_CAPEN_MSK NO_OS_BIT(7) |
| #define AD7746_CAPSETUP_CIN2_MSK NO_OS_BIT(6) |
| #define AD7746_CONF_CAPF_MSK NO_OS_GENMASK(5,3) |
| #define AD7746_CONF_MD_MSK NO_OS_GENMASK(2,0) |
| #define AD7746_CONF_VTF_MSK NO_OS_GENMASK(7,6) |
| #define AD7746_EXCSETUP_CLKCTRL_MSK NO_OS_BIT(7) |
| #define AD7746_EXCSETUP_EXCA_MSK NO_OS_GENMASK(3,2) |
| #define AD7746_EXCSETUP_EXCB_MSK NO_OS_GENMASK(5,4) |
| #define AD7746_EXCSETUP_EXCLVL_MSK NO_OS_GENMASK(1,0) |
| #define AD7746_EXCSETUP_EXCON_MSK NO_OS_BIT(6) |
| #define AD7746_NUM_REGISTERS (AD7746_REG_VOLT_GAINL + 1u) |
| #define AD7746_REG_CAP_DATA_HIGH 1u |
| #define AD7746_REG_CAP_DATA_LOW 3u |
| #define AD7746_REG_CAP_DATA_MID 2u |
| #define AD7746_REG_CAP_GAINH 15u |
| #define AD7746_REG_CAP_GAINL 16u |
| #define AD7746_REG_CAP_OFFH 13u |
| #define AD7746_REG_CAP_OFFL 14u |
| #define AD7746_REG_CAP_SETUP 7u |
| #define AD7746_REG_CAPDACA 11u |
| #define AD7746_REG_CAPDACB 12u |
| #define AD7746_REG_CFG 10u |
| #define AD7746_REG_EXC_SETUP 9u |
| #define AD7746_REG_STATUS 0u |
| #define AD7746_REG_VOLT_GAINH 17u |
| #define AD7746_REG_VOLT_GAINL 18u |
| #define AD7746_REG_VT_DATA_HIGH 4u |
| #define AD7746_REG_VT_DATA_LOW 6u |
| #define AD7746_REG_VT_DATA_MID 5u |
| #define AD7746_REG_VT_SETUP 8u |
| #define AD7746_RESET_CMD 0xBF |
| #define AD7746_STATUS_EXCERR_MSK NO_OS_BIT(3) |
| #define AD7746_STATUS_RDY_MSK NO_OS_BIT(2) |
| #define AD7746_STATUS_RDYCAP_MSK NO_OS_BIT(0) |
| #define AD7746_STATUS_RDYVT_MSK NO_OS_BIT(1) |
| #define AD7746_VTSETUP_EXTREF_MSK NO_OS_BIT(4) |
| #define AD7746_VTSETUP_VTCHOP_MSK NO_OS_BIT(0) |
| #define AD7746_VTSETUP_VTEN_MSK NO_OS_BIT(7) |
| #define AD7746_VTSETUP_VTMD_MSK NO_OS_GENMASK(6,5) |
| #define AD7746_VTSETUP_VTSHORT_MSK NO_OS_BIT(1) |
| enum ad7746_exc_pin |
| enum ad7746_exclvl |
| enum ad7746_id |
| enum ad7746_md |
| enum ad7746_vtmd |
| int32_t ad7746_calibrate | ( | struct ad7746_dev * | dev, |
| enum ad7746_md | md ) |
Perform offset/gain calibration.
| dev | - Device descriptor pointer. |
| md | - AD7746 calibration mode specifier. |
| int32_t ad7746_get_cap_data | ( | struct ad7746_dev * | dev, |
| uint32_t * | cap_data ) |
Waits until a conversion on the capacitive channel has been finished and returns the output data.
| dev | - Device descriptor pointer. |
| cap_data | - The content of the Capacitive Data register. |
| int32_t ad7746_get_vt_data | ( | struct ad7746_dev * | dev, |
| uint32_t * | vt_data ) |
Waits until a conversion on a voltage/temperature channel has been finished and returns the output data.
| dev | - Device descriptor pointer. |
| vt_data | - The content of the VT Data register. |
| int32_t ad7746_init | ( | struct ad7746_dev ** | device, |
| struct ad7746_init_param * | init_param ) |
Initialize the ad7606 device structure.
Performs memory allocation of the device structure.
| device | - Pointer to location of device structure to write. |
| init_param | - Pointer to the configuration of the driver. |
| int32_t ad7746_reg_read | ( | struct ad7746_dev * | dev, |
| uint8_t | reg, | ||
| uint8_t * | data, | ||
| uint16_t | bytes_number ) |
Reads data from AD7746 registers, starting from the selected register address pointer.
| dev | - Device descriptor pointer. |
| reg | - The selected register address pointer. |
| data | - Pointer to a buffer that will store the received data. |
| bytes_number | - Number of bytes to read (typically 1, other values when using the address auto-increment). |
| int32_t ad7746_reg_write | ( | struct ad7746_dev * | dev, |
| uint8_t | reg, | ||
| uint8_t * | data, | ||
| uint16_t | bytes_number ) |
Writes data into AD7746 registers, starting from the selected register address pointer.
| dev | - Device descriptor pointer. |
| reg | - The selected register address. |
| data | - Pointer to data to transmit. |
| bytes_number | - Number of bytes to send (typically 1, other values when using the address auto-increment). |
| int32_t ad7746_remove | ( | struct ad7746_dev * | dev | ) |
Deinitialize the ad7746 driver and free all allocated resources.
| dev | - Device descriptor pointer. |
| int32_t ad7746_reset | ( | struct ad7746_dev * | dev | ) |
Resets the AD7746.
| dev | - Device descriptor pointer. |
| int32_t ad7746_set_cap | ( | struct ad7746_dev * | dev, |
| struct ad7746_cap | cap ) |
Configure the capacitive setup register.
| dev | - Device descriptor pointer. |
| cap | - Capacitive setup settings. |
| int32_t ad7746_set_cap_dac_a | ( | struct ad7746_dev * | dev, |
| bool | enable, | ||
| uint8_t | code ) |
Set the DAC code and enable state for EXCA.
| dev | - Device descriptor pointer. |
| enable | - DAC_A Enable. |
| code | - DAC_A register code. |
| int32_t ad7746_set_cap_dac_b | ( | struct ad7746_dev * | dev, |
| bool | enable, | ||
| uint8_t | code ) |
Set the DAC code and enable state for EXCB.
| dev | - Device descriptor pointer. |
| enable | - DAC_B Enable. |
| code | - DAC_B register code. |
| int32_t ad7746_set_cap_gain | ( | struct ad7746_dev * | dev, |
| uint16_t | gain ) |
Set the capacitive gain.
| dev | - Device descriptor pointer. |
| gain | - Gain as raw code. |
| int32_t ad7746_set_cap_offset | ( | struct ad7746_dev * | dev, |
| uint16_t | offset ) |
Set the capacitive offset.
| dev | - Device descriptor pointer. |
| offset | - Offset as raw code. |
| int32_t ad7746_set_config | ( | struct ad7746_dev * | dev, |
| struct ad7746_config | config ) |
Set the configuration register.
| dev | - Device descriptor pointer. |
| config | - Configuration register settings. |
| int32_t ad7746_set_exc | ( | struct ad7746_dev * | dev, |
| struct ad7746_exc | exc ) |
Configure the excitation setup register.
| dev | - Device descriptor pointer. |
| exc | - Excitation setup settings. |
| int32_t ad7746_set_volt_gain | ( | struct ad7746_dev * | dev, |
| uint16_t | gain ) |
Set the voltage gain.
| dev | - Device descriptor pointer. |
| gain | - Gain as raw code. |
| int32_t ad7746_set_vt | ( | struct ad7746_dev * | dev, |
| struct ad7746_vt | vt ) |
Configure the voltage/temperature setup register.
| dev | - Device descriptor pointer. |
| vt | - Voltage/Temperature setup settings. |