Cubo de LED 4x4x4 com Arduino Uno e 1sheeld
Componentes e suprimentos
| × | 1 | ||||
| × | 16 | ||||
| × | 64 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 20 | ||||
| × | 1 |
Sobre este projeto
Este é um incrível cubo de LED 4x4x4 conectado ao seu smartphone usando o 1sheeld e o arduino uno. Deixe a música controlar ...
Como construir o cubo de LED:
Siga as instruções para construir o cubo de LED. Você só precisa da etapa 3, etapa 4 e etapa 5. Você precisa ter alguns conhecimentos básicos de soldagem.
http://www.instructables.com/id/LED-Cube-4x4x4/
** Você não precisará dos componentes do instrutível. para os componentes necessários, consulte a lista de componentes abaixo.
Teoria de operação:
Conectar um fio ao ânodo de cada led é obviamente impraticável.
Uma solução possível é dividir o cubo em 4 camadas, cada camada consiste em 16 LEDs.
Todos os LEDs em uma coluna vertical compartilham um ânodo comum (+).
Todos os LEDs em uma camada horizontal compartilham um cátodo comum (-).
Para acender um determinado LED, basta fornecer GND (-) para a camada que contém aquele LED e, em seguida, fornecer 5V (+) para a coluna que contém aquele LED.
Fiação:
Depois de construir o cubo, você deve ter 16 pinos para controlar as colunas e 4 pinos para controlar as camadas.
Ω - Conecte cada pino de controle da coluna a um 220 Ω resistor em série, o outro terminal do o resistor está conectado ao 1sheeld montado na placa arduino.
*** Tentei conectar os fios diretamente ao 1sheeld e arduino sem resistores e funcionou, mas não é recomendado.
* Os pinos de controle da coluna são conectados aos pinos digitais de 13 a 0 e pinos analógicos A4 e A5. (Consulte o diagrama)
* Cada pino controla os LEDs naquela coluna, então você está livre para conectar as colunas com qualquer combinação.
- Conecte os pinos de controle da camada aos pinos analógicos A0, A1, A2 e A3.
* De acordo com meu código, a camada inferior é conectada ao pino A0, a próxima camada é conectada ao pino A1, a próxima camada é conectada ao pino A2 e a camada superior é conectada ao pino A3. (Consulte o diagrama)
-Depois de conectar os fios ao 1sheeld e ao arduino, agora você pode fazer upload do código e conectar seu smartphone ao 1sheeld.
* Se você não está familiarizado com 1sheeld, pode seguir este tutorial primeiro.
http://1sheeld.com/tutorials/getting-started/
Código
- Arquivo sem título
Arquivo sem título Arduino
/ * Este código usa 1Sheeld e uma placa Arduino Uno para controlar uma matriz LED 4x4x4 usando o microfone do seu smartphone. O circuito:* 64 LEDs formam um cubo 4x4x4 conectado com a placa 1Sheeld e arduino * Os pinos de controle das colunas são conectados aos pinos digitais 0 a 13 e os pinos analógicos A4 e A5 * Os pinos de controle das camadas são conectados aos pinos analógicos A0 a A3. por Hassan Ibrahim * / #define CUSTOM_SETTINGS # define INCLUDE_PUSH_BUTTON_SHIELD # define INCLUDE_MIC_SHIELD / * Inclui a biblioteca 1Sheeld. * / # include// Defina as conexões de pino da matriz de LED (colunas e camada) .// Consulte o tutorial para obter mais ilustração.int coloumn13 =13; // coloumn13 significa a coluna conectada ao pino 13 na placa Arduino int coloumn12 =12; int coloumn11 =11; int coloumn10 =10; int coloumn9 =9; int coloumn8 =8; int coloumn7 =7; int coloumn6 =6; coluna 5 =5; coluna interna 4 =4; coluna interna 3 =3; coluna interna 2 =2; coluna interna 1 =1; coluna interna 0 =0; coluna interna A4 =A4; coluna interna A5 =A5; camada interna A0 =A0; // layerA0 significa a camada conectada ao pino analógico A0 no arduino (a camada mais baixa neste exemplo) int layerA1 =A1; // * Os nomes são escolhidos desta forma para facilitar a modificaçãoint layerA2 =A2; int layerA3 =A3; int counter; // usado para fazer variações nas colunas // a rotina de configuração é executada uma vez quando você pressiona reset:void setup () {// Inicie a comunicação. OneSheeld.begin (); Serial.begin (115200); // inicializa cada pino como uma saída. pinMode (coloumn0, OUTPUT); pinMode (coloumn1, OUTPUT); pinMode (coloumn2, OUTPUT); pinMode (coloumn3, OUTPUT); pinMode (coloumn4, OUTPUT); pinMode (coloumn5, OUTPUT); pinMode (coloumn6, OUTPUT); pinMode (coloumn7, OUTPUT); pinMode (coloumn8, OUTPUT); pinMode (coloumn9, OUTPUT); pinMode (coloumn10, OUTPUT); pinMode (coloumn11, OUTPUT); pinMode (coluna12, SAÍDA); pinMode (coluna13, SAÍDA); pinMode (coloumnA4, OUTPUT); pinMode (coloumnA5, OUTPUT); pinMode (layerA0, OUTPUT); pinMode (layerA1, OUTPUT); pinMode (layerA2, OUTPUT); pinMode (layerA3, OUTPUT);} // fim da configuração // a rotina do loop é executada indefinidamente:void loop () {// todas as colunas são conectadas a 5v (alto). digitalWrite (coluna0, ALTO); digitalWrite (coluna1, ALTO); digitalWrite (coluna2, HIGH); digitalWrite (coluna3, HIGH); digitalWrite (coluna4, HIGH); digitalWrite (coluna 5, ALTO); digitalWrite (coluna6, HIGH); digitalWrite (coluna7, HIGH); digitalWrite (coluna8, HIGH); digitalWrite (coluna9, HIGH); digitalWrite (coluna10, HIGH); digitalWrite (coluna11, HIGH); digitalWrite (coluna 12, HIGH); digitalWrite (coluna 13, HIGH); digitalWrite (coloumnA4, HIGH); digitalWrite (coloumnA5, HIGH); atraso (30); // Obtenha o nível de ruído do microfone e controle quais camadas devem ser conectadas a 0v (baixo). // Cada bloco if-else controla uma camada. // Os valores devem ser calibrados de acordo com o seu celular. / * Para calibrar, toque qualquer tipo de música perto do seu smartphone e observe as leituras do escudo do microfone e escolha os valores apropriados. * / // Neste exemplo, as etapas de 6 fornecem bons resultados if (Mic.getValue ()> 70) // controle da primeira camada {digitalWrite (layerA0, LOW); atraso (50); // Para tornar a exibição mais clara. Ele pode ser modificado para ser mais rápido ou mais lento. } else {digitalWrite (layerA0, HIGH); } if (Mic.getValue ()> 76) // controle da segunda camada {digitalWrite (layerA1, LOW); atraso (50); } else {digitalWrite (layerA1, HIGH); } if (Mic.getValue ()> 82) // controle da terceira camada {digitalWrite (layerA2, LOW); atraso (50); } else {digitalWrite (layerA2, HIGH); } if (Mic.getValue ()> 88) // controle da quarta camada {digitalWrite (layerA3, LOW); atraso (50); } else {digitalWrite (layerA3, HIGH); }} // fim do loop
Cubo de LED com 1sheeld (blindagem de microfone)
Esquemas
Esta imagem não contém os resistores.Processo de manufatura
- Faça um detector de incêndio em minutos com Samsung SAMIIO, Arduino UNO e Raspberry Pi
- DIY LUMAZOID Arduino Music Visualiser
- Jogo Arduino Gyroscope com MPU-6050
- Relógio Arduino com horas de oração islâmica
- Sensor DHT11 com LEDs e um alto-falante Piezo
- Comunicação para surdos-cegos com 1Sheeld / Arduino
- Unopad - Controlador Arduino MIDI com Ableton
- Registrador de dados de temperatura e umidade
- Arduino com Bluetooth para controlar um LED!
- Sensor de obstáculo simples com Arduino