abc Arduino - primjeri /EXAMPLES/
|
Šema povezivanja: | Ispis |
Elementi: |
Listing programa : // Termometar senzor i RGB dioda sa opsezima temperature // 21eTermometarRGB1 int analogniulaz = A5; int pinLedR = 7; // pin crvena led RGB int pinLedB = 6; // pin plava led RGB int pinLedG = 5; // pin zelena led RGB int ocitanavrijednost = 0; int gr0 = -40; // temperaturne granice int gr1 = -3; int gr2= 24; int gr3 = 81; int gr4 = 111; void setup() { pinMode(pinLedR, OUTPUT); // postvi pinLedR kao izlaz pinMode(pinLedG, OUTPUT); // postvi pinLedG kao izlaz pinMode(pinLedB, OUTPUT); // postvi pinLedB kao izlaz 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 - Boja RGB diode zelena if ((ocitanavrijednost >= gr0) && (ocitanavrijednost < gr1)) { color(0, 255, 0); // zelena // Opseg: gr1 - < gr2 - Boja RGB diode zuta } else if ((ocitanavrijednost >= gr1) && (ocitanavrijednost < gr2)) { color(255, 255, 0); // zuta // Opseg: gr2- < gr3 - Boja RGB diode plava } else if ((ocitanavrijednost >= gr2) && (ocitanavrijednost < gr3)) { color(0, 0, 255); // plava // Opseg: gr3- < gr4 - Boja RGB diode cijan } else if ((ocitanavrijednost >= gr3) && (ocitanavrijednost < gr4)) { color(0, 255, 255); // cijan // > gr4 Opseg: ostali - Boja RGB diode crvena } else { color(255, 0, 0); // crvena } delay(300); Serial.print(ocitanavrijednost); Serial.println(" C"); } // funcion generator boje void color (int crvena, int zelena, int plava) { analogWrite(pinLedR, crvena); analogWrite(pinLedG, zelena); analogWrite(pinLedB, plava); } Ispis na SERIAL MONITOR: Prikaz izmjerene temperature -40 C 11 C 29 C 91 C 121 C |