no-OS
Loading...
Searching...
No Matches
adt75.h File Reference

Header file of ADT75 Driver. More...

#include <stdint.h>
#include "no_os_i2c.h"
Include dependency graph for adt75.h:

Classes

struct  adt75_init_param
 Initialization parameter for the device descriptor. More...
 
struct  adt75_desc
 ADT75 device descriptor. More...
 

Macros

#define ADT75_ADDR(x)
 
#define ADT75_CONV_DELAY_MS   40
 
#define ADT75_FRAME_SIZE   3
 
#define ADT75_TEMP_VALUE_REG   0x0
 
#define ADT75_CONF_REG   0x1
 
#define ADT75_HYST_REG   0x2
 
#define ADT75_OS_REG   0x3
 
#define ADT75_ONE_SHOT_REG   0x4
 
#define ADT75_DATA_REG_MASK   NO_OS_GENMASK(2, 0)
 
#define ADT75_CONFIG_REG_MASK   NO_OS_GENMASK(7, 0)
 
#define ADT75_TEMP_MASK   NO_OS_GENMASK(15, 4)
 
#define ADT75_SIGN_BIT   11
 
#define ADT75_SHUTDOWN_MASK   NO_OS_BIT(0)
 
#define ADT75_COMP_INT_MASK   NO_OS_BIT(1)
 
#define ADT75_ALERT_POL_MASK   NO_OS_BIT(2)
 
#define ADT75_FAULT_QUEUE_MASK   NO_OS_GENMASK(4, 3)
 
#define ADT75_ONESHOT_MASK   NO_OS_BIT(5)
 
#define ADT75_HYST_MASK   NO_OS_GENMASK(15, 4)
 
#define ADT75_OVER_TEMP_MASK   NO_OS_GENMASK(15, 4)
 
#define ADT75_TEMP_DIV   16
 

Functions

int adt75_get_single_temp (struct adt75_desc *, int32_t *)
 Read the current temperature sample (in milliCelsius)
 
int adt75_reg_read (struct adt75_desc *, uint32_t, uint16_t *)
 Read the raw value of a register.
 
int adt75_reg_write (struct adt75_desc *, uint32_t, uint16_t)
 Write a raw value to a register.
 
int adt75_init (struct adt75_desc **, struct adt75_init_param *)
 Initialize the device structure.
 
int adt75_remove (struct adt75_desc *)
 Free the device descriptor.
 

Detailed Description

Header file of ADT75 Driver.

Author
Ciprian Regus (cipri.nosp@m.an.r.nosp@m.egus@.nosp@m.anal.nosp@m.og.co.nosp@m.m)

Copyright 2023(c) Analog Devices, Inc.

SPDX-License-Identifier: BSD-3-Clause

Macro Definition Documentation

◆ ADT75_ADDR

#define ADT75_ADDR ( x)
Value:
(0x48 + (x))

x is set based on the value of A2, A1, A0 pins

◆ ADT75_ALERT_POL_MASK

#define ADT75_ALERT_POL_MASK   NO_OS_BIT(2)

◆ ADT75_COMP_INT_MASK

#define ADT75_COMP_INT_MASK   NO_OS_BIT(1)

◆ ADT75_CONF_REG

#define ADT75_CONF_REG   0x1

◆ ADT75_CONFIG_REG_MASK

#define ADT75_CONFIG_REG_MASK   NO_OS_GENMASK(7, 0)

◆ ADT75_CONV_DELAY_MS

#define ADT75_CONV_DELAY_MS   40

◆ ADT75_DATA_REG_MASK

#define ADT75_DATA_REG_MASK   NO_OS_GENMASK(2, 0)

◆ ADT75_FAULT_QUEUE_MASK

#define ADT75_FAULT_QUEUE_MASK   NO_OS_GENMASK(4, 3)

◆ ADT75_FRAME_SIZE

#define ADT75_FRAME_SIZE   3

◆ ADT75_HYST_MASK

#define ADT75_HYST_MASK   NO_OS_GENMASK(15, 4)

◆ ADT75_HYST_REG

#define ADT75_HYST_REG   0x2

◆ ADT75_ONE_SHOT_REG

#define ADT75_ONE_SHOT_REG   0x4

◆ ADT75_ONESHOT_MASK

#define ADT75_ONESHOT_MASK   NO_OS_BIT(5)

◆ ADT75_OS_REG

#define ADT75_OS_REG   0x3

◆ ADT75_OVER_TEMP_MASK

#define ADT75_OVER_TEMP_MASK   NO_OS_GENMASK(15, 4)

◆ ADT75_SHUTDOWN_MASK

#define ADT75_SHUTDOWN_MASK   NO_OS_BIT(0)

Configuration register fields

◆ ADT75_SIGN_BIT

#define ADT75_SIGN_BIT   11

◆ ADT75_TEMP_DIV

#define ADT75_TEMP_DIV   16

1 LSB = 0.0625 C

◆ ADT75_TEMP_MASK

#define ADT75_TEMP_MASK   NO_OS_GENMASK(15, 4)

◆ ADT75_TEMP_VALUE_REG

#define ADT75_TEMP_VALUE_REG   0x0

Function Documentation

◆ adt75_get_single_temp()

int adt75_get_single_temp ( struct adt75_desc * desc,
int32_t * val )

Read the current temperature sample (in milliCelsius)

Get a single temperature sample and convert it to milli C

Parameters
desc- The device structure.
val- The temperature value.
Returns
0 in case of success, -EINVAL otherwise

Wait for a new conversion to finish

◆ adt75_init()

int adt75_init ( struct adt75_desc ** desc,
struct adt75_init_param * init_param )

Initialize the device structure.

Initialize the device structure

Parameters
desc- The device structure to be initialized.
init_param- Initialization parameter for the device descriptor.
Returns
0 in case of success, negative error code otherwise.

◆ adt75_reg_read()

int adt75_reg_read ( struct adt75_desc * desc,
uint32_t addr,
uint16_t * val )

Read the raw value of a register.

Read a register value

Parameters
desc- The device structure.
addr- The register's address.
val- The value to be read.
Returns
0 in case of success, negative error code otherwise

◆ adt75_reg_write()

int adt75_reg_write ( struct adt75_desc * desc,
uint32_t addr,
uint16_t val )

Write a raw value to a register.

Write a register values

Parameters
desc- The device structure.
addr- The register's address.
val- The value to be written.
Returns
0 in case of success, -EINVAL otherwise

◆ adt75_remove()

int adt75_remove ( struct adt75_desc * desc)

Free the device descriptor.

Free the device descriptor

Parameters
desc- The device structure.
Returns
0 in case of success, -EINVAL otherwise.