Library for Bosch BMP280 temperature and pressure sensor
Dependents: ELEC350-LCD-DEMO ELEC350-CWTEMPLATE-2017 ELEC351_v1 ELEC350-CWTEMPLATE-2017 ... more
Fork of BMP280 by
Library for Temperature and Pressure Sensor Bosch BMP280.
Breakoutboard for example from Adafruit
Revision 3:d4eb81284ea0, committed 2015-05-12
- Comitter:
- takafuminaka
- Date:
- Tue May 12 12:07:25 2015 +0000
- Parent:
- 2:c35f637c28ef
- Child:
- 4:ddcaa259e65b
- Commit message:
- * Bug fix for getHumidity : 0xfd was read twice.; * Use burst read in getXXXX : As mentioned at chapter "4 Date readout" in datasheet.
Changed in this revision
| BME280.cpp | Show annotated file Show diff for this revision Revisions of this file |
--- a/BME280.cpp Sat Apr 11 15:47:58 2015 +0000
+++ b/BME280.cpp Tue May 12 12:07:25 2015 +0000
@@ -108,15 +108,15 @@
cmd[0] = 0xfa; // temp_msb
i2c.write(address, cmd, 1);
- i2c.read(address, &cmd[1], 1);
+ i2c.read(address, &cmd[1], 3);
- cmd[0] = 0xfb; // temp_lsb
- i2c.write(address, cmd, 1);
- i2c.read(address, &cmd[2], 1);
+ //cmd[0] = 0xfb; // temp_lsb
+ //i2c.write(address, cmd, 1);
+ //i2c.read(address, &cmd[2], 1);
- cmd[0] = 0xfc; // temp_xlsb
- i2c.write(address, cmd, 1);
- i2c.read(address, &cmd[3], 1);
+ //cmd[0] = 0xfc; // temp_xlsb
+ //i2c.write(address, cmd, 1);
+ //i2c.read(address, &cmd[3], 1);
temp_raw = (cmd[1] << 12) | (cmd[2] << 4) | (cmd[3] >> 4);
@@ -141,15 +141,15 @@
cmd[0] = 0xf7; // press_msb
i2c.write(address, cmd, 1);
- i2c.read(address, &cmd[1], 1);
+ i2c.read(address, &cmd[1], 3);
- cmd[0] = 0xf8; // press_lsb
- i2c.write(address, cmd, 1);
- i2c.read(address, &cmd[2], 1);
+ //cmd[0] = 0xf8; // press_lsb
+ //i2c.write(address, cmd, 1);
+ //i2c.read(address, &cmd[2], 1);
- cmd[0] = 0xf9; // press_xlsb
- i2c.write(address, cmd, 1);
- i2c.read(address, &cmd[3], 1);
+ //cmd[0] = 0xf9; // press_xlsb
+ //i2c.write(address, cmd, 1);
+ //i2c.read(address, &cmd[3], 1);
press_raw = (cmd[1] << 12) | (cmd[2] << 4) | (cmd[3] >> 4);
@@ -187,11 +187,11 @@
cmd[0] = 0xfd; // hum_msb
i2c.write(address, cmd, 1);
- i2c.read(address, &cmd[1], 1);
+ i2c.read(address, &cmd[1], 2);
- cmd[0] = 0xfd; // hum_lsb
- i2c.write(address, cmd, 1);
- i2c.read(address, &cmd[2], 1);
+ //cmd[0] = 0xfe; // hum_lsb
+ //i2c.write(address, cmd, 1);
+ //i2c.read(address, &cmd[2], 1);
hum_raw = (cmd[1] << 8) | cmd[2];
