Subversion Repositories ChibiGauge

Rev

Rev 5 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 5 Rev 6
Line 13... Line 13...
13
// just contact techsupport@e-radionica.com
13
// just contact techsupport@e-radionica.com
14
//==============================================================================
14
//==============================================================================
15
 
15
 
16
#ifndef SHT21_H
16
#ifndef SHT21_H
17
#define SHT21_H
17
#define SHT21_H
-
 
18
#include "ch.h"
-
 
19
#include "hal.h"
18
 
20
 
19
//---------- Defines -----------------------------------------------------------
21
//---------- Defines -----------------------------------------------------------
20
#define I2C_ADD 0x40    // I2C device address
22
#define I2C_ADD 0x40    // I2C device address
21
 
23
 
22
const uint16_t POLYNOMIAL = 0x131;  // P(x)=x^8+x^5+x^4+1 = 100110001
24
const uint16_t POLYNOMIAL = 0x131;  // P(x)=x^8+x^5+x^4+1 = 100110001
Line 69... Line 71...
69
                //         checksum     expected checksum
71
                //         checksum     expected checksum
70
                // return:              1                          = checksum does not match
72
                // return:              1                          = checksum does not match
71
                //                      0              = checksum matches
73
                //                      0              = checksum matches
72
 
74
 
73
 
75
 
-
 
76
 
-
 
77
                const I2CDriver * m_driver;
-
 
78
 
74
        public:
79
        public:
75
                // I2C config for this chip
80
                SHT21(I2CDriver * driver) { m_driver = driver; };
76
                static const I2CConfig i2ccfg = { OPMODE_I2C, 400000, FAST_DUTY_CYCLE_2, };
-
 
77
 
81
 
-
 
82
                // I2C config for this chip
-
 
83
                static I2CConfig  constexpr i2ccfg = { OPMODE_I2C, 400000, FAST_DUTY_CYCLE_2, };
78
 
84
 
79
 
85
 
80
                //==============================================================================
86
                //==============================================================================
81
                float getHumidity(void);
87
                float getHumidity(void);
82
                //==============================================================================
88
                //==============================================================================
Line 91... Line 97...
91
                void reset();
97
                void reset();
92
                //==============================================================================
98
                //==============================================================================
93
                // performs a soft reset, delays 15ms
99
                // performs a soft reset, delays 15ms
94
 
100
 
95
                //==============================================================================
101
                //==============================================================================
96
                uint8_t getSerialNumber(uint8_t return_sn);
102
                msg_t  getSerialNumber(uint8_t  * serialNumber );
97
                //==============================================================================
103
                //==============================================================================
-
 
104
                // requires pointer to 8 byte buffer to return serial number
98
                // returns electronical identification code depending of selected memory
105
                // returns electronical identification code depending of selected memory
99
                // location
106
                // location
100
 
107
 
101
};
108
};
102
 
109