A simple example adopting SHT21 Arduino library to mbed.

Dependencies:   mbed

Committer:
odtulumbedder
Date:
Wed Sep 13 13:36:04 2017 +0000
Revision:
1:f4a1942b4486
file order fixed.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
odtulumbedder 1:f4a1942b4486 1 #ifndef SHT21_HPP_INCLUDED
odtulumbedder 1:f4a1942b4486 2 #define SHT21_HPP_INCLUDED
odtulumbedder 1:f4a1942b4486 3
odtulumbedder 1:f4a1942b4486 4 #include "mbed.h"
odtulumbedder 1:f4a1942b4486 5
odtulumbedder 1:f4a1942b4486 6 class SHT21 {
odtulumbedder 1:f4a1942b4486 7 public:
odtulumbedder 1:f4a1942b4486 8 SHT21(PinName sda, PinName scl, char addr = (0x40 << 1));
odtulumbedder 1:f4a1942b4486 9 SHT21(I2C &i2c, char addr = (0x40 << 1));
odtulumbedder 1:f4a1942b4486 10
odtulumbedder 1:f4a1942b4486 11 float temperature();
odtulumbedder 1:f4a1942b4486 12 float humidity();
odtulumbedder 1:f4a1942b4486 13
odtulumbedder 1:f4a1942b4486 14 void reset();
odtulumbedder 1:f4a1942b4486 15 void serialNumber(uint8_t *serialNumber);
odtulumbedder 1:f4a1942b4486 16
odtulumbedder 1:f4a1942b4486 17 ~SHT21();
odtulumbedder 1:f4a1942b4486 18 private:
odtulumbedder 1:f4a1942b4486 19 enum commands {
odtulumbedder 1:f4a1942b4486 20 TRIGGER_T_MEASUREMENT_HM = 0xE3,
odtulumbedder 1:f4a1942b4486 21 TRIGGER_RH_MEASUREMENT_HM = 0xE5,
odtulumbedder 1:f4a1942b4486 22 TRIGGER_T_MEASUREMENT_NHM = 0xF3,
odtulumbedder 1:f4a1942b4486 23 TRIGGER_RH_MEASUREMENT_NHM = 0xF5,
odtulumbedder 1:f4a1942b4486 24 USER_REGISTER_W = 0xE6,
odtulumbedder 1:f4a1942b4486 25 USER_REGISTER_R = 0xE7,
odtulumbedder 1:f4a1942b4486 26 SOFT_RESET = 0xFE
odtulumbedder 1:f4a1942b4486 27 };
odtulumbedder 1:f4a1942b4486 28
odtulumbedder 1:f4a1942b4486 29 static const uint16_t POLYNOMIAL;
odtulumbedder 1:f4a1942b4486 30
odtulumbedder 1:f4a1942b4486 31 char addr_;
odtulumbedder 1:f4a1942b4486 32 I2C *pi2c_;
odtulumbedder 1:f4a1942b4486 33 I2C &i2c_;
odtulumbedder 1:f4a1942b4486 34
odtulumbedder 1:f4a1942b4486 35 uint16_t readRaw(uint8_t cmd);
odtulumbedder 1:f4a1942b4486 36 static bool crcChecksum(const uint8_t *data, uint8_t sz, uint8_t checksum);
odtulumbedder 1:f4a1942b4486 37 };
odtulumbedder 1:f4a1942b4486 38
odtulumbedder 1:f4a1942b4486 39 #endif // SHT21_HPP_INCLUDED