Adrian Mitevski / Mbed 2 deprecated mDot_LoRa_Sensornode

Dependencies:   mDot_LoRa_Sensornode_Flowmeter_impl mbed-rtos mbed

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers TaskHumidity.cpp Source File

TaskHumidity.cpp

00001 /*
00002  * TaskHumidity.cpp
00003  *
00004  *  Created on: May 30, 2016
00005  *      Author: Adrian
00006  */
00007 
00008 #include "TaskHumidity.h"
00009 
00010 TaskHumidity::TaskHumidity(BME280* bme280,Mutex* mutexI2C, Queue<BME280HumidityMessage,HUMIDITY_QUEUE_LENGHT>* queue){
00011     this->bme280 = bme280;
00012     setMutex(mutexI2C);
00013     setQueue(queue);
00014 }
00015 
00016 TaskHumidity::TaskHumidity(BME280* bme280,rtos::Mutex* mutexI2C,
00017         rtos::Queue<BME280HumidityMessage,HUMIDITY_QUEUE_LENGHT>* queue,
00018         osPriority priority, uint32_t stackSize, unsigned char *stackPointer){
00019     this->bme280 = bme280;
00020     setMutex(mutexI2C);
00021     setQueue(queue);
00022     setPriority(priority);
00023     setStackSize(stackSize);
00024     setStackPointer(stackPointer);
00025     setState(SLEEPING);
00026 }
00027 
00028 TaskHumidity::~TaskHumidity() {
00029     // TODO Auto-generated destructor stub
00030 }
00031 
00032 void TaskHumidity::measure(){
00033     BME280HumidityMessage bme280HumidityMessage;
00034 
00035     while(true){
00036         mutexInterface->lock(osWaitForever);
00037         bme280HumidityMessage.setHumidity(bme280->getHumidityFloat());
00038         mutexInterface->unlock();
00039 
00040         queue->put(&bme280HumidityMessage,osWaitForever);
00041         osDelay(HUMIDITY_TASK_DELAY_MS);
00042     }
00043 
00044 
00045 }
00046 
00047 void TaskHumidity::setQueue(Queue<BME280HumidityMessage,HUMIDITY_QUEUE_LENGHT>* queue){
00048     this->queue = queue;
00049 }