Edoardo Vignali
Calibrazione colori Lampada RBG
Tutorials -
Sabato 31 Luglio 2010 13:55
Scritto da Edoardo Vignali

Questo articolo serve a trovare i colori più belli per una lampada RBG. Dato che ho scritto un'altro sketch rispetto a quello per la lampada RBG mi sembra doveroso parlarne in sede separata anche se poi le basi dello sketch sono le stesse.

In pratica ho creato delle funzioni che fanno aumentare o diminuire il valore di Rosso, Verde o Blu.

Includete la libreria IRremote.h

int RECV_PIN = 11;
IRrecv irrecv(RECV_PIN);
decode_results results;
#define RED 5
#define BLUE 10
#define GREEN 9
int r = 0;
int b = 0;
int g = 0;
void setup()
{
  Serial.begin(9600);
  irrecv.enableIRIn(); // Start the receiver
}
word decodifica(){ // Funzione che decodifica i bit in arrivo dal telecomando NEC
word var = 0x0000;
 if (irrecv.decode(&results)) {
  var = (results.value);
  Serial.println(var,HEX);
  return var;
  irrecv.resume();
 }
}

void loop() {
if (irrecv.decode(&results)) {
    decodifica();
   colors();
   scriviled();
     delay(250);

     
    irrecv.resume();
 }
}

void colors(){ // Funzione che a seconda del comando fa aumentare 
               // o diminuire un colore
if (irrecv.decode(&results)) {
 if(decodifica() == 0x906F){
   r += 5;
  Serial.println(r);
  }
  if(decodifica() == 0xB04f){
   r -= 5;
  Serial.println(r);
  }
 if(decodifica() == 0x50AF){
  b +=5;
  Serial.println(b);
  }
 if(decodifica() == 0x708F){
  b -=5;
  Serial.println(b);
  }
 
 if(decodifica() == 0x10EF){
  g +=5;
  Serial.println(g);
  }
  
 if(decodifica() == 0x30CF){
  g -=5;
  Serial.println(g);
  }
  if(decodifica() == 0xD02F){// Aumenta tutti i colori contemporaneamente
  Serial.println("tone up");
    r +=5;
    b +=5;
    g +=5;
   }
  if(decodifica() == 0x609F){ //Azzera le variabili
  Serial.println("azzera");
  r=0;
  b=0;
  g=0;
}
    
  }
      irrecv.resume();
}
void scriviled(){ //Scrive il valore delle variabili sul led
     analogWrite(RED,r);
     analogWrite(BLUE,b);
     analogWrite(GREEN,g);
}
CC
 

Gioblu Robotics © 2010 - 2012 · Sitemap · privacy

gioscarab@gmail.com

Gioblu BOTServer è online dal 10 Aprile 2010 - 319.232 Visite - 1.027.175 Pagine visualizzate - 182.309 Visitatori unici - 536 utenti attivi