Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Thermostat.cpp@5:4cbe44452889, 2016-06-17 (annotated)
- Committer:
- mariosimaremare
- Date:
- Fri Jun 17 11:03:37 2016 +0000
- Revision:
- 5:4cbe44452889
- Parent:
- 2:ed17e258da0d
- Child:
- 13:142a142a7ac5
Update the constants to the proper place across the classes.
Who changed what in which revision?
| User | Revision | Line number | New 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 | 5:4cbe44452889 | 9 | Printer &printer, | 
| mariosimaremare | 2:ed17e258da0d | 10 | PinName pin, | 
| mariosimaremare | 2:ed17e258da0d | 11 | PinName led_pin | 
| mariosimaremare | 2:ed17e258da0d | 12 | ): | 
| mariosimaremare | 5:4cbe44452889 | 13 | _printer(printer), | 
| mariosimaremare | 2:ed17e258da0d | 14 | _analog_out(pin), | 
| mariosimaremare | 5:4cbe44452889 | 15 | _led(led_pin), | 
| mariosimaremare | 5:4cbe44452889 | 16 | _status(STATUS_OFF) | 
| mariosimaremare | 2:ed17e258da0d | 17 | { | 
| mariosimaremare | 5:4cbe44452889 | 18 | } | 
| mariosimaremare | 5:4cbe44452889 | 19 | |
| mariosimaremare | 5:4cbe44452889 | 20 | int Thermostat::update(){ | 
| mariosimaremare | 5:4cbe44452889 | 21 | this->_analog_out = this->_status; | 
| mariosimaremare | 5:4cbe44452889 | 22 | this->_led = this->_status; | 
| mariosimaremare | 5:4cbe44452889 | 23 | |
| mariosimaremare | 5:4cbe44452889 | 24 | return(this->_status); | 
| mariosimaremare | 2:ed17e258da0d | 25 | } | 
| mariosimaremare | 2:ed17e258da0d | 26 | |
| mariosimaremare | 2:ed17e258da0d | 27 | int Thermostat::on() | 
| mariosimaremare | 2:ed17e258da0d | 28 | { | 
| mariosimaremare | 5:4cbe44452889 | 29 | this->_status = STATUS_ON; | 
| mariosimaremare | 5:4cbe44452889 | 30 | this->_strStatus = "Thermostat: ON\n\r"; | 
| mariosimaremare | 5:4cbe44452889 | 31 | return(this->_status); | 
| mariosimaremare | 2:ed17e258da0d | 32 | } | 
| mariosimaremare | 2:ed17e258da0d | 33 | |
| mariosimaremare | 2:ed17e258da0d | 34 | int Thermostat::off() | 
| mariosimaremare | 2:ed17e258da0d | 35 | { | 
| mariosimaremare | 5:4cbe44452889 | 36 | this->_status = STATUS_OFF; | 
| mariosimaremare | 5:4cbe44452889 | 37 | this->_strStatus = "Thermostat: OFF\n\r"; | 
| mariosimaremare | 5:4cbe44452889 | 38 | return(this->_status); | 
| mariosimaremare | 2:ed17e258da0d | 39 | } | 
| mariosimaremare | 2:ed17e258da0d | 40 | |
| mariosimaremare | 2:ed17e258da0d | 41 | int Thermostat::react(double temperature) | 
| mariosimaremare | 2:ed17e258da0d | 42 | { | 
| mariosimaremare | 2:ed17e258da0d | 43 | int retVal = 0; | 
| mariosimaremare | 5:4cbe44452889 | 44 | |
| mariosimaremare | 5:4cbe44452889 | 45 | if(temperature < 0.0) { | 
| mariosimaremare | 2:ed17e258da0d | 46 | retVal = this->on(); | 
| mariosimaremare | 5:4cbe44452889 | 47 | } else { | 
| mariosimaremare | 2:ed17e258da0d | 48 | retVal = this->off(); | 
| mariosimaremare | 2:ed17e258da0d | 49 | } | 
| mariosimaremare | 5:4cbe44452889 | 50 | |
| mariosimaremare | 2:ed17e258da0d | 51 | return(retVal); | 
| mariosimaremare | 5:4cbe44452889 | 52 | } | 
| mariosimaremare | 5:4cbe44452889 | 53 | |
| mariosimaremare | 5:4cbe44452889 | 54 | char* Thermostat::getStrStatus(){ | 
| mariosimaremare | 5:4cbe44452889 | 55 | return(this->_strStatus); | 
| mariosimaremare | 2:ed17e258da0d | 56 | } |