yet another 18B20 Temperature sensor. variable number of sensors working in parasite mode, serial 16x2 display with diagnostic output and post to a rest web service
Dependencies: EthernetInterface HTTPClient NTPClient mbed-rtos mbed
Diff: temperature_sensor.cpp
- Revision:
- 0:53f05303850a
- Child:
- 1:9e88b2508768
diff -r 000000000000 -r 53f05303850a temperature_sensor.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/temperature_sensor.cpp Mon Dec 31 12:08:24 2012 +0000 @@ -0,0 +1,20 @@ +#include "temperature_sensor.h" +#include "rtos.h" + +TemperatureSensor::TemperatureSensor(PinName pin, char *url_part, char *name) : Sensor('T', pin, url_part, name), one_wire(pin) { +} + +void TemperatureSensor::prepare_measure(void) { + one_wire.prepare_read(); + Thread::wait(1000); +} + +void TemperatureSensor::measure(void) { + value = one_wire.read_temperature(); +} + +char *TemperatureSensor::last_measure(void) { + sprintf(buffer, "%d\337C", value); + + return buffer; +}