Sunteți pe pagina 1din 9

Como controlar as cores de um led

RGB com botes.


Estamos avanando com os nossos projetos arduino, e neste post vou mostrar
para vocs como comtrolar cada uma das cores de um led RGB usando botes.
Neste projeto arduino voc ter a possibilidade de acender separadamente cada
cor do led e tambm acender vrias cores simultaneamente fazendo uma
mistura que cria novas cores tudo isso atravs dos botes. Este projeto pode
ser desenvolvido em um Arduino Leonardo, Uno, Duemilanove ou qualquer
outra verso do arduino. Ento prepare sua placa e vamos comear o projeto.
Para desenvolver este projeto arduino voc vai precisa de:

um Arduino;

uma protoboard;

12 fios jumper, sendo 8 mdios e 4 pequenos;

3 botes;

um led RGB;

6 resistores, sendo 3 de 150 ohms e 3 de 330 ohms.

Esquema das pernas de leds RGB.


Primeiramente conecte o led RGB na protoboard, que de acordo com o
esquema acima, ter a sua perna azul conectada na coluna 53 da protoboard, a
verde na coluna 54, o terra na 55, e a vermelha na 56. Conecte tambm os
trs botes, onde o primeiro ser conectado nas colunas 50 e 48, o segundo
nas colunas 45 e 43 e o terceiro nas colunas 40 e 38. Veja na imagem abaixo.

O prximo passo conectar os resistores na protoboard. No caso do led voc


ir conectar em cada perna que representa uma cor um resistor de 330 ohms.
E nos botes voc ir conectar trs resistores de 150 ohms, um na coluna 48,
um na coluna 43 e outro na coluna 38 e os resistores de 150 ohms tambm
devero ser conectados na linha horizontal azul (negativa).
Usando os fios jumper pequenos conecte os botes a linha horizontal vermelha
(positivo) nas colunas 50, 45 e 40. Conecte a perna terra do led, coluna 55, a
linha horizontal azul (negativo).

Agora conecte os demais fios jumper na protoboard da seguinte forma:

coluna 38 um fio azul entre o resistor e o boto;

coluna 43 um fio verde entre o resistor e o boto;


coluna 48 um fio vermelho entre o resistor e o boto;

coluna 53 um fio azul aps o resistor;

coluna 54 um fio verde aps o resistor;

coluna 56 um fio vermelho aps o resistor;

um fio vermelho na linha vermelha (positivo)

um fio preto na linha azul (negativo).

A ligao entre o led, os 3 resistores e os fios jumpers vermelho, verde e azul


seria como mostrado na imagem abaixo.
Conecte os fios da protoboard no arduino da seguinte forma:

pino digital 2 fio azul do boto;

pino digital 3 fio verde do boto;

pino digital 4 fio vermelho do boto;

pino digital 8 fio azul do led, fio ligado direto no resistor;

pino digital 9 fio verde do led, fio ligado direto no resistor;

pino digital 10 fio vermelho do led, fio ligado direto no resistor;

pino 5V fio vermelho (positivo);

pino GND fio preto (negativo).

A perna do resistor do led que vai ligada ao fio dos pinos digitais no
conectada na coluna da protoboard e sim conectada direto no fio.
Aps conectar todos os fios, seu projeto fsico para controlar as cores de um led
RGB atravs de botes est pronto. Agora o prximo passo conectar o
arduino ao seu computador atravs do cabo USB para iniciar a programao
das funcionalidades desejadas.
Segue abaixo o cdigo fonte do projeto.
1 /*
Projeto Arduino controla led RGB com botes.
2
Por Jota
3 ----------------------------------------
4 --=<| www.ComoFazerAsCoisas.com.br |>=--
5 ----------------------------------------
6 */
7
//Declarao das constantes
8 const int ledAzul = 8; //ledAzul refere-se ao pino digital 8.
9 const int ledVerde = 9; //ledVerde refere-se ao pino digital 9.
10 const int ledVermelho = 10; //ledVermelho refere-se ao pino digital 10.
11
12 const int botaoAzul = 2; //botaoAzul refere-se ao pino digital 2.
13 const int botaoVerde = 3; //botaoVerde refere-se ao pino digital 3.
const int botaoVermelho = 4; //botaoVermelho refere-se ao pino digital 4.
14
15 //Variveis que contero os estados dos botes (pressionados ou no).
16 int estadoBotaoAzul;
17 int estadoBotaoVerde;
18 int estadoBotaoVermelho;
19
//Mtodo setup, executado uma vez ao ligar o Arduino.
20 void setup() {
21 //Definindo os pinos digitais (8, 9, 10) como de sada.
22 pinMode(ledAzul,OUTPUT);
23 pinMode(ledVerde,OUTPUT);
24 pinMode(ledVermelho,OUTPUT);
25
//Definindo os pinos digitais (2, 3, 4) como de entrada.
26 pinMode(botaoAzul,INPUT);
27 pinMode(botaoVerde,INPUT);
28 pinMode(botaoVermelho,INPUT);
29
30
31
32
33
34 }
35
//Mtodo loop, executado enquanto o Arduino estiver ligado.
36 void loop() {
37
38 //Lendo o estado dos botes atravs dos pinos digitais.
39 estadoBotaoAzul = digitalRead(botaoAzul);
40 estadoBotaoVerde = digitalRead(botaoVerde);
estadoBotaoVermelho = digitalRead(botaoVermelho);
41
42 //Acendendo o led RGB conforme os botes pressionados.
43 //Tratando a cor azul
44 if (estadoBotaoAzul == HIGH) {
45 digitalWrite(ledAzul,HIGH);
46 } else {
digitalWrite(ledAzul,LOW);
47 }
48
49 //Tratando a cor verde
50 if (estadoBotaoVerde == HIGH) {
51 digitalWrite(ledVerde,HIGH);
52 } else {
digitalWrite(ledVerde,LOW);
53 }
54
55 //Tratando a cor vermelha
56 if (estadoBotaoVermelho == HIGH) {
57 digitalWrite(ledVermelho,HIGH);
58 } else {
digitalWrite(ledVermelho,LOW);
59 }
60 }
61
62
63
64
65
Aps inserir o cdigo fonte na IDE do arduino compile e faa o upload.

Pronto! seu projeto como controlar as cores de um led RGB usando botes est
concludo. Se voc pressionar cada boto individualmente o led acender a
respectiva cor. Se voc pressionar mais de um boto de uma vez ocorrer uma
mistura de cores que formar uma nova cor. Agora s brincar bastante!

S-ar putea să vă placă și