Cubos de Leds
Cubos de Leds
Um cubo de leds é formado por camadas e colunas de leds. Para acender um led é preciso ligar uma coluna e uma camada.
Cubo de leds 3x3x3
Faça o seu cubo utilizando um gabarito para alunhar todos os leds de cada camada:
Para montar um cubo de leds você precisa fazer um gabarito para posicionar os leds antes de soldar, com o gabarito todos os leds ficarão alinhados.
/* CÓDIGO DO CUBO DE LEDS
Adaptação Prof. César Bastos
contato: cesar.bastos@prof.etefv.faetec.rj.gov.br
04 de julho de 2016
este programa gira as colunas externas de leds
*/
//DESCRIÇÃO DA PLACA CWM-001
//Indicação dos pinos dos leds
int led1 = 2; // Coluna 1
int led8 = 12; // Coluna 8
int led7 = 11; // Coluna 7
int led2 = 4; // Coluna 2
int led9 = 13; // Coluna 9
int led6 = 10; // Coluna 6
int led3 = 7; // Coluna 3
int led4 = 8; // Coluna 4
int led5 = 9; // Coluna 5
int cam1 = 3; // Camada 1
int cam2 = 5; // Camada 2
int cam3 = 6; // Camada 3
// configuração de todos os pinos como de saída
void setup(){
pinMode(led1, OUTPUT);
pinMode(led2, OUTPUT);
pinMode(led3, OUTPUT);
pinMode(led4, OUTPUT);
pinMode(led5, OUTPUT);
pinMode(led6, OUTPUT);
pinMode(led7, OUTPUT);
pinMode(led8, OUTPUT);
pinMode(led9, OUTPUT);
pinMode(cam1, OUTPUT);
pinMode(cam2, OUTPUT);
pinMode(cam3, OUTPUT);
}
// início do Loop para repetição das sequências
void loop(){
//acende a coluna 1
digitalWrite(cam1,HIGH);
digitalWrite(led1,HIGH);
digitalWrite(cam2,HIGH);
digitalWrite(led1,HIGH);
digitalWrite(cam3,HIGH);
digitalWrite(led1,HIGH);
delay (100);
//apaga a coluna 1
digitalWrite(cam1,LOW);
digitalWrite(led1,LOW);
digitalWrite(cam2,LOW);
digitalWrite(led1,LOW);
digitalWrite(cam3,LOW);
digitalWrite(led1,LOW);
delay (100);
//acende a coluna 2
digitalWrite(cam1,HIGH);
digitalWrite(led2,HIGH);
digitalWrite(cam2,HIGH);
digitalWrite(led2,HIGH);
digitalWrite(cam3,HIGH);
digitalWrite(led2,HIGH);
delay (100);
//apaga a coluna 2
digitalWrite(cam1,LOW);
digitalWrite(led2,LOW);
digitalWrite(cam2,LOW);
digitalWrite(led2,LOW);
digitalWrite(cam3,LOW);
digitalWrite(led2,LOW);
delay (100);
//acende a coluna 3
digitalWrite(cam1,HIGH);
digitalWrite(led3,HIGH);
digitalWrite(cam2,HIGH);
digitalWrite(led3,HIGH);
digitalWrite(cam3,HIGH);
digitalWrite(led3,HIGH);
delay (100);
//apaga a coluna 3
digitalWrite(cam1,LOW);
digitalWrite(led3,LOW);
digitalWrite(cam2,LOW);
digitalWrite(led3,LOW);
digitalWrite(cam3,LOW);
digitalWrite(led3,LOW);
delay (100);
//acende a coluna 4
digitalWrite(cam1,HIGH);
digitalWrite(led4,HIGH);
digitalWrite(cam2,HIGH);
digitalWrite(led4,HIGH);
digitalWrite(cam3,HIGH);
digitalWrite(led4,HIGH);
delay (100);
//apaga a coluna 4
digitalWrite(cam1,LOW);
digitalWrite(led4,LOW);
digitalWrite(cam2,LOW);
digitalWrite(led4,LOW);
digitalWrite(cam3,LOW);
digitalWrite(led4,LOW);
delay (100);
//acende a coluna 5
digitalWrite(cam1,HIGH);
digitalWrite(led5,HIGH);
digitalWrite(cam2,HIGH);
digitalWrite(led5,HIGH);
digitalWrite(cam3,HIGH);
digitalWrite(led5,HIGH);
delay (100);
//apaga a coluna 5
digitalWrite(cam1,LOW);
digitalWrite(led5,LOW);
digitalWrite(cam2,LOW);
digitalWrite(led5,LOW);
digitalWrite(cam3,LOW);
digitalWrite(led5,LOW);
delay (100);
//acende a coluna 6
digitalWrite(cam1,HIGH);
digitalWrite(led6,HIGH);
digitalWrite(cam2,HIGH);
digitalWrite(led6,HIGH);
digitalWrite(cam3,HIGH);
digitalWrite(led6,HIGH);
delay (100);
//apaga a coluna 6
digitalWrite(cam1,LOW);
digitalWrite(led6,LOW);
digitalWrite(cam2,LOW);
digitalWrite(led6,LOW);
digitalWrite(cam3,LOW);
digitalWrite(led6,LOW);
delay (100);
//acende a coluna 7
digitalWrite(cam1,HIGH);
digitalWrite(led7,HIGH);
digitalWrite(cam2,HIGH);
digitalWrite(led7,HIGH);
digitalWrite(cam3,HIGH);
digitalWrite(led7,HIGH);
delay (100);
//apaga a coluna 7
digitalWrite(cam1,LOW);
digitalWrite(led7,LOW);
digitalWrite(cam2,LOW);
digitalWrite(led7,LOW);
digitalWrite(cam3,LOW);
digitalWrite(led7,LOW);
delay (100);
//acende a coluna 8
digitalWrite(cam1,HIGH);
digitalWrite(led8,HIGH);
digitalWrite(cam2,HIGH);
digitalWrite(led8,HIGH);
digitalWrite(cam3,HIGH);
digitalWrite(led8,HIGH);
delay (100);
//apaga a coluna 8
digitalWrite(cam1,LOW);
digitalWrite(led8,LOW);
digitalWrite(cam2,LOW);
digitalWrite(led8,LOW);
digitalWrite(cam3,LOW);
digitalWrite(led8,LOW);
delay (100);
} // final do programa