Jamie Satchell
/
SOFT253_Weather_Sensor_JSatchell
MAIN
Fork of SOFT253_Template_Weather_OS_54 by
sensor.cpp
- Committer:
- J_Satchell
- Date:
- 2017-05-15
- Revision:
- 37:13f74964a045
- Parent:
- 36:af6abc6f7590
File content as of revision 37:13f74964a045:
#include "mbed.h" #include "rtos.h" #include "hts221.h" #include "LPS25H.h" #include "Data.hpp" #include "log.hpp" DigitalOut myled(LED1); I2C i2c2(I2C_SDA, I2C_SCL); Mutex mutex_s; float tempCelsius = 25.50; float humi = 55; char cmd=0; uint32_t seconds = 0, minutes=0, hours=0; LPS25H barometer(i2c2, LPS25H_V_CHIP_ADDR); HTS221 humidity(I2C_SDA, I2C_SCL); void sensor_init() { humidity.init(); humidity.calib(); myled = 0; } void sensor_run() { while (1){ humidity.ReadTempHumi(&tempCelsius, &humi); /*printf("%4.2fC %3.1f%%", tempCelsius, humi);*/ barometer.get(); /*printf(" %6.1f %4.1f\r\n", barometer.pressure(), barometer.temperature());*/ myled = 1; // LED is ON Thread::wait(200); // 200 ms NB 'Thread::wait(int d);' !!! d is in milliseconds! myled = 0; // LED is OFF Thread::wait(100); // 100 ms mutex_s.lock(); Data entry; entry.tempCelsius = tempCelsius; entry.humi = humi; entry.pressure= barometer.pressure(); entry.logtime = time(0); log_push(entry); mutex_s.unlock(); Thread::wait(1000); } }