David Gutsch / MPL3115A2

Dependents:   Lab7 Lab9 Lab9

Fork of MPL3115A2 by MSS

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers MPL3115A2.h Source File

MPL3115A2.h

00001 /*
00002  * File description
00003  *
00004  */
00005 #ifndef MPL3115A2_H
00006 #define MPL3115A2_H
00007 
00008 #include "mbed.h"
00009 
00010 /**
00011  * MPL3115A2 I2C Precision Altimeter
00012  *
00013  */
00014 
00015 class MPL3115A2
00016 {
00017 public:
00018  /**
00019   * MPL3115A2
00020   *
00021   * @param sda SDA pin
00022   * @param scl SCL pin
00023   * @param addr address of the I2C peripheral
00024   */
00025 MPL3115A2(PinName sda, PinName scl, int addr) ;
00026 
00027 ~MPL3115A2() ;
00028 
00029 /*
00030  * some member functions here)
00031  */
00032 uint8_t getStatus(void) ;
00033 /**
00034  * get Altitude (m)
00035  *
00036  * @param none
00037  * @returns double altitude in meter
00038  */
00039 double getAltitude(void) ; 
00040 
00041 /**
00042  * get Pressure
00043  *
00044  * @param none
00045  * @returns double pressure in hPa
00046  */
00047 double getPressure(void) ; 
00048 
00049 /**
00050  * get Temperature
00051  *
00052  * @param none
00053  * @returns double temperature in degree Celsius
00054  */
00055 double getTemperature(void) ;
00056 
00057 int32_t  getAltDelta(void) ; /* x65536 */
00058 int32_t  getPrsDelta(void) ; /* x16 */
00059 int16_t  getTempDelta(void) ; 
00060 uint8_t  getID(void) ;
00061 uint8_t  getFstatus(void) ;
00062 uint8_t  getFdata(void) ;
00063 uint8_t  getFsetup(void) ;
00064 void     setFsetup(uint8_t data) ;
00065 uint8_t  getTimeDelay(void) ;
00066 uint8_t  getSysMod(void) ;
00067 uint8_t  getIntSource(void) ;
00068 uint8_t  getPtDataConfig(void) ;
00069 void     setPtDataConfig(uint8_t data) ;
00070 uint16_t getBarIn(void) ;
00071 void     setBarIn(uint16_t data) ;
00072 int16_t  getP_TGT(void) ;
00073 void     setP_TGT(int16_t data) ;
00074 int8_t   getT_TGT(void) ;
00075 void     setT_TGT(int8_t data) ;
00076 uint16_t getP_WND(void) ;
00077 void     setP_WND(uint16_t data) ;
00078 uint8_t  getT_WND(void) ;
00079 void     setT_WND(uint8_t data) ;
00080 int32_t  getP_MIN(void) ;
00081 void     setT_MIN(int32_t data) ;
00082 int32_t  getP_MAX(void) ;
00083 void     setP_MAX(int32_t data) ;
00084 int16_t  getT_MIN(void) ;
00085 void     setT_MIN(int16_t data) ;
00086 int16_t  getT_MAX(void) ;
00087 void     setT_MAX(int16_t data) ;
00088 uint8_t  getCTRL_REG1(void) ;
00089 void     setCTRL_REG1(uint8_t data) ;
00090 uint8_t  getCTRL_REG2(void) ;
00091 void     setCTRL_REG2(uint8_t data) ;
00092 uint8_t  getCTRL_REG3(void) ;
00093 void     setCTRL_REG3(uint8_t data) ;
00094 uint8_t  getCTRL_REG4(void) ;
00095 void     setCTRL_REG4(uint8_t data) ;
00096 uint8_t  getCTRL_REG5(void) ;
00097 void     setCTRL_REG5(uint8_t data) ;
00098 uint16_t getSampleTime(void) ;
00099 void     oneShot(void) ;
00100 void     standby(void) ;
00101 void     activate(void) ;
00102 void     modeAlt(void) ;
00103 void     modeBar(void) ;
00104 void readRegs(int addr, uint8_t *data, int len) ;
00105 void writeRegs(uint8_t *data, int len) ;
00106 //I2c m_i2c;
00107 //int m_addr;
00108 private:
00109   I2C m_i2c;
00110   int m_addr ;
00111   //void readRegs(int addr, uint8_t *data, int len) ;
00112   //void writeRegs(uint8_t *data, int len) ;
00113 } ;
00114 #endif /* MPL3115A2_H */