Nuvoton
/
NuMaker-mbed-Sensor-BME680-example
NuMaker Env. Sensor BME680 example
main.cpp@2:a6f7e53da71c, 18 months ago (annotated)
- Committer:
- cyliang
- Date:
- Fri Mar 10 08:53:19 2023 +0000
- Revision:
- 2:a6f7e53da71c
- Parent:
- 1:cd153d864ea3
Update BME680 lib and OS to v6.17.0
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
morgandu | 0:a0e92a018ff2 | 1 | #include "mbed.h" |
morgandu | 0:a0e92a018ff2 | 2 | #include "mbed_bme680.h" |
morgandu | 0:a0e92a018ff2 | 3 | |
morgandu | 0:a0e92a018ff2 | 4 | #if TARGET_NUMAKER_IOT_M263A |
cyliang | 1:cd153d864ea3 | 5 | I2C i2c(PD_4, PD_5); |
morgandu | 0:a0e92a018ff2 | 6 | #else |
cyliang | 1:cd153d864ea3 | 7 | I2C i2c(I2C_SDA, I2C_SCL); // Used inside the BME680 Mbed Lib. |
morgandu | 0:a0e92a018ff2 | 8 | #endif |
morgandu | 0:a0e92a018ff2 | 9 | |
morgandu | 0:a0e92a018ff2 | 10 | BME680 bme680(0x76 << 1); |
morgandu | 0:a0e92a018ff2 | 11 | |
morgandu | 0:a0e92a018ff2 | 12 | int main() |
morgandu | 0:a0e92a018ff2 | 13 | { |
morgandu | 0:a0e92a018ff2 | 14 | int count = 10; |
morgandu | 0:a0e92a018ff2 | 15 | |
morgandu | 0:a0e92a018ff2 | 16 | if (!bme680.begin()) { |
morgandu | 0:a0e92a018ff2 | 17 | printf("BME680 Begin failed \r\n"); |
morgandu | 0:a0e92a018ff2 | 18 | return 1; |
morgandu | 0:a0e92a018ff2 | 19 | } |
morgandu | 0:a0e92a018ff2 | 20 | |
morgandu | 0:a0e92a018ff2 | 21 | while (true) { |
morgandu | 0:a0e92a018ff2 | 22 | if (++count >= 10) |
morgandu | 0:a0e92a018ff2 | 23 | { |
morgandu | 0:a0e92a018ff2 | 24 | count = 0; |
morgandu | 0:a0e92a018ff2 | 25 | printf("\r\nTemperature Humidity Pressure VOC\r\n" |
morgandu | 0:a0e92a018ff2 | 26 | " degC %% hPa KOhms\r\n" |
morgandu | 0:a0e92a018ff2 | 27 | "------------------------------------------\r\n"); |
morgandu | 0:a0e92a018ff2 | 28 | } |
morgandu | 0:a0e92a018ff2 | 29 | |
morgandu | 0:a0e92a018ff2 | 30 | if (bme680.performReading()) |
morgandu | 0:a0e92a018ff2 | 31 | { |
morgandu | 0:a0e92a018ff2 | 32 | printf(" %.2f ", bme680.getTemperature()); |
morgandu | 0:a0e92a018ff2 | 33 | printf("%.2f ", bme680.getHumidity()); |
morgandu | 0:a0e92a018ff2 | 34 | printf("%.2f ", bme680.getPressure() / 100.0); |
morgandu | 0:a0e92a018ff2 | 35 | printf("%0.2f\r\n", bme680.getGasResistance() / 1000.0); |
morgandu | 0:a0e92a018ff2 | 36 | } |
morgandu | 0:a0e92a018ff2 | 37 | |
morgandu | 0:a0e92a018ff2 | 38 | thread_sleep_for(1000); |
morgandu | 0:a0e92a018ff2 | 39 | } |
morgandu | 0:a0e92a018ff2 | 40 | } |