Driver for Sensirion SCD30, CO2 sensor module using I2C. The device also senses Temperature and Humidity.

Dependents:   scd30_HelloWorld scd30_HelloWorld

Embed: (wiki syntax)

« Back to documentation index

scd30 Class Reference

scd30 Class Reference

Create SCD30 controller class. More...

#include <scd30.h>

Data Structures

struct  scdSTRuct
 Structure to access SCD30's raw and finished data. More...

Public Member Functions

 scd30 (PinName sda, PinName scl, int i2cFrequency)
 Create a SCD30 object using the specified I2C object.
 ~scd30 ()
 Destructor.
uint8_t startMeasurement (uint16_t baro)
 Start Auto-Measurement.
uint8_t stopMeasurement ()
 Stop Auto-Measurement.
uint8_t setMeasInterval (uint16_t mi)
 Set Measurement Interval.
uint8_t getReadyStatus ()
 Get Ready Status register.
uint8_t readMeasurement ()
 Get all environmental parameters (CO2, Temp and Hum)
uint8_t setTemperatureOffs (uint16_t temp)
 Set Temperature offset.
uint8_t setAltitudeComp (uint16_t alt)
 Set Altitude Compensation.
uint8_t softReset ()
 Perform a soft reset.
uint8_t calcCrc2b (uint16_t seed)
 Calculate the SCD30 CRC value.
uint8_t checkCrc2b (uint16_t seed, uint8_t crcIn)
 Compare received CRC value with calculated CRC value.
uint8_t startOneMeasurement (uint16_t baro)
 Start a Single-Measurement.
uint8_t getArticleCode ()
 Get Article Code.
uint8_t getSerialNumber ()
 Get Serial Number.

Detailed Description

Create SCD30 controller class.

Parameters:
scd30class

Definition at line 31 of file scd30.h.


Constructor & Destructor Documentation

scd30 ( PinName  sda,
PinName  scl,
int  i2cFrequency 
)

Create a SCD30 object using the specified I2C object.

Parameters:
sda- mbed I2C interface pin
scl- mbed I2C interface pin
I2CFrequency (in Hz)
Returns:
none

Definition at line 7 of file scd30.cpp.

~scd30 (  )

Destructor.

Parameters:
--none--
Returns:
none

Definition at line 14 of file scd30.cpp.


Member Function Documentation

uint8_t calcCrc2b ( uint16_t  seed )

Calculate the SCD30 CRC value.

Parameters:
16bit value to perform a CRC check on
Returns:
8 bit CRC value

Definition at line 179 of file scd30.cpp.

uint8_t checkCrc2b ( uint16_t  seed,
uint8_t  crcIn 
)

Compare received CRC value with calculated CRC value.

Parameters:
16bit value to perform a CRC check on
8bit value to compare CRC values
Returns:
enum SCDerror

Definition at line 206 of file scd30.cpp.

uint8_t getArticleCode (  )

Get Article Code.

Parameters:
--none--
Returns:
enum SCDerror

Definition at line 232 of file scd30.cpp.

uint8_t getReadyStatus (  )

Get Ready Status register.

Parameters:
--none--
See also:
Ready Status result in scdSTR structure
Returns:
enum SCDerror

Definition at line 63 of file scd30.cpp.

uint8_t getSerialNumber (  )

Get Serial Number.

Parameters:
--none--
See also:
ASCII Serial Number in scdSTR structure
Returns:
enum SCDerror

Definition at line 251 of file scd30.cpp.

uint8_t readMeasurement (  )

Get all environmental parameters (CO2, Temp and Hum)

Parameters:
--none-
See also:
Results in scdSTR structure
Returns:
enum SCDerror

Definition at line 83 of file scd30.cpp.

uint8_t setAltitudeComp ( uint16_t  alt )

Set Altitude Compensation.

Parameters:
Altitude(in meters)
Returns:
enum SCDerror

Definition at line 152 of file scd30.cpp.

uint8_t setMeasInterval ( uint16_t  mi )

Set Measurement Interval.

Parameters:
Timebetween measurements (in seconds)
Returns:
enum SCDerror

Definition at line 48 of file scd30.cpp.

uint8_t setTemperatureOffs ( uint16_t  temp )

Set Temperature offset.

Parameters:
Temperatureoffset (value in 0.01 degrees C)
Returns:
enum SCDerror

Definition at line 137 of file scd30.cpp.

uint8_t softReset (  )

Perform a soft reset.

Parameters:
--none--
Returns:
enum SCDerror

Definition at line 167 of file scd30.cpp.

uint8_t startMeasurement ( uint16_t  baro )

Start Auto-Measurement.

Parameters:
Barometerreading (in mB) or 0x0000
Returns:
enum SCDerror

Definition at line 21 of file scd30.cpp.

uint8_t startOneMeasurement ( uint16_t  baro )

Start a Single-Measurement.

Parameters:
Barometerreading (in mB) or 0x0000
Returns:
enum SCDerror

Definition at line 217 of file scd30.cpp.

uint8_t stopMeasurement (  )

Stop Auto-Measurement.

Parameters:
--none--
Returns:
enum SCDerror

Definition at line 36 of file scd30.cpp.