irthermo2 2.0.0.0
irthermo2.h File Reference
#include "drv_digital_out.h"
#include "drv_digital_in.h"
#include "drv_i2c_master.h"

Go to the source code of this file.

Data Structures

struct  irthermo2_t
 Click ctx object definition. More...
 
struct  irthermo2_cfg_t
 Click configuration structure definition. More...
 

Macros

#define IRTHERMO2_SENSOR_VOLTAGE   0x00
 IrThermo 2 description register.
 
#define IRTHERMO2_LOCAL_TEMPERATURE   0x01
 
#define IRTHERMO2_CONFIGURATION   0x02
 
#define IRTHERMO2_OBJECT_TEMPERATURE   0x03
 
#define IRTHERMO2_STATUS   0x04
 
#define IRTHERMO2_STATUS_MASK_AND_ENABLE   0x05
 
#define IRTHERMO2_OBJECT_HIGH_LIMIT_TEMP   0x06
 
#define IRTHERMO2_OBJECT_LOW_LIMIT_TEMP   0x07
 
#define IRTHERMO2_LOCAL_HIGH_LIMIT_TEMP   0x08
 
#define IRTHERMO2_LOCAL_LOW_LIMIT_TEMP   0x09
 
#define IRTHERMO2_S0_COEFFICIENT   0x0A
 
#define IRTHERMO2_A0_COEFFICIENT   0x0B
 
#define IRTHERMO2_A1_COEFFICIENT   0x0C
 
#define IRTHERMO2_B0_COEFFICIENT   0x0D
 
#define IRTHERMO2_B1_COEFFICIENT   0x0E
 
#define IRTHERMO2_B2_COEFFICIENT   0x0F
 
#define IRTHERMO2_C_COEFFICIENT   0x10
 
#define IRTHERMO2_TC0_COEFFICIENT   0X11
 
#define IRTHERMO2_TC1_COEFFICIENT   0x12
 
#define IRTHERMO2_DEVICE_ID   0x1F
 
#define IRTHERMO2_MEMORY_ACCESS   0x2A
 
#define IRTHERMO2_RESULT_OK   1
 IrThermo 2 description setting.
 
#define IRTHERMO2_RESULT_ERROR   0
 
#define IRTHERMO2_CFG_MODEON   0x1000
 
#define IRTHERMO2_CFG_RESET   0x8000
 
#define IRTHERMO2_CFG_1SAMPLE   0x0000
 
#define IRTHERMO2_CFG_2SAMPLE   0x0200
 
#define IRTHERMO2_CFG_4SAMPLE   0x0400
 
#define IRTHERMO2_CFG_8SAMPLE   0x0600
 
#define IRTHERMO2_CFG_16SAMPLE   0x0800
 
#define IRTHERMO2_CFG_ALERTEN   0x0100
 
#define IRTHERMO2_CFG_ALERTF   0x0080
 
#define IRTHERMO2_CFG_TRANSC   0x0040
 
#define IRTHERMO2_STAT_ALERTEN   0x8000
 
#define IRTHERMO2_STAT_CRTEN   0x4000
 
#define IRTHERMO2_DEVICE_ID_VALUE   0x0078
 
#define IRTHERMO2_I2C_ADDRESS_0   0x40
 IrThermo 2 device address setting.
 
#define IRTHERMO2_I2C_ADDRESS_1   0x41
 
#define IRTHERMO2_I2C_ADDRESS_2   0x44
 
#define IRTHERMO2_I2C_ADDRESS_3   0x45
 
#define IRTHERMO2_MAP_MIKROBUS(cfg, mikrobus)
 MikroBUS pin mapping.
 

Enumerations

enum  irthermo2_return_value_t { IRTHERMO2_OK = 0 , IRTHERMO2_ERROR = -1 }
 IrThermo 2 Click return value data. More...
 

Functions

void irthermo2_cfg_setup (irthermo2_cfg_t *cfg)
 Config Object Initialization function.
 
err_t irthermo2_init (irthermo2_t *ctx, irthermo2_cfg_t *cfg)
 Initialization function.
 
void irthermo2_default_cfg (irthermo2_t *ctx)
 Click Default Configuration function.
 
void irthermo2_generic_write (irthermo2_t *ctx, uint8_t reg, uint8_t *data_in, uint8_t len)
 Generic write function.
 
void irthermo2_generic_read (irthermo2_t *ctx, uint8_t reg, uint8_t *data_out, uint8_t len)
 Generic read function.
 
void irthermo2_write_data (irthermo2_t *ctx, uint8_t address, uint16_t write_data)
 Generic write 16-bit data function.
 
uint16_t irthermo2_read_data (irthermo2_t *ctx, uint8_t address)
 Generic read 16-bit data from 8-bit address function.
 
err_t irthermo2_check_id (irthermo2_t *ctx)
 Check device ID function.
 
float irthermo2_get_object_temperature_c (irthermo2_t *ctx)
 Get object temperature in degrees Celsius function.
 
float irthermo2_get_object_temperature_f (irthermo2_t *ctx)
 Get object temperature in degrees Fahrenheit function.
 
float irthermo2_get_raw_temperature (irthermo2_t *ctx)
 Get raw temperature in degrees Celsius function.
 
uint8_t irhhermo2_get_alert (irthermo2_t *ctx)
 Get state of alert function.
 

Enumeration Type Documentation

◆ irthermo2_return_value_t

IrThermo 2 Click return value data.

Predefined enum values for driver return values.

Enumerator
IRTHERMO2_OK 
IRTHERMO2_ERROR