Você está na página 1de 3

exemplo de programa para Arduino que liga uma

árvore de Natal com 7 variações de padrões de


piscar, alterando-se a cada intervalo de 3
minutos:
// Define os pinos para os LEDs da árvore de Natal
const int led1Pin = 2;
const int led2Pin = 3;
const int led3Pin = 4;
const int led4Pin = 5;
const int led5Pin = 6;
const int led6Pin = 7;
const int led7Pin = 8;

// Array para armazenar os padrões de piscar


int patterns[][7] = {
{1, 0, 0, 0, 0, 0, 0}, // Padrão 1: LED1 ligado, os
demais desligados
{0, 1, 0, 0, 0, 0, 0}, // Padrão 2: LED2 ligado, os
demais desligados
{0, 0, 1, 0, 0, 0, 0}, // Padrão 3: LED3 ligado, os
demais desligados
{0, 0, 0, 1, 0, 0, 0}, // Padrão 4: LED4 ligado, os
demais desligados
{0, 0, 0, 0, 1, 0, 0}, // Padrão 5: LED5 ligado, os
demais desligados
{0, 0, 0, 0, 0, 1, 0}, // Padrão 6: LED6 ligado, os
demais desligados
{0, 0, 0, 0, 0, 0, 1} // Padrão 7: LED7 ligado, os
demais desligados
};
// Tempo de intervalo entre os padrões (em
milissegundos)
const unsigned long interval = 180000; // 3 minutos

void setup() {
// Inicializa os pinos dos LEDs como saídas
pinMode(led1Pin, OUTPUT);
pinMode(led2Pin, OUTPUT);
pinMode(led3Pin, OUTPUT);
pinMode(led4Pin, OUTPUT);
pinMode(led5Pin, OUTPUT);
pinMode(led6Pin, OUTPUT);
pinMode(led7Pin, OUTPUT);
}

void loop() {
// Para cada padrão de piscar
for (int i = 0; i < 7; i++) {
// Ativa o padrão atual
activatePattern(patterns[i]);
// Aguarda o intervalo
delay(interval);
}
}

// Função para ativar um padrão de piscar


void activatePattern(int pattern[]) {
digitalWrite(led1Pin, pattern[0]);
digitalWrite(led2Pin, pattern[1]);
digitalWrite(led3Pin, pattern[2]);
digitalWrite(led4Pin, pattern[3]);
digitalWrite(led5Pin, pattern[4]);
digitalWrite(led6Pin, pattern[5]);
digitalWrite(led7Pin, pattern[6]);
}

Neste código, os LEDs da árvore de Natal estão


conectados aos pinos 2 a 8 do Arduino. Certifique-se
de ajustar os pinos de acordo com a sua montagem
física.
O programa define 7 padrões diferentes de piscar,
representados por arrays de inteiros. Cada padrão
tem apenas um LED aceso enquanto os outros
estão apagados. Em seguida, o programa percorre
cada padrão, ativando-o e aguardando um intervalo
de 3 minutos antes de passar para o próximo
padrão. Este ciclo continua indefinidamente,
proporcionando 7 variações de padrões de piscar
durante um período de 3 minutos cada.

Você também pode gostar