Ciclo de cores do arco-íris
Parte da seção Saídas do Journey de Arduino da Coddy. Lição 8 de 24.
Cada cor exige três linhas de digitalWrite(). Uma sequência de seis cores exigiria 18 linhas, e é fácil confundir qual linha corresponde a cada cor.
Uma função deixa isso mais curto. setColor() recebe um valor para cada cor e escreve nos três pinos:
void setColor(int red, int green, int blue) {
digitalWrite(redPin, red);
digitalWrite(greenPin, green);
digitalWrite(bluePin, blue);
}Agora cada cor ocupa uma linha, e seus três valores parecem uma receita:
setColor(HIGH, HIGH, LOW); // amarelo
delay(500);HIGH e LOW são os números 1 e 0, então cabem em um parâmetro int. Mantenha os parâmetros na mesma ordem em que os passa: red, green, blue.
Desafio
FácilEscreva setColor() e use-o para exibir um arco-íris, meio segundo por cor, repetidamente:
- vermelho
- amarelo
- verde
- ciano
- azul
- magenta
Pressione Executar e depois Verificar.
Experimente você mesmo
const int redPin = 11;
const int greenPin = 10;
const int bluePin = 9;
void setup() {
pinMode(redPin, OUTPUT);
pinMode(greenPin, OUTPUT);
pinMode(bluePin, OUTPUT);
}
void setColor(int red, int green, int blue) {
// escreva cada valor no pino correspondente
}
void loop() {
setColor(HIGH, LOW, LOW); // vermelho
delay(500);
// depois amarelo, verde, ciano, azul e magenta
}
Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.
Todas as lições de Saídas
Pratique por conta própria: Playground de Arduino