Motoo Tanaka
/
test_BME280
test program for my BME280 library. Both I2C and SPI mode have been tested.
Diff: main.cpp
- Revision:
- 0:7e8c784a0df1
- Child:
- 1:21463f9ca08d
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/main.cpp Tue May 09 06:33:18 2017 +0000 @@ -0,0 +1,34 @@ +#include "mbed.h" +#include "MSS.h" +#include "BME280.h" + +#define BME280_I2C_ADDRESS 0x76 + +DigitalOut csb(PIN_CS0, 1) ; + +int main() { + uint8_t data[8] ; + float temp, hum, pres ; +// BME280 *bme280 = new BME280(PIN_SDA, PIN_SCL, BME280_I2C_ADDRESS) ; + BME280 *bme280 = new BME280(PIN_SCK, PIN_MISO, PIN_MOSI, PIN_CS0) ; + + bme280->reset() ; + wait(2) ; + bme280->init() ; + wait(1) ; + printf("=== test BME280 for %s (%s) ===\n", BOARD_NAME, __DATE__) ; + printf("ID = 0x%02X (0x60 expected for BME280)\n", bme280->getID()) ; + printf("Temperature(C) , Humidity(%%), Pressure(hPa)\n") ; + while(1) { + bme280->trigger() ; + while(bme280->busy()) { + wait(0.1) ; + } + bme280->readData(data) ; + temp = bme280->getTemperature(&data[3]) ; + hum = bme280->getHumidity(&data[6]) ; + pres = bme280->getPressure(&data[0]) ; + printf("%.2f, %.2f, %.2f\n", temp, hum, pres) ; + wait(2) ; + } +}