247 *major = (version >> 8) & 0xFF;
248 *minor = (version >> 0) & 0xFF;
driver scd30 basic header file
uint8_t scd30_init(scd30_handle_t *handle)
initialize the chip
uint8_t scd30_deinit(scd30_handle_t *handle)
close the chip
struct scd30_data_s scd30_data_t
scd30 data structure definition
uint8_t scd30_stop_measurement(scd30_handle_t *handle)
stop the measurement
uint8_t scd30_soft_reset(scd30_handle_t *handle)
soft reset
uint8_t scd30_read(scd30_handle_t *handle, scd30_data_t *data)
read the result
scd30_interface_t
scd30 interface enumeration definition
uint8_t scd30_get_firmware_version(scd30_handle_t *handle, uint16_t *version)
get firmware version
uint8_t scd30_get_automatic_self_calibration(scd30_handle_t *handle, scd30_bool_t *enable)
get automatic self calibration
uint8_t scd30_set_interface(scd30_handle_t *handle, scd30_interface_t interface)
set the chip interface
uint8_t scd30_set_automatic_self_calibration(scd30_handle_t *handle, scd30_bool_t enable)
set automatic self calibration
uint8_t scd30_start_measurement(scd30_handle_t *handle)
start the measurement
struct scd30_handle_s scd30_handle_t
scd30 handle structure definition
uint8_t scd30_set_measurement_interval(scd30_handle_t *handle, uint16_t second)
set the measurement interval
uint8_t scd30_get_measurement_interval(scd30_handle_t *handle, uint16_t *second)
get the measurement interval
uint8_t scd30_start_measurement_with_pressure_compensation(scd30_handle_t *handle, uint16_t mbar)
start the measurement with pressure compensation
scd30_bool_t
scd30 bool enumeration definition
uint8_t scd30_basic_init(scd30_interface_t interface, uint16_t mbar)
basic example init
uint8_t scd30_basic_get_version(uint8_t *major, uint8_t *minor)
basic example get the version
#define SCD30_BASIC_DEFAULT_MEASUREMENT_INTERVAL
scd30 basic example default definition
#define SCD30_BASIC_DEFAULT_AUTO_SELF_CALIBRATION
uint8_t scd30_basic_read(scd30_data_t *data)
basic example read
uint8_t scd30_basic_deinit(void)
basic example deinit
uint8_t scd30_basic_reset(void)
basic example reset
uint8_t scd30_interface_uart_init(void)
interface uart init
uint8_t scd30_interface_iic_write_cmd(uint8_t addr, uint8_t *buf, uint16_t len)
interface iic bus write
uint8_t scd30_interface_uart_write(uint8_t *buf, uint16_t len)
interface uart write
uint8_t scd30_interface_iic_read_cmd(uint8_t addr, uint8_t *buf, uint16_t len)
interface iic bus read
void scd30_interface_debug_print(const char *const fmt,...)
interface print format data
uint16_t scd30_interface_uart_read(uint8_t *buf, uint16_t len)
interface uart read
uint8_t scd30_interface_iic_init(void)
interface iic bus init
void scd30_interface_delay_ms(uint32_t ms)
interface delay ms
uint8_t scd30_interface_uart_flush(void)
interface uart flush
uint8_t scd30_interface_iic_deinit(void)
interface iic bus deinit
uint8_t scd30_interface_uart_deinit(void)
interface uart deinit
#define DRIVER_SCD30_LINK_UART_DEINIT(HANDLE, FUC)
link uart_deinit function
#define DRIVER_SCD30_LINK_DEBUG_PRINT(HANDLE, FUC)
link debug_print function
#define DRIVER_SCD30_LINK_DELAY_MS(HANDLE, FUC)
link delay_ms function
#define DRIVER_SCD30_LINK_IIC_READ_COMMAND(HANDLE, FUC)
link iic_read_cmd function
#define DRIVER_SCD30_LINK_IIC_DEINIT(HANDLE, FUC)
link iic_deinit function
#define DRIVER_SCD30_LINK_UART_WRITE(HANDLE, FUC)
link uart_write function
#define DRIVER_SCD30_LINK_IIC_WRITE_COMMAND(HANDLE, FUC)
link iic_write_cmd function
#define DRIVER_SCD30_LINK_UART_INIT(HANDLE, FUC)
link uart_init function
#define DRIVER_SCD30_LINK_INIT(HANDLE, STRUCTURE)
initialize scd30_handle_t structure
#define DRIVER_SCD30_LINK_UART_READ(HANDLE, FUC)
link uart_read function
#define DRIVER_SCD30_LINK_IIC_INIT(HANDLE, FUC)
link iic_init function
#define DRIVER_SCD30_LINK_UART_FLUSH(HANDLE, FUC)
link uart_flush function