Dependencies: mbed C12832 LM75B
main.cpp@7:809bcb2e543c, 2021-05-20 (annotated)
- Committer:
- stephensv650
- Date:
- Thu May 20 07:59:37 2021 +0000
- Revision:
- 7:809bcb2e543c
- Parent:
- 6:5bed20b6274d
- Child:
- 8:82af3c3b631e
Protect complete
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
stephensv650 | 6:5bed20b6274d | 1 | #include "mbed.h" // Stephen Reidy; T00214774; Instrumentation Report |
stephensv650 | 6:5bed20b6274d | 2 | #include "LM75B.h" // Tempsensor header |
stephensv650 | 6:5bed20b6274d | 3 | #include "C12832.h" // LCD Screen header |
okano | 0:ce7a8546502b | 4 | |
stephensv650 | 6:5bed20b6274d | 5 | LM75B tempsensor(p28,p27); // temp sensor initialised, pins 28 & 27 |
stephensv650 | 6:5bed20b6274d | 6 | Serial pc(USBTX,USBRX); // Transmit & Receive initialised |
stephensv650 | 7:809bcb2e543c | 7 | C12832 lcd(p5, p7, p6, p8, p11); // LCD Pins initialised |
stephensv650 | 6:5bed20b6274d | 8 | DigitalOut testled(LED1); // LED 1 digital out initialised |
stephensv650 | 7:809bcb2e543c | 9 | AnalogIn Heater (p19); //Read digital in |
stephensv650 | 6:5bed20b6274d | 10 | DigitalOut RED(p23); // colour LED 1 |
stephensv650 | 6:5bed20b6274d | 11 | DigitalOut GREEN(p24); // colour LED 2 |
stephensv650 | 6:5bed20b6274d | 12 | DigitalOut BLUE(p25); // colour LED 3 |
okano | 0:ce7a8546502b | 13 | |
chris | 2:9e757151de9b | 14 | int main () |
okano | 0:ce7a8546502b | 15 | { |
stephensv650 | 6:5bed20b6274d | 16 | while (1) { |
chris | 4:6df97cb10041 | 17 | |
stephensv650 | 6:5bed20b6274d | 18 | if (tempsensor.open()) { // check of sensoe is connected |
stephensv650 | 6:5bed20b6274d | 19 | testled = 1; // if yes LED ON |
stephensv650 | 6:5bed20b6274d | 20 | pc.printf("Tempsensor connected \n"); // PC print Tempsensor connected |
stephensv650 | 6:5bed20b6274d | 21 | } else { // if temp sensor not connected, print Error |
stephensv650 | 6:5bed20b6274d | 22 | lcd.printf("Error. Tempsensor not connected \n"); |
stephensv650 | 6:5bed20b6274d | 23 | pc.printf("Error. Tempsensor not connected \n"); |
chris | 4:6df97cb10041 | 24 | } |
chris | 4:6df97cb10041 | 25 | |
stephensv650 | 7:809bcb2e543c | 26 | if (tempsensor > 25.000 && Heater > 0.5) { //if tempsensor is more than 25, display red led |
stephensv650 | 6:5bed20b6274d | 27 | RED = 0; |
stephensv650 | 6:5bed20b6274d | 28 | GREEN = 1; |
stephensv650 | 6:5bed20b6274d | 29 | BLUE = 1; |
stephensv650 | 7:809bcb2e543c | 30 | lcd.printf(" switch OFF Heat "); |
stephensv650 | 7:809bcb2e543c | 31 | wait (.5); |
stephensv650 | 7:809bcb2e543c | 32 | } //Delay for clarity |
stephensv650 | 7:809bcb2e543c | 33 | |
stephensv650 | 7:809bcb2e543c | 34 | if (tempsensor < 25.000 && Heater < 0.5) { //if tempsensor is more than 25, display red led |
stephensv650 | 6:5bed20b6274d | 35 | RED = 1; |
stephensv650 | 6:5bed20b6274d | 36 | GREEN = 1; |
stephensv650 | 6:5bed20b6274d | 37 | BLUE = 0; |
stephensv650 | 7:809bcb2e543c | 38 | lcd.printf(" switch OFF Heat "); |
stephensv650 | 7:809bcb2e543c | 39 | wait (.5); //Delay for clarity |
stephensv650 | 6:5bed20b6274d | 40 | } |
stephensv650 | 6:5bed20b6274d | 41 | |
stephensv650 | 6:5bed20b6274d | 42 | lcd.cls(); //Clear LCD screen |
stephensv650 | 6:5bed20b6274d | 43 | lcd.locate(0,0); // LCD text location |
stephensv650 | 6:5bed20b6274d | 44 | lcd.printf("Temp = %.3f\n", (float)tempsensor); // Print "Temp = " tempsensor value |
chris | 2:9e757151de9b | 45 | } |
stephensv650 | 7:809bcb2e543c | 46 | |
stephensv650 | 7:809bcb2e543c | 47 | |
stephensv650 | 7:809bcb2e543c | 48 | } |
stephensv650 | 7:809bcb2e543c | 49 |