BME280にアクセスするためのライブラリ
BME280.h@2:42725d11023b, 2018-07-10 (annotated)
- Committer:
- j_rocket_boy
- Date:
- Tue Jul 10 07:59:58 2018 +0000
- Revision:
- 2:42725d11023b
- Parent:
- 1:0dbf59c6e564
- Child:
- 3:df1107ddf502
?????????????????????????#define??????
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
j_rocket_boy | 0:95f2b96cdc7f | 1 | #ifndef BME280_LIB_H |
j_rocket_boy | 0:95f2b96cdc7f | 2 | #define BME280_LIB |
j_rocket_boy | 0:95f2b96cdc7f | 3 | |
j_rocket_boy | 0:95f2b96cdc7f | 4 | #include "mbed.h" |
j_rocket_boy | 0:95f2b96cdc7f | 5 | #include "i2c_general_io.h" |
j_rocket_boy | 0:95f2b96cdc7f | 6 | |
j_rocket_boy | 2:42725d11023b | 7 | #include "BME280_reg.h" //レジスタ関連の定義 |
j_rocket_boy | 2:42725d11023b | 8 | |
j_rocket_boy | 0:95f2b96cdc7f | 9 | class BME280{ |
j_rocket_boy | 0:95f2b96cdc7f | 10 | |
j_rocket_boy | 0:95f2b96cdc7f | 11 | public: |
j_rocket_boy | 0:95f2b96cdc7f | 12 | /** |
j_rocket_boy | 0:95f2b96cdc7f | 13 | @brief Create a new i2c sensor. |
j_rocket_boy | 0:95f2b96cdc7f | 14 | @param sda SDA pin name (Defined in PinName.h) |
j_rocket_boy | 0:95f2b96cdc7f | 15 | @param sck SCK pin name (Defined in PinName.h) |
j_rocket_boy | 0:95f2b96cdc7f | 16 | */ |
j_rocket_boy | 0:95f2b96cdc7f | 17 | BME280(PinName sda, PinName scl); |
j_rocket_boy | 0:95f2b96cdc7f | 18 | /** |
j_rocket_boy | 0:95f2b96cdc7f | 19 | @brief Create a new i2c sensor. |
j_rocket_boy | 0:95f2b96cdc7f | 20 | @param &i2c_obj i2c name |
j_rocket_boy | 0:95f2b96cdc7f | 21 | */ |
j_rocket_boy | 0:95f2b96cdc7f | 22 | BME280(GEN_I2C &i2c_obj); |
j_rocket_boy | 0:95f2b96cdc7f | 23 | |
j_rocket_boy | 0:95f2b96cdc7f | 24 | /** |
j_rocket_boy | 0:95f2b96cdc7f | 25 | @brief Disable the i2c sensor. |
j_rocket_boy | 0:95f2b96cdc7f | 26 | @param No parameters. |
j_rocket_boy | 0:95f2b96cdc7f | 27 | */ |
j_rocket_boy | 0:95f2b96cdc7f | 28 | virtual ~BME280(); |
j_rocket_boy | 0:95f2b96cdc7f | 29 | |
j_rocket_boy | 2:42725d11023b | 30 | const char hum_reg_value = BMP280_HUM_OVER_SAMPL1; |
j_rocket_boy | 2:42725d11023b | 31 | const char meas_reg_value = BMP280_TEMP_OVER_SAMPL1 | BMP280_PRESS_OVER_SAMPL1 | BMP280_SLEEP_MODE; |
j_rocket_boy | 2:42725d11023b | 32 | const char config_reg_value = BMP280_IIR_OFF; |
j_rocket_boy | 0:95f2b96cdc7f | 33 | |
j_rocket_boy | 0:95f2b96cdc7f | 34 | float temp; |
j_rocket_boy | 0:95f2b96cdc7f | 35 | double press; |
j_rocket_boy | 0:95f2b96cdc7f | 36 | float hum; |
j_rocket_boy | 0:95f2b96cdc7f | 37 | |
j_rocket_boy | 0:95f2b96cdc7f | 38 | void read_sensor(void); |
j_rocket_boy | 0:95f2b96cdc7f | 39 | bool data_is_ready(void); |
j_rocket_boy | 0:95f2b96cdc7f | 40 | void set_sleep_mode(void); |
j_rocket_boy | 0:95f2b96cdc7f | 41 | void set_force_mode(void); |
j_rocket_boy | 0:95f2b96cdc7f | 42 | void set_normal_mode(void); |
j_rocket_boy | 0:95f2b96cdc7f | 43 | |
j_rocket_boy | 0:95f2b96cdc7f | 44 | private: |
j_rocket_boy | 0:95f2b96cdc7f | 45 | |
j_rocket_boy | 0:95f2b96cdc7f | 46 | GEN_I2C *i2c_p; |
j_rocket_boy | 0:95f2b96cdc7f | 47 | GEN_I2C &sensor; |
j_rocket_boy | 0:95f2b96cdc7f | 48 | |
j_rocket_boy | 1:0dbf59c6e564 | 49 | long signed int t_fine; |
j_rocket_boy | 1:0dbf59c6e564 | 50 | long signed int BME280_compensate_T_int32(long signed int adc_T); |
j_rocket_boy | 1:0dbf59c6e564 | 51 | long unsigned int BME280_compensate_P_int64(long signed int adc_P); |
j_rocket_boy | 1:0dbf59c6e564 | 52 | long unsigned int BME280_compensate_H_int32(long signed int adc_H); |
j_rocket_boy | 0:95f2b96cdc7f | 53 | |
j_rocket_boy | 0:95f2b96cdc7f | 54 | void init(void); |
j_rocket_boy | 0:95f2b96cdc7f | 55 | |
j_rocket_boy | 0:95f2b96cdc7f | 56 | //データシートより,補正定数 |
j_rocket_boy | 0:95f2b96cdc7f | 57 | unsigned short dig_T1; |
j_rocket_boy | 0:95f2b96cdc7f | 58 | signed short dig_T2; |
j_rocket_boy | 0:95f2b96cdc7f | 59 | signed short dig_T3; |
j_rocket_boy | 0:95f2b96cdc7f | 60 | |
j_rocket_boy | 0:95f2b96cdc7f | 61 | unsigned short dig_P1; |
j_rocket_boy | 0:95f2b96cdc7f | 62 | signed short dig_P2; |
j_rocket_boy | 0:95f2b96cdc7f | 63 | signed short dig_P3; |
j_rocket_boy | 0:95f2b96cdc7f | 64 | signed short dig_P4; |
j_rocket_boy | 0:95f2b96cdc7f | 65 | signed short dig_P5; |
j_rocket_boy | 0:95f2b96cdc7f | 66 | signed short dig_P6; |
j_rocket_boy | 0:95f2b96cdc7f | 67 | signed short dig_P7; |
j_rocket_boy | 0:95f2b96cdc7f | 68 | signed short dig_P8; |
j_rocket_boy | 0:95f2b96cdc7f | 69 | signed short dig_P9; |
j_rocket_boy | 0:95f2b96cdc7f | 70 | |
j_rocket_boy | 0:95f2b96cdc7f | 71 | unsigned char dig_H1; |
j_rocket_boy | 0:95f2b96cdc7f | 72 | signed short dig_H2; |
j_rocket_boy | 0:95f2b96cdc7f | 73 | unsigned char dig_H3; |
j_rocket_boy | 0:95f2b96cdc7f | 74 | signed short dig_H4; |
j_rocket_boy | 0:95f2b96cdc7f | 75 | signed short dig_H5; |
j_rocket_boy | 0:95f2b96cdc7f | 76 | signed char dig_H6; |
j_rocket_boy | 0:95f2b96cdc7f | 77 | |
j_rocket_boy | 0:95f2b96cdc7f | 78 | }; |
j_rocket_boy | 0:95f2b96cdc7f | 79 | |
j_rocket_boy | 0:95f2b96cdc7f | 80 | #endif |