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

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 · Via Savona 123 20146 Milano MI · PI 06977550968 · Codice fiscale MTLGNN86S09F205F

Gioblu BOTServer è online dal 10 Aprile 2010 - 167.772 Visite - 675.604 Pagine visualizzate - 89.273 Visitatori unici - 421 utenti attivi