![]() |
no-OS
|
Header file of ADT7420 Driver. More...
Classes | |
| struct | adt7420_chip_info |
| struct | adt7420_dev |
| struct | adt7420_init_param |
| union | adt7420_init_param::interface_type |
Enumerations | |
| enum | dev_interface { SPI , I2C } |
| enum | adt7420_type { ID_ADT7410 , ID_ADT7420 , ID_ADT7422 , ID_ADT7310 , ID_ADT7311 , ID_ADT7312 , ID_ADT7320 } |
Functions | |
| int | adt7420_reg_read (struct adt7420_dev *dev, uint16_t register_address, uint16_t *data) |
| Reads the value of a register. | |
| int | adt7420_reg_update_bits (struct adt7420_dev *dev, uint16_t register_address, uint8_t mask, uint8_t value) |
| Sets the value of a register SPI/I2C. | |
| int | adt7420_spi_reg_write (struct adt7420_dev *dev, uint16_t register_address, uint32_t data) |
| Write a value of a register via SPI. | |
| int | adt7420_i2c_reg_write (struct adt7420_dev *dev, uint16_t register_address, uint32_t data) |
| Write a value of a register via I2C. | |
| int | adt7420_reg_write (struct adt7420_dev *dev, uint16_t register_address, uint32_t data) |
| Sets the value of a register SPI/I2C. | |
| int32_t | adt7420_init (struct adt7420_dev **device, struct adt7420_init_param init_param) |
| Initializes the communication peripheral and checks if the device is present. | |
| int32_t | adt7420_remove (struct adt7420_dev *dev) |
| Free the resources allocated by adt7420_init(). | |
| int | adt7420_set_operation_mode (struct adt7420_dev *dev, uint8_t mode) |
| Sets the operational mode for ADT7420/ADT7320. | |
| int | adt7420_set_resolution (struct adt7420_dev *dev, uint8_t resolution) |
| Sets the resolution for ADT7420/ADT7320. | |
| int32_t | adt7420_reset (struct adt7420_dev *dev) |
| Resets the SPI or I2C inteface for the ADT7420/ADT7320. | |
| float | adt7420_get_temperature (struct adt7420_dev *dev) |
| Reads the temperature data and converts it to Celsius degrees. | |
| int | adt7420_i2c_reg_read (struct adt7420_dev *dev, uint16_t register_address, uint16_t *data) |
| Reads the value of a register I2C interface device. | |
| int | adt7420_spi_reg_read (struct adt7420_dev *dev, uint16_t register_address, uint16_t *data) |
| Reads the value of a register SPI interface device. | |
| bool | adt7420_is_spi (struct adt7420_dev *dev) |
| Check if the interface of the selected device is SPI. | |
Variables | |
| const struct adt7420_chip_info | chip_info [] |
Header file of ADT7420 Driver.
Copyright 2012, 2019, 2021(c) Analog Devices, Inc.
SPDX-License-Identifier: BSD-3-Clause
| #define ADT7320_ADDR_MSK NO_OS_GENMASK(7,0) |
| #define ADT7320_L16 NO_OS_BIT(8) |
| #define ADT7320_READ_CMD 0b01000000 |
| #define ADT7320_REG_CONFIG 0x01 |
| #define ADT7320_REG_HIST 0x05 |
| #define ADT7320_REG_ID 0x03 |
| #define ADT7320_REG_STATUS 0x00 |
| #define ADT7320_REG_T_CRIT (ADT7320_L16 | 0x04) |
| #define ADT7320_REG_T_HIGH (ADT7320_L16 | 0x06) |
| #define ADT7320_REG_T_LOW (ADT7320_L16 | 0x07) |
| #define ADT7320_REG_TEMP (ADT7320_L16 | 0x02) |
| #define ADT7320_WRITE_MASK_CMD 0b00111000 |
| #define ADT7420_13BIT_DIV 16 |
| #define ADT7420_13BIT_NEG NO_OS_BIT(13) |
| #define ADT7420_13BIT_SIGN 0x1000 |
| #define ADT7420_16BIT_DIV 128 |
| #define ADT7420_16BIT_NEG NO_OS_BIT(16) |
| #define ADT7420_16BIT_SIGN 0x8000 |
| #define ADT7420_A0_PIN | ( | x | ) |
| #define ADT7420_A1_PIN | ( | x | ) |
| #define ADT7420_ADDRESS | ( | x, | |
| y ) |
| #define ADT7420_CONFIG_OP_MODE | ( | x | ) |
| #define ADT7420_CONFIG_RESOLUTION NO_OS_BIT(7) |
| #define ADT7420_OP_MODE_1_SPS 2 |
| #define ADT7420_OP_MODE_CONT_CONV 0 |
| #define ADT7420_OP_MODE_ONE_SHOT 1 |
| #define ADT7420_OP_MODE_SHUTDOWN 3 |
| #define ADT7420_REG_CONFIG 0x03 |
| #define ADT7420_REG_HIST 0x0A |
| #define ADT7420_REG_ID 0x0B |
| #define ADT7420_REG_RESET 0x2F |
| #define ADT7420_REG_STATUS 0x02 |
| #define ADT7420_REG_T_CRIT_LSB 0x09 |
| #define ADT7420_REG_T_CRIT_MSB (ADT7320_L16 |0x08) |
| #define ADT7420_REG_T_HIGH_LSB 0x05 |
| #define ADT7420_REG_T_HIGH_MSB (ADT7320_L16 |0x04 ) |
| #define ADT7420_REG_T_LOW_LSB 0x07 |
| #define ADT7420_REG_T_LOW_MSB (ADT7320_L16 |0x06) |
| #define ADT7420_REG_TEMP_LSB 0x01 |
| #define ADT7420_REG_TEMP_MSB (ADT7320_L16 |0x00) |
| #define ADT7420_RESET_DELAY 1 |
| #define ADT7420_STATUS_RDY NO_OS_BIT(7) |
| #define ADT7420_STATUS_T_CRIT NO_OS_BIT(6) |
| #define ADT7420_STATUS_T_HIGH NO_OS_BIT(5) |
| #define ADT7420_STATUS_T_LOW NO_OS_BIT(4) |
| #define ADT7xxx_ID 0xC |
| enum adt7420_type |
| enum dev_interface |
| float adt7420_get_temperature | ( | struct adt7420_dev * | dev | ) |
Reads the temperature data and converts it to Celsius degrees.
Reads the temperature data and converts it to Celsius degrees.
| dev | - The device structure. |
Negative temperature
Positive temperature
Negative temperature
Positive temperature
| int adt7420_i2c_reg_read | ( | struct adt7420_dev * | dev, |
| uint16_t | register_address, | ||
| uint16_t * | data ) |
Reads the value of a register I2C interface device.
Read the register value for I2C interface devices
| dev | - The device structure. |
| register_address | - Address of the register. |
| data | - Pointer to the register value |
| int adt7420_i2c_reg_write | ( | struct adt7420_dev * | dev, |
| uint16_t | register_address, | ||
| uint32_t | data ) |
Write a value of a register via I2C.
| dev | - The device structure. |
| register_address | - Address of the register. |
| data | - Pointer to the register value |
| int32_t adt7420_init | ( | struct adt7420_dev ** | device, |
| struct adt7420_init_param | init_param ) |
Initializes the communication peripheral and checks if the device is present.
Initializes the comm. peripheral and checks if the device is present.
| device | - The device structure. |
| init_param | - The structure that contains the device initial parameters. |
| bool adt7420_is_spi | ( | struct adt7420_dev * | dev | ) |
Check if the interface of the selected device is SPI.
Check if the interface of the selected device is SPI
| dev | - The device structure. |
| int adt7420_reg_read | ( | struct adt7420_dev * | dev, |
| uint16_t | register_address, | ||
| uint16_t * | data ) |
Reads the value of a register.
Reads the value of a register
| dev | - The device structure. |
| register_address | - Address of the register. |
| data | - Pointer to the register value |
| int adt7420_reg_update_bits | ( | struct adt7420_dev * | dev, |
| uint16_t | register_address, | ||
| uint8_t | mask, | ||
| uint8_t | value ) |
Sets the value of a register SPI/I2C.
| dev | - The device structure. |
| register_address | - Address of the register. |
| mask | - Bit Mask of the bit to be written |
| value | - Value of the bit |
| int adt7420_reg_write | ( | struct adt7420_dev * | dev, |
| uint16_t | register_address, | ||
| uint32_t | data ) |
Sets the value of a register SPI/I2C.
| dev | - The device structure. |
| register_address | - Address of the register. |
| data | - Data to be written in input register. |
| int32_t adt7420_remove | ( | struct adt7420_dev * | dev | ) |
Free the resources allocated by adt7420_init().
| dev | - The device structure. |
| int32_t adt7420_reset | ( | struct adt7420_dev * | dev | ) |
Resets the SPI or I2C inteface for the ADT7420/ADT7320.
Resets the SPI or I2C inteface for the ADT7420/ADT7320
| dev | - The device structure. |
| int adt7420_set_operation_mode | ( | struct adt7420_dev * | dev, |
| uint8_t | mode ) |
Sets the operational mode for ADT7420/ADT7320.
Sets the operational mode for ADT7420.
| dev | - The device structure. |
| mode | - Operation mode. Example: ADT7420_OP_MODE_CONT_CONV - continuous conversion; ADT7420_OP_MODE_ONE_SHOT - one shot; ADT7420_OP_MODE_1_SPS - 1 SPS mode; ADT7420_OP_MODE_SHUTDOWN - shutdown. |
| int adt7420_set_resolution | ( | struct adt7420_dev * | dev, |
| uint8_t | resolution ) |
Sets the resolution for ADT7420/ADT7320.
Sets the resolution for ADT7420.
| dev | - The device structure. |
| resolution | - Resolution. Example: 0 - 13-bit resolution; 1 - 16-bit resolution. |
| int adt7420_spi_reg_read | ( | struct adt7420_dev * | dev, |
| uint16_t | register_address, | ||
| uint16_t * | data ) |
Reads the value of a register SPI interface device.
Read the register value for SPI interface devices
| dev | - The device structure. |
| register_address | - Address of the register. |
| data | - Pointer to the register value |
| int adt7420_spi_reg_write | ( | struct adt7420_dev * | dev, |
| uint16_t | register_address, | ||
| uint32_t | data ) |
Write a value of a register via SPI.
| dev | - The device structure. |
| register_address | - Address of the register. |
| data | - Pointer to the register value |
|
extern |