abc Arduino - primjeri /EXAMPLES/
|
Šema povezivanja: | Ispis |
Elementi: |
Listing programa : // Termometar od 5 LED dioda sa opsezima temperature // 21eTermometarLED5x int analogniulaz = A5; int led1 = 5; int led2 = 6; int led3 = 9; int led4 = 8; int led5 = 7; int ocitanavrijednost = 0; int gr0 = -40; // temperaturne granice int gr1 = -3; int gr2= 24; int gr3 = 81; int gr4 = 111; void setup() { pinMode(led1, OUTPUT); pinMode(led2, OUTPUT); pinMode(led3, OUTPUT); pinMode(led4, OUTPUT); pinMode(led5, OUTPUT); Serial.begin(9600); // brzina komunikacije Serial.println("Prikaz izmjerene temperature"); } void loop() { ocitanavrijednost = map(((analogRead(analogniulaz) - 20) * 3.04), 0, 1023, -40, 125); // Opseg: gr0 - < gr1 if ((ocitanavrijednost>= gr0) && (ocitanavrijednost < gr1)) { digitalWrite(led1, HIGH); digitalWrite(led2, LOW); digitalWrite(led3, LOW); digitalWrite(led4, LOW); digitalWrite(led5, LOW); // Opseg: gr1 - < gr2 } else if ((ocitanavrijednost>=gr1) && (ocitanavrijednost < gr2)) { digitalWrite(led1, HIGH); digitalWrite(led2, HIGH); digitalWrite(led3, LOW); digitalWrite(led4, LOW); digitalWrite(led5, LOW); // Opseg: gr2- < gr3 } else if ((ocitanavrijednost>= gr2) && (ocitanavrijednost < gr3)) { digitalWrite(led1, HIGH); digitalWrite(led2, HIGH); digitalWrite(led3, HIGH); digitalWrite(led4, LOW); digitalWrite(led5, LOW); // Opseg: gr3- < gr4 } else if ((ocitanavrijednost>= gr3) && (ocitanavrijednost < gr4)) { digitalWrite(led1, HIGH); digitalWrite(led2, HIGH); digitalWrite(led3, HIGH); digitalWrite(led4, HIGH); digitalWrite(led5, LOW); // > gr4 Opseg: ostali } else { digitalWrite(led1, HIGH); digitalWrite(led2, HIGH); digitalWrite(led3, HIGH); digitalWrite(led4, HIGH); digitalWrite(led5, HIGH); } delay(300); Serial.print(ocitanavrijednost); Serial.println(" C"); } Ispis na SERIAL MONITOR: Prikaz izmjerene temperature -40 C 11 C 29 C 91 C 121 C |