Niveau – beginner
Tijdsduur – 10 / 15 Min
Kosten – €17.47 euro zonder Arduino 41.42 euro met

In dit project laat ik jullie zien hoe je zelf een RGB led lampje maakt dat van kleur verandert als je op de knop drukt.

In dit simpele project leer je om met een knop een RGB ledje van kleur te laten veranderen. Met behulp van een Arduino UNO

Stap 2: Bouwen en Bedraden

Nu gaan we het project in elkaar zetten.

Als eerste verbinden we een van de twee GND’s van de Arduino aan op de min van het breadboard. Daar sluit je een 220 ohm weerstand op aan. De andere zijde van de weerstand sluit je via een jumper wire aan op de langste pin van het RGB ledje dat is namelijk de min van het led lampje. Dan sluit je de 5 volt via het breadboard aan op de push button. Diagonaal van de knop waar 5 volt in komt doe je een jumper wire die naar A0 gaat. Dan verbind je een weerstand met 220 ohm met de pin van de push button die verticaal onder de 5 volt aansluiting zit. Als laatst verbind je pin 4, 5 en met de overige pinnen van het RGB ledje.

Hoe je deze aansluit bepaalt voor een deel welke kleur eerst komt en welke als laatst. Dit kan je ook in de code aanpassen.

Stap 3: Programmeren

Nu je klaar bent met het bedraden van het project kun je beginnen met programmeren.

Het is een relatief simpele code je kan hem zelf ook nog aanpassen zodat hij een kleurenpatroon laat zijn of andere kleuren dan groen, blauw en rood.
Maar bijvoorbeeld paars of geel.

int button = 2;
int led1 = 3;
int led2 = 4;
int led3 = 5;
int count = 0;

void setup(){
  pinMode(button, INPUT);
  pinMode(led1, OUTPUT);
  pinMode(led2, OUTPUT);
  pinMode(led3, OUTPUT);
}

void loop(){
  if(digitalRead(button) == HIGH){
    count++;
    while(digitalRead(button) == HIGH);
  }
  if(count == 1){
    digitalWrite(led1, HIGH);
  }else{
    digitalWrite(led1, LOW);
  }
  if(count == 2){
    digitalWrite(led2, HIGH);
  }else{
    digitalWrite(led2, LOW);
  }
  if(count == 3){
    digitalWrite(led3, HIGH);
  }else{
    digitalWrite(led3, LOW);
  }
  if(count == 4){
    count = 0;
  }
}

Deze code werkt wel maar moet nog worden aangepast om ideaal te functioneren.
Dit laten wij aan jullie over omdat je dan zelf echt bezig gaat met het programmeren!