Neste post o sketch tem como função apresentar o LED RGB
(múltiplas cores), o potenciômetro e o push button. O RGB é a combinação de
três LED’s – vermelho, verde e azul – em um só. Para fazer a combinação dessas
cores se utiliza os potenciômetros, neste sketch apenas dois para duas cores.
Os push button são chaves liga e desliga que podem ser associados à
resistências internas da placa do Arduino. Essa associação é que define se a
chave estará ligada sem ser pressionada (pull up), ou ao ser pressionada (pull
down).
A função map e o comando While aparecem também neste sketch.
A função matemática map faz uma mudança de valores de um intervalo. Seus
parâmetros são: a variável da qual se quer mudar os limites de intervalo; os
limites originais e os limites desejados. O camando While abre um laço (looping), que continua enquanto
a condição no parêntese não se tornar falsa
/*
******************************************************
PROJETO
ROBÓTICA NA ESCOLA 2015
LED RGB/POTENCIÔMETRO E PUSHBUTTON
EE DR
PEDRO VELHO – RN/BR
******************************************************
*/
#define ledVermelho 9 //Define vermelho do RGB como pino 9
#define ledVerde 10 //Define verde do RGB como pino 10
#define ledAzul 11 //Define azul do RGB como pino 11
#define pot A0
//Define potenciômetro como pino A0
#define pot1 A1
//Define potenciômetro1 como pino A1
#define botaoAzul 4 //Define botão ligado ao azul como pino 4
#define botaoVerde 5 //Define botão verde como pino 5
int valorAzul=0;
int valorVerde=0;
void setup()
{
pinMode(ledVermelho, OUTPUT); //Configura o pino 9 como
saída
pinMode(botaoAzul, INPUT_PULLUP);
//Configura o pino 4 como entrada e com o resistor de pullup
ativo
pinMode(botaoVerde, INPUT_PULLUP);
//Configura o pino 5 como entrada e com o resistor de pullup
ativo
}
void loop()
{
digitalWrite(ledVermelho,HIGH);
while(!(digitalRead(botaoAzul))) //Enquanto o botão do pino 4 estiver
pressionado
{
int valorAzul =
map(analogRead(pot), 0, 1023, 0, 255);
analogWrite(ledAzul, valorAzul);
//Gera o PWM no pino 11, com o valor convertido do pot
//Gera o PWM no pino 11, com o valor convertido do pot
}
while(!(digitalRead(botaoVerde))) //Enquanto o botão do pino 5 estiver
pressionado
{
int valorVerde =
map(analogRead(pot1), 0, 1023, 0, 255);
analogWrite(ledVerde, valorVerde);
//Gera o PWM no
pino 10, com o valor convertido do pot1
}
}
// FIM DO SKETCH
Nenhum comentário:
Postar um comentário