A collection of Analog Devices drivers for the mbed platform
For additional information check out the mbed page of the Analog Devices wiki: https://wiki.analog.com/resources/tools-software/mbed-drivers-all
Diff: libraries/cn0216/CN0216.h
- Revision:
- 17:b8356808e8ad
- Parent:
- 13:66c8e4ce4ff1
- Child:
- 18:7d35420ff4aa
diff -r b8a49ec95bad -r b8356808e8ad libraries/cn0216/CN0216.h
--- a/libraries/cn0216/CN0216.h Fri Apr 29 17:16:55 2016 +0300
+++ b/libraries/cn0216/CN0216.h Fri Apr 29 17:34:07 2016 +0300
@@ -8,33 +8,32 @@
class CN0216
{
public:
- typedef enum
- {
- ZERO_SCALE_CALIBRATION,
- FULL_SCALE_CALIBRATION,
- COMPUTE_GRAM_PER_BIT
- } CalibrationStep_t;
+ typedef enum {
+ ZERO_SCALE_CALIBRATION, ///< Calibration of the zero scale value
+ FULL_SCALE_CALIBRATION, ///< Calibration of the full scale value
+ COMPUTE_UNITS_PER_BIT ///< Units per LSB computation
+ } CalibrationStep_t;
- CN0216(PinName CSAD7791 = D8, PinName MOSI = SPI_MOSI, PinName MISO = SPI_MISO, PinName SCK = SPI_SCK);
- void init(float cal_weight = _DEFAULT_CAL_WEIGHT, uint8_t mode_val = _DEFAULT_MODE_VAL, uint8_t filter_val = _DEFAULT_FILTER_VAL);
- void calibrate(CalibrationStep_t cal);
- float compute_weight(uint32_t data);
- uint32_t read_u32();
- float read_weight() ;
+ CN0216(PinName CSAD7791 = D8, PinName MOSI = SPI_MOSI, PinName MISO = SPI_MISO, PinName SCK = SPI_SCK);
+ void init(float cal_weight = _DEFAULT_CAL_WEIGHT, uint8_t mode_val = _DEFAULT_MODE_VAL, uint8_t filter_val = _DEFAULT_FILTER_VAL);
+ void calibrate(CalibrationStep_t cal);
+ float compute_weight(uint32_t data);
+ uint32_t read_u32();
+ float read_weight();
private:
- const static int _DEFAULT_MODE_VAL = AD7791::MD1 | AD7791::MD0; // POWERDOWN MODE
- const static int _DEFAULT_FILTER_VAL = AD7791::FS0 | AD7791::FS1 | AD7791::FS2;
- const static int _NUMBER_OF_SAMPLES = 50;
- const static int _DEFAULT_CAL_WEIGHT = 1000.0;
+ const static int _NUMBER_OF_SAMPLES = 20; ///< Number of samples used in calibration
+ const static int _DEFAULT_MODE_VAL = AD7791::MD1 | AD7791::MD0; // POWERDOWN MODE
+ const static int _DEFAULT_FILTER_VAL = AD7791::FS0 | AD7791::FS1 | AD7791::FS2;
+ const static int _DEFAULT_CAL_WEIGHT = 1000.0;
- AD7791 ad7791;
- float _cal_weight;
- uint32_t _zero_scale_value;
- uint32_t _full_scale_value;
- float _grams_per_bit;
-
+ AD7791 ad7791;
+ float _cal_weight;
+ uint32_t _zero_scale_value;
+ uint32_t _full_scale_value;
+ float _weight_units_per_bit;
+
};
#endif
CN0357 - Toxic gas measurement
CN0216 - Weight Scale