Mario Simaremare / Mbed 2 deprecated g3_waterplay

Dependencies:   mbed

Committer:
mariosimaremare
Date:
Tue Jun 14 09:14:24 2016 +0000
Revision:
2:ed17e258da0d
Child:
5:4cbe44452889
Fixing temperature calculation.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
mariosimaremare 2:ed17e258da0d 1 /*
mariosimaremare 2:ed17e258da0d 2 * G3: WATERPLAY
mariosimaremare 2:ed17e258da0d 3 */
mariosimaremare 2:ed17e258da0d 4
mariosimaremare 2:ed17e258da0d 5 #include "Thermostat.h"
mariosimaremare 2:ed17e258da0d 6 #include "mbed.h"
mariosimaremare 2:ed17e258da0d 7
mariosimaremare 2:ed17e258da0d 8 Thermostat::Thermostat(
mariosimaremare 2:ed17e258da0d 9 mbed::Serial &serial,
mariosimaremare 2:ed17e258da0d 10 PinName pin,
mariosimaremare 2:ed17e258da0d 11 PinName led_pin
mariosimaremare 2:ed17e258da0d 12 ):
mariosimaremare 2:ed17e258da0d 13 _serial(serial),
mariosimaremare 2:ed17e258da0d 14 _analog_out(pin),
mariosimaremare 2:ed17e258da0d 15 _led(led_pin)
mariosimaremare 2:ed17e258da0d 16 {
mariosimaremare 2:ed17e258da0d 17 off();
mariosimaremare 2:ed17e258da0d 18 }
mariosimaremare 2:ed17e258da0d 19
mariosimaremare 2:ed17e258da0d 20 int Thermostat::on()
mariosimaremare 2:ed17e258da0d 21 {
mariosimaremare 2:ed17e258da0d 22 this->_analog_out = 1;
mariosimaremare 2:ed17e258da0d 23 this->_led = 1;
mariosimaremare 2:ed17e258da0d 24 _serial.printf("thermostat: ON\n\r");
mariosimaremare 2:ed17e258da0d 25
mariosimaremare 2:ed17e258da0d 26 return(this->_analog_out);
mariosimaremare 2:ed17e258da0d 27 }
mariosimaremare 2:ed17e258da0d 28
mariosimaremare 2:ed17e258da0d 29 int Thermostat::off()
mariosimaremare 2:ed17e258da0d 30 {
mariosimaremare 2:ed17e258da0d 31 this->_analog_out = 0;
mariosimaremare 2:ed17e258da0d 32 this->_led = 0;
mariosimaremare 2:ed17e258da0d 33 _serial.printf("thermostat: OFF\n\r");
mariosimaremare 2:ed17e258da0d 34
mariosimaremare 2:ed17e258da0d 35 return(this->_analog_out);
mariosimaremare 2:ed17e258da0d 36 }
mariosimaremare 2:ed17e258da0d 37
mariosimaremare 2:ed17e258da0d 38 int Thermostat::react(double temperature)
mariosimaremare 2:ed17e258da0d 39 {
mariosimaremare 2:ed17e258da0d 40 int retVal = 0;
mariosimaremare 2:ed17e258da0d 41
mariosimaremare 2:ed17e258da0d 42 if(temperature < 0.0){
mariosimaremare 2:ed17e258da0d 43 retVal = this->on();
mariosimaremare 2:ed17e258da0d 44 }else{
mariosimaremare 2:ed17e258da0d 45 retVal = this->off();
mariosimaremare 2:ed17e258da0d 46 }
mariosimaremare 2:ed17e258da0d 47
mariosimaremare 2:ed17e258da0d 48 return(retVal);
mariosimaremare 2:ed17e258da0d 49 }