Temperature and humidity example for NXP rapid IoT prototyping kit. Read more at https://www.hackster.io/marcomerli/riotwear-mbed-2b2011 .

Dependencies:   AMS_ENS210_temp_humid_sensor

Committer:
batman52
Date:
Tue Dec 03 18:50:24 2019 +0000
Revision:
80:c455b645d802
Parent:
79:0431b9fd3dc0
first example of temperature and humidity senor for NXP Rapid iot Prototyping kit

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Jonathan Austin 0:2757d7abb7d9 1 #include "mbed.h"
batman52 80:c455b645d802 2 #include "AMS_ENS210.h"
Jonathan Austin 0:2757d7abb7d9 3
batman52 80:c455b645d802 4 #define WAIT() wait(0.2)
batman52 79:0431b9fd3dc0 5
batman52 80:c455b645d802 6 AMS_ENS210 temphumid(I2C_SDA, I2C_SCL);
batman52 79:0431b9fd3dc0 7
batman52 80:c455b645d802 8 void read_temperature(void)
batman52 80:c455b645d802 9 {
batman52 80:c455b645d802 10 temphumid.init();
batman52 80:c455b645d802 11 WAIT();
batman52 80:c455b645d802 12 temphumid.start(true);
batman52 80:c455b645d802 13 WAIT();
batman52 80:c455b645d802 14 while(!temphumid.temp_has_data());
batman52 80:c455b645d802 15 // printf("Wait for temperature read!\n\r");
batman52 80:c455b645d802 16 temphumid.stop(true);
batman52 80:c455b645d802 17 WAIT();
batman52 80:c455b645d802 18 printf("Temp: %d [C]\r\n", ((temphumid.temp_read() >> 6)-273) );
batman52 80:c455b645d802 19 }
batman52 80:c455b645d802 20
batman52 80:c455b645d802 21 void read_humidity(void)
batman52 80:c455b645d802 22 {
batman52 80:c455b645d802 23 temphumid.init();
batman52 80:c455b645d802 24 WAIT();
batman52 80:c455b645d802 25 temphumid.start(false,true);
batman52 80:c455b645d802 26 WAIT();
batman52 80:c455b645d802 27 while(!temphumid.humid_has_data());
batman52 80:c455b645d802 28 temphumid.stop(false,true);
batman52 80:c455b645d802 29 WAIT();
batman52 80:c455b645d802 30 printf("Humidity: %d [%]\r\n", ( temphumid.humid_read() >> 9) );
batman52 79:0431b9fd3dc0 31 }
Jonathan Austin 0:2757d7abb7d9 32
Jonathan Austin 1:846c97078558 33 // main() runs in its own thread in the OS
Jonathan Austin 0:2757d7abb7d9 34 int main() {
Jonathan Austin 0:2757d7abb7d9 35 while (true) {
batman52 80:c455b645d802 36 read_temperature();
batman52 80:c455b645d802 37 WAIT();
batman52 80:c455b645d802 38 read_humidity();
batman52 80:c455b645d802 39 WAIT();
Jonathan Austin 0:2757d7abb7d9 40 }
batman52 79:0431b9fd3dc0 41 }