秋月電子通商のBME280温湿度気圧モジュールにて高度を測定しました。 ボードはSTM32L152REを使いました。 meas attitude by BME280 Module of Akiduki and STM32L152RE. http://akizukidenshi.com/catalog/g/gK-09421/ http://www.st.com/content/st_com/ja/products/evaluation-tools/product-evaluation-tools/mcu-eval-tools/stm32-mcu-eval-tools/stm32-mcu-nucleo/nucleo-l152re.html

Dependencies:   BME280 mbed

Fork of BME280_Hello by Toyomasa Watarai

秋月電子通商のBME280温湿度気圧モジュールにて高度を測定しました。 ボードはSTM32L152REを使いました。 Meas altitude by BME280 Module of Akiduki and STM32L152RE. http://akizukidenshi.com/catalog/g/gK-09421/ http://www.st.com/content/st_com/ja/products/evaluation-tools/product-evaluation-tools/mcu-eval-tools/stm32-mcu-eval-tools/stm32-mcu-nucleo/nucleo-l152re.html

Committer:
gitakichi
Date:
Tue Jun 28 15:33:15 2016 +0000
Revision:
5:41f74665164b
Parent:
4:36164592a7ea
?????

Who changed what in which revision?

UserRevisionLine numberNew contents of line
MACRUM 0:2c9585cecfde 1 #include "mbed.h"
MACRUM 0:2c9585cecfde 2 #include "BME280.h"
MACRUM 0:2c9585cecfde 3
gitakichi 4:36164592a7ea 4 Serial pc(SERIAL_TX, SERIAL_RX);
MACRUM 0:2c9585cecfde 5
MACRUM 0:2c9585cecfde 6 #if defined(TARGET_LPC1768)
MACRUM 0:2c9585cecfde 7 BME280 sensor(p28, p27);
MACRUM 0:2c9585cecfde 8 #else
MACRUM 0:2c9585cecfde 9 BME280 sensor(I2C_SDA, I2C_SCL);
MACRUM 0:2c9585cecfde 10 #endif
MACRUM 0:2c9585cecfde 11
gitakichi 4:36164592a7ea 12 static double t0,p0;
gitakichi 4:36164592a7ea 13
gitakichi 4:36164592a7ea 14 void altitude_setup()
gitakichi 4:36164592a7ea 15 {
gitakichi 4:36164592a7ea 16 t0 = sensor.getTemperature();
gitakichi 4:36164592a7ea 17 p0 = sensor.getPressure();
gitakichi 4:36164592a7ea 18
gitakichi 4:36164592a7ea 19 }
gitakichi 4:36164592a7ea 20
gitakichi 4:36164592a7ea 21 double altitude_calc()
gitakichi 4:36164592a7ea 22 {
gitakichi 4:36164592a7ea 23 double altitude;
gitakichi 4:36164592a7ea 24
gitakichi 4:36164592a7ea 25 altitude = ((pow( p0 / sensor.getPressure() , 1 / 5.257) - 1) * (t0 + 273.15) ) / 0.0065;
gitakichi 4:36164592a7ea 26
gitakichi 4:36164592a7ea 27 return altitude;
gitakichi 4:36164592a7ea 28 }
gitakichi 4:36164592a7ea 29
gitakichi 4:36164592a7ea 30
gitakichi 4:36164592a7ea 31 int main()
gitakichi 4:36164592a7ea 32 {
gitakichi 4:36164592a7ea 33
gitakichi 4:36164592a7ea 34 float altitude;
gitakichi 5:41f74665164b 35
gitakichi 4:36164592a7ea 36 altitude_setup();
gitakichi 4:36164592a7ea 37
gitakichi 4:36164592a7ea 38
MACRUM 0:2c9585cecfde 39 while(1) {
gitakichi 4:36164592a7ea 40
gitakichi 4:36164592a7ea 41 altitude = altitude_calc();
gitakichi 4:36164592a7ea 42
gitakichi 4:36164592a7ea 43 pc.printf("%.1nlf\n\r",altitude);
gitakichi 4:36164592a7ea 44 pc.printf("%2.2f degC, %04.2f hPa, %2.2f %%\n\r", sensor.getTemperature(), sensor.getPressure(), sensor.getHumidity());
gitakichi 4:36164592a7ea 45
gitakichi 4:36164592a7ea 46 wait(0.2);
gitakichi 4:36164592a7ea 47
MACRUM 0:2c9585cecfde 48 }
MACRUM 0:2c9585cecfde 49 }