BME280にアクセスするためのライブラリ
BME280_reg.h
- Committer:
- j_rocket_boy
- Date:
- 2018-07-10
- Revision:
- 0:95f2b96cdc7f
- Child:
- 2:42725d11023b
File content as of revision 0:95f2b96cdc7f:
#ifndef BME280_REG_H #define BME280_REG_H const char BME280_add = 0x76<<1; /* const char HUM_LSB = 0xFE; const char HUM_MSB = 0xFD; const char TEMP_XLSB = 0xFC; const char TEMP_LSB = 0xFB; const char TEMP_MSB = 0xFA; const char PRESS_XLSB = 0xF9; const char PRESS_LSB = 0xF8; */ const char PRESS_MSB = 0xF7; const char CONFIG = 0xF5; const char CTRL_MEAS = 0xF4; const char STATUS = 0xF3; const char CTRL_HUM = 0xF2; const char RESET_REG = 0xE0; const char ID = 0xD0; const char CALIB00 = 0x88; const char CALIB25 = 0xA1; const char CALIB26 = 0xE1; //ID //IDの規定値 const char ID_VALUE = 0b01100000; //RESET //リセットをかけるための値 const char RESET_VALUE = 0xB6; //CTRL_HUM //湿度のオーバーサンプリング制御 const char HUM_SKIP = 0x00; const char HUM_OVER_SAMPL1 = 0x01; const char HUM_OVER_SAMPL2 = 0x02; const char HUM_OVER_SAMPL4 = 0x03; const char HUM_OVER_SAMPL8 = 0x04; const char HUM_OVER_SAMPL16 = 0x05; //STATUS //測定中の判定式 #define STATUS_IS_MEASURING (sensor.read_reg(BME280_add,STATUS) & 0x08) //コピー中 #define STATUS_IS_COPYING (sensor.read_reg(BME280_add,STATUS) & 0x01) //なにも起きていないときの判定式(測定待ちなどに使う予定) #define STATUS_IS_NOTHING (sensor.read_reg(BME280_add,STATUS) == 0x00) //CTRL_MEAS //温度のオーバーサンプリング制御 const char TEMP_SKIP = 0x00; const char TEMP_OVER_SAMPL1 = (0x01<<5); const char TEMP_OVER_SAMPL2 = (0x02<<5); const char TEMP_OVER_SAMPL4 = (0x03<<5); const char TEMP_OVER_SAMPL8 = (0x04<<5); const char TEMP_OVER_SAMPL16 = (0x05<<5); //気圧のオーバーサンプリング制御 const char PRESS_SKIP = 0x00; const char PRESS_OVER_SAMPL1 = (0x01<<2); const char PRESS_OVER_SAMPL2 = (0x02<<2); const char PRESS_OVER_SAMPL4 = (0x03<<2); const char PRESS_OVER_SAMPL8 = (0x04<<2); const char PRESS_OVER_SAMPL16 = (0x05<<2); //モード選択 const char SLEEP_MODE = 0x00; const char FORCE_MODE = 0x02; const char NORMAL_MODE = 0x03; //CONFIG //ノーマルモードにおける休止状態の継続時間設定(5.3.4項を参照) const char NORMAL_STANBY_0_5 = 0x00; const char NORMAL_STANBY_62_5 = (0x01<<5); const char NORMAL_STANBY_125 = (0x02<<5); const char NORMAL_STANBY_250 = (0x03<<5); const char NORMAL_STANBY_500 = (0x04<<5); const char NORMAL_STANBY_1000 = (0x05<<5); const char NORMAL_STANBY_10 = (0x06<<5); const char NORMAL_STANBY_20 = (0x07<<5); //IIRフィルタの時定数設定 const char IIR_OFF = 0x00; const char IIR_2 = (0x01<<2); const char IIR_4 = (0x02<<2); const char IIR_8 = (0x03<<2); const char IIR_16 = (0x04<<2); //SPI線方式選択(4線OR3線) 使わない /* const char SPI4 = 0x00; const char SPI3 = 0x01; */ #endif