BMP085 Digital, barometric pressure sensor. Manufacturer: Bosch Sensortec.
Embed:
(wiki syntax)
Show/hide line numbers
bmp085.h
00001 /* 00002 * BMP085 Sensor Library for mbed 00003 */ 00004 00005 #ifndef BMP085_H 00006 #define BMP085_H 00007 00008 #include "mbed.h" 00009 00010 /** 00011 * BMP085 Class to read temprature & pressure from BMP085(GY-65) 00012 * 00013 */ 00014 class BMP085 00015 { 00016 public: 00017 /** 00018 * BMP085 constructor 00019 * @param sda SDA pin 00020 * @param sdl SCL pin 00021 * @param addr addr of the I2C peripheral 00022 */ 00023 BMP085(PinName sda, PinName scl); 00024 00025 void read(int32_t * temperature, int32_t * pressure); 00026 void set_oversampling(int osrs); 00027 00028 static const float p0; 00029 static float altitude(float p); 00030 00031 00032 private: 00033 I2C m_i2c; 00034 char m_addr; 00035 00036 int16_t ac1; 00037 int16_t ac2; 00038 int16_t ac3; 00039 uint16_t ac4; 00040 uint16_t ac5; 00041 uint16_t ac6; 00042 int16_t b1; 00043 int16_t b2; 00044 int16_t mb; 00045 int16_t mc; 00046 int16_t md; 00047 00048 uint8_t oss; 00049 00050 void writeRegs(uint8_t * data, int len); 00051 void readRegs(int addr, uint8_t * data, int len); 00052 00053 void calibration(void); 00054 int32_t read_pressure(void); 00055 int32_t read_temp(void); 00056 }; 00057 #endif 00058 00059
Generated on Tue Jul 19 2022 07:01:31 by 1.7.2