no2 2.0.0.0
no2.h File Reference

This file contains API for NO 2 Click driver. More...

#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  no2_t
 Click ctx object definition. More...
 
struct  no2_cfg_t
 Click configuration structure definition. More...
 

Macros

#define NO2_MAP_MIKROBUS(cfg, mikrobus)
 
#define NO2_RETVAL   uint8_t
 
#define NO2_OK   0x00
 
#define NO2_INIT_ERROR   0xFF
 
#define NO2_STATUS_REG   0x00
 
#define NO2_LOCK_REG   0x01
 
#define NO2_TIACN_REG   0x10
 
#define NO2_REFCN_REG   0x11
 
#define NO2_MODECN_REG   0x12
 
#define NO2_WRITE_MODE   0x00
 
#define NO2_READ_ONLY_MODE   0x01
 
#define NO2_EXT_TIA_RES   0x00
 
#define NO2_2750_OHM_TIA_RES   0x04
 
#define NO2_3500_OHM_TIA_RES   0x08
 
#define NO2_7K_OHM_TIA_RES   0x0C
 
#define NO2_14K_OHM_TIA_RES   0x10
 
#define NO2_35K_OHM_TIA_RES   0x14
 
#define NO2_120K_OHM_TIA_RES   0x18
 
#define NO2_350K_OHM_TIA_RES   0x1C
 
#define NO2_10_OHM_LOAD_RES   0x00
 
#define NO2_33_OHM_LOAD_RES   0x01
 
#define NO2_50_OHM_LOAD_RES   0x02
 
#define NO2_100_OHM_LOAD_RES   0x03
 
#define NO2_VREF_INT   0x00
 
#define NO2_VREF_EXT   0x80
 
#define NO2_20_PERCENTS_INT_ZERO   0x00
 
#define NO2_50_PERCENTS_INT_ZERO   0x20
 
#define NO2_67_PERCENTS_INT_ZERO   0x40
 
#define NO2_INT_ZERO_BYPASSED   0x60
 
#define NO2_BIAS_POL_NEGATIVE   0x00
 
#define NO2_BIAS_POL_POSITIVE   0x10
 
#define NO2_0_PERCENTS_BIAS   0x00
 
#define NO2_1_PERCENT_BIAS   0x01
 
#define NO2_2_PERCENTS_BIAS   0x02
 
#define NO2_4_PERCENTS_BIAS   0x03
 
#define NO2_6_PERCENTS_BIAS   0x04
 
#define NO2_8_PERCENTS_BIAS   0x05
 
#define NO2_10_PERCENTS_BIAS   0x06
 
#define NO2_12_PERCENTS_BIAS   0x07
 
#define NO2_14_PERCENTS_BIAS   0x08
 
#define NO2_16_PERCENTS_BIAS   0x09
 
#define NO2_18_PERCENTS_BIAS   0x0A
 
#define NO2_20_PERCENTS_BIAS   0x0B
 
#define NO2_22_PERCENTS_BIAS   0x0C
 
#define NO2_24_PERCENTS_BIAS   0x0D
 
#define NO2_FET_DIS   0x00
 
#define NO2_FET_EN   0x80
 
#define NO2_DEEP_SLEEP_MODE   0x00
 
#define NO2_2_LEAD_MODE   0x01
 
#define NO2_STANDBY_MODE   0x02
 
#define NO2_3_LEAD_MODE   0x03
 
#define NO2_TEMP_MODE_TIA_OFF   0x06
 
#define NO2_TEMP_MODE_TIA_ON   0x07
 
#define NO2_DEVICE_EN   0x00
 
#define NO2_DEVICE_DIS   0x01
 
#define ADC_DEVICE_ADDR   0x4D
 

Functions

void no2_cfg_setup (no2_cfg_t *cfg)
 Config Object Initialization function.
 
NO2_RETVAL no2_init (no2_t *ctx, no2_cfg_t *cfg)
 Initialization function.
 
void no2_default_cfg (no2_t *ctx)
 Click Default Configuration function.
 
void no2_generic_write (no2_t *ctx, uint8_t reg, uint8_t *data_buf, uint8_t len)
 Generic write function.
 
void no2_generic_read (no2_t *ctx, uint8_t reg, uint8_t *data_buf, uint8_t len)
 Generic read function.
 
void no2_write_byte (no2_t *ctx, uint8_t reg, uint8_t dev_data)
 Function writes one byte to the register.
 
uint8_t no2_read_byte (no2_t *ctx, uint8_t reg)
 Function reads one byte from the register.
 
void no2_enable (no2_t *ctx, uint8_t state)
 Device Enable function.
 
uint16_t no2_read_adc (no2_t *ctx)
 Function for read ADC sensor data.
 
float no2_get_no_2_ppm (no2_t *ctx)
 Get NO2 Data function.
 
void no2_wait_ready (no2_t *ctx)
 Function waits until I2C is ready for the next command.
 

Detailed Description

This file contains API for NO 2 Click driver.