int temp_dasar = 0; //variabel tetap dasar menyimpan
//nilai batas awal nol
int celcius = 0; // variabel celcius menyimpan
// nilai batas awal nol
void setup() // fungsi dibaca satu kali
{
pinMode (A0, INPUT) // pin A0 sebagai input analog
; Serial.begin(9600) ; //komunikasi serial dari arduino ke serial
// monitor komputer
pinMode (2, OUTPUT) ; // pin 2 sebagai output
pinMode (3, OUTPUT) ;
pinMode (4, OUTPUT) ;
}
void loop ()
{
temp_dasar = 40;
// set baas temperature untuk mengaktifkan led
celcius = map ( ( ( analogRead (A0) - 20) * 3.04) , 0, 1023, -40, 125) ;
// mengukur temperatur dalam celcius
// pembacaan 0 s.d 1023 diterjemahkan ke -40 s.d 125 derajat celcius
Serial.print(celcius) ; // print ke serial monitor nilai celcius
Serial.print( " C ") ;
if (celcius < temp_dasar) {
digitalWrite(2, LOW) ;
digitalWrite(3, LOW) ;
digitalWrite(4, LOW) ;
}
if (celcius >= temp_dasar && celcius < temp_dasar + 10) {
digitalWrite(2, HIGH) ;
digitalWrite(3, LOW) ;
digitalWrite(4, LOW) ;
}
if (celcius >= temp_dasar + 10 && celcius < temp_dasar + 20) {
digitalWrite(2, LOW) ;
digitalWrite(3, HIGH) ;
digitalWrite(4, LOW);
}
if (celcius >= temp_dasar + 20) {
digitalWrite(2, LOW) ;
digitalWrite(3, LOW) ;
digitalWrite(4, HIGH) ;
}
delay(2000); // jeda waktu 2000 milidetik
}