Dependencies:   mbed C12832 LM75B

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?

UserRevisionLine numberNew 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