LPS22HBのライブラリ
Dependents: HYBRYD2018_IZU_ROCKET Hybrid_IZU201811_STMBBM_v4 Hybrid_IZU2019
pqLPS22HB_lib.h
- Committer:
- Sigma884
- Date:
- 2017-06-26
- Revision:
- 0:52880f880b81
- Child:
- 1:42cd33e0f174
File content as of revision 0:52880f880b81:
#ifndef PQ_LPS22HB_LIB_H #define PQ_LPS22HB_LIB_H #include "mbed.h" typedef enum{ AD0_LOW = 0xB8, AD0_HIGH = 0xBA }AD0; #define WHO_AM_I 0x0F #define CTRL_REG1 0x10 #define CTRL_REG2 0x11 #define CTRL_REG3 0x12 #define FIFO_CTRL 0x14 #define P_XL 0x28 #define P_L 0x29 #define P_H 0x2A #define T_L 0x2B #define T_H 0x2C class pqLPS22HB_lib{ /********** コンストラクタ ・AD0がHIGHかLOWかを選択 ・使用するI2Cを選択 **********/ public: pqLPS22HB_lib(AD0 ad0, I2C &userI2C); private: char slave; I2C *i2c; /********** センサー起動(void) ・データ更新レートを選択(1, 10, 25, 50, 75) **********/ public: void begin(int drate); private: char cmd_ctrl_reg1[2]; /********** FIFO設定(void)(未実装) ・モードを選択(したい) ・FIFO ウォーターマークレベルを選択(したい) **********/ public: void setFIFO(); private: char cmd_ctrl_reg2[2]; char cmd_ctrl_reg3[2]; char cmd_fifo_ctrl[2]; /********** Who Am I(int) 接続できているかを判定 接続OK:0 接続NG:-1 **********/ public: int whoAmI(); private: char cmd_who_am_i[1]; /********** 気圧を取得(float) **********/ public: float getPres(); private: char cmd_p[3]; int data_p[3]; /********** 温度を取得(float) **********/ public: float getTemp(); private: char cmd_t[2]; int data_t[2]; }; #endif