BME280にアクセスするためのライブラリ
BME280_reg.h@0:95f2b96cdc7f, 2018-07-10 (annotated)
- Committer:
- j_rocket_boy
- Date:
- Tue Jul 10 07:38:08 2018 +0000
- Revision:
- 0:95f2b96cdc7f
- Child:
- 2:42725d11023b
???????; ????????; ??????????
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
j_rocket_boy | 0:95f2b96cdc7f | 1 | #ifndef BME280_REG_H |
j_rocket_boy | 0:95f2b96cdc7f | 2 | #define BME280_REG_H |
j_rocket_boy | 0:95f2b96cdc7f | 3 | |
j_rocket_boy | 0:95f2b96cdc7f | 4 | const char BME280_add = 0x76<<1; |
j_rocket_boy | 0:95f2b96cdc7f | 5 | /* |
j_rocket_boy | 0:95f2b96cdc7f | 6 | const char HUM_LSB = 0xFE; |
j_rocket_boy | 0:95f2b96cdc7f | 7 | const char HUM_MSB = 0xFD; |
j_rocket_boy | 0:95f2b96cdc7f | 8 | const char TEMP_XLSB = 0xFC; |
j_rocket_boy | 0:95f2b96cdc7f | 9 | const char TEMP_LSB = 0xFB; |
j_rocket_boy | 0:95f2b96cdc7f | 10 | const char TEMP_MSB = 0xFA; |
j_rocket_boy | 0:95f2b96cdc7f | 11 | const char PRESS_XLSB = 0xF9; |
j_rocket_boy | 0:95f2b96cdc7f | 12 | const char PRESS_LSB = 0xF8; |
j_rocket_boy | 0:95f2b96cdc7f | 13 | */ |
j_rocket_boy | 0:95f2b96cdc7f | 14 | const char PRESS_MSB = 0xF7; |
j_rocket_boy | 0:95f2b96cdc7f | 15 | const char CONFIG = 0xF5; |
j_rocket_boy | 0:95f2b96cdc7f | 16 | const char CTRL_MEAS = 0xF4; |
j_rocket_boy | 0:95f2b96cdc7f | 17 | const char STATUS = 0xF3; |
j_rocket_boy | 0:95f2b96cdc7f | 18 | const char CTRL_HUM = 0xF2; |
j_rocket_boy | 0:95f2b96cdc7f | 19 | const char RESET_REG = 0xE0; |
j_rocket_boy | 0:95f2b96cdc7f | 20 | const char ID = 0xD0; |
j_rocket_boy | 0:95f2b96cdc7f | 21 | |
j_rocket_boy | 0:95f2b96cdc7f | 22 | const char CALIB00 = 0x88; |
j_rocket_boy | 0:95f2b96cdc7f | 23 | const char CALIB25 = 0xA1; |
j_rocket_boy | 0:95f2b96cdc7f | 24 | const char CALIB26 = 0xE1; |
j_rocket_boy | 0:95f2b96cdc7f | 25 | |
j_rocket_boy | 0:95f2b96cdc7f | 26 | |
j_rocket_boy | 0:95f2b96cdc7f | 27 | //ID |
j_rocket_boy | 0:95f2b96cdc7f | 28 | //IDの規定値 |
j_rocket_boy | 0:95f2b96cdc7f | 29 | const char ID_VALUE = 0b01100000; |
j_rocket_boy | 0:95f2b96cdc7f | 30 | |
j_rocket_boy | 0:95f2b96cdc7f | 31 | //RESET |
j_rocket_boy | 0:95f2b96cdc7f | 32 | //リセットをかけるための値 |
j_rocket_boy | 0:95f2b96cdc7f | 33 | const char RESET_VALUE = 0xB6; |
j_rocket_boy | 0:95f2b96cdc7f | 34 | |
j_rocket_boy | 0:95f2b96cdc7f | 35 | //CTRL_HUM |
j_rocket_boy | 0:95f2b96cdc7f | 36 | //湿度のオーバーサンプリング制御 |
j_rocket_boy | 0:95f2b96cdc7f | 37 | const char HUM_SKIP = 0x00; |
j_rocket_boy | 0:95f2b96cdc7f | 38 | const char HUM_OVER_SAMPL1 = 0x01; |
j_rocket_boy | 0:95f2b96cdc7f | 39 | const char HUM_OVER_SAMPL2 = 0x02; |
j_rocket_boy | 0:95f2b96cdc7f | 40 | const char HUM_OVER_SAMPL4 = 0x03; |
j_rocket_boy | 0:95f2b96cdc7f | 41 | const char HUM_OVER_SAMPL8 = 0x04; |
j_rocket_boy | 0:95f2b96cdc7f | 42 | const char HUM_OVER_SAMPL16 = 0x05; |
j_rocket_boy | 0:95f2b96cdc7f | 43 | |
j_rocket_boy | 0:95f2b96cdc7f | 44 | //STATUS |
j_rocket_boy | 0:95f2b96cdc7f | 45 | //測定中の判定式 |
j_rocket_boy | 0:95f2b96cdc7f | 46 | #define STATUS_IS_MEASURING (sensor.read_reg(BME280_add,STATUS) & 0x08) |
j_rocket_boy | 0:95f2b96cdc7f | 47 | //コピー中 |
j_rocket_boy | 0:95f2b96cdc7f | 48 | #define STATUS_IS_COPYING (sensor.read_reg(BME280_add,STATUS) & 0x01) |
j_rocket_boy | 0:95f2b96cdc7f | 49 | //なにも起きていないときの判定式(測定待ちなどに使う予定) |
j_rocket_boy | 0:95f2b96cdc7f | 50 | #define STATUS_IS_NOTHING (sensor.read_reg(BME280_add,STATUS) == 0x00) |
j_rocket_boy | 0:95f2b96cdc7f | 51 | |
j_rocket_boy | 0:95f2b96cdc7f | 52 | //CTRL_MEAS |
j_rocket_boy | 0:95f2b96cdc7f | 53 | //温度のオーバーサンプリング制御 |
j_rocket_boy | 0:95f2b96cdc7f | 54 | const char TEMP_SKIP = 0x00; |
j_rocket_boy | 0:95f2b96cdc7f | 55 | const char TEMP_OVER_SAMPL1 = (0x01<<5); |
j_rocket_boy | 0:95f2b96cdc7f | 56 | const char TEMP_OVER_SAMPL2 = (0x02<<5); |
j_rocket_boy | 0:95f2b96cdc7f | 57 | const char TEMP_OVER_SAMPL4 = (0x03<<5); |
j_rocket_boy | 0:95f2b96cdc7f | 58 | const char TEMP_OVER_SAMPL8 = (0x04<<5); |
j_rocket_boy | 0:95f2b96cdc7f | 59 | const char TEMP_OVER_SAMPL16 = (0x05<<5); |
j_rocket_boy | 0:95f2b96cdc7f | 60 | |
j_rocket_boy | 0:95f2b96cdc7f | 61 | //気圧のオーバーサンプリング制御 |
j_rocket_boy | 0:95f2b96cdc7f | 62 | const char PRESS_SKIP = 0x00; |
j_rocket_boy | 0:95f2b96cdc7f | 63 | const char PRESS_OVER_SAMPL1 = (0x01<<2); |
j_rocket_boy | 0:95f2b96cdc7f | 64 | const char PRESS_OVER_SAMPL2 = (0x02<<2); |
j_rocket_boy | 0:95f2b96cdc7f | 65 | const char PRESS_OVER_SAMPL4 = (0x03<<2); |
j_rocket_boy | 0:95f2b96cdc7f | 66 | const char PRESS_OVER_SAMPL8 = (0x04<<2); |
j_rocket_boy | 0:95f2b96cdc7f | 67 | const char PRESS_OVER_SAMPL16 = (0x05<<2); |
j_rocket_boy | 0:95f2b96cdc7f | 68 | |
j_rocket_boy | 0:95f2b96cdc7f | 69 | //モード選択 |
j_rocket_boy | 0:95f2b96cdc7f | 70 | const char SLEEP_MODE = 0x00; |
j_rocket_boy | 0:95f2b96cdc7f | 71 | const char FORCE_MODE = 0x02; |
j_rocket_boy | 0:95f2b96cdc7f | 72 | const char NORMAL_MODE = 0x03; |
j_rocket_boy | 0:95f2b96cdc7f | 73 | |
j_rocket_boy | 0:95f2b96cdc7f | 74 | |
j_rocket_boy | 0:95f2b96cdc7f | 75 | |
j_rocket_boy | 0:95f2b96cdc7f | 76 | |
j_rocket_boy | 0:95f2b96cdc7f | 77 | //CONFIG |
j_rocket_boy | 0:95f2b96cdc7f | 78 | //ノーマルモードにおける休止状態の継続時間設定(5.3.4項を参照) |
j_rocket_boy | 0:95f2b96cdc7f | 79 | const char NORMAL_STANBY_0_5 = 0x00; |
j_rocket_boy | 0:95f2b96cdc7f | 80 | const char NORMAL_STANBY_62_5 = (0x01<<5); |
j_rocket_boy | 0:95f2b96cdc7f | 81 | const char NORMAL_STANBY_125 = (0x02<<5); |
j_rocket_boy | 0:95f2b96cdc7f | 82 | const char NORMAL_STANBY_250 = (0x03<<5); |
j_rocket_boy | 0:95f2b96cdc7f | 83 | const char NORMAL_STANBY_500 = (0x04<<5); |
j_rocket_boy | 0:95f2b96cdc7f | 84 | const char NORMAL_STANBY_1000 = (0x05<<5); |
j_rocket_boy | 0:95f2b96cdc7f | 85 | const char NORMAL_STANBY_10 = (0x06<<5); |
j_rocket_boy | 0:95f2b96cdc7f | 86 | const char NORMAL_STANBY_20 = (0x07<<5); |
j_rocket_boy | 0:95f2b96cdc7f | 87 | |
j_rocket_boy | 0:95f2b96cdc7f | 88 | //IIRフィルタの時定数設定 |
j_rocket_boy | 0:95f2b96cdc7f | 89 | const char IIR_OFF = 0x00; |
j_rocket_boy | 0:95f2b96cdc7f | 90 | const char IIR_2 = (0x01<<2); |
j_rocket_boy | 0:95f2b96cdc7f | 91 | const char IIR_4 = (0x02<<2); |
j_rocket_boy | 0:95f2b96cdc7f | 92 | const char IIR_8 = (0x03<<2); |
j_rocket_boy | 0:95f2b96cdc7f | 93 | const char IIR_16 = (0x04<<2); |
j_rocket_boy | 0:95f2b96cdc7f | 94 | |
j_rocket_boy | 0:95f2b96cdc7f | 95 | //SPI線方式選択(4線OR3線) 使わない |
j_rocket_boy | 0:95f2b96cdc7f | 96 | /* |
j_rocket_boy | 0:95f2b96cdc7f | 97 | const char SPI4 = 0x00; |
j_rocket_boy | 0:95f2b96cdc7f | 98 | const char SPI3 = 0x01; |
j_rocket_boy | 0:95f2b96cdc7f | 99 | */ |
j_rocket_boy | 0:95f2b96cdc7f | 100 | |
j_rocket_boy | 0:95f2b96cdc7f | 101 | #endif |