Índice:

Campainha Arduino: 5 etapas
Campainha Arduino: 5 etapas

Vídeo: Campainha Arduino: 5 etapas

Vídeo: Campainha Arduino: 5 etapas
Vídeo: Projeto: Campainha elétrica com Xbee 2024, Novembro
Anonim
Arduino Doorbell
Arduino Doorbell

SUPRIMENTOS

-2 tábuas de pão

-buzzer

-jumper fios

-2 arduino / genuino com cabos de alimentação

-rf transmissor e receptor

-botão de apertar

Resistor de -100 ohm

Etapa 1: Função

Este projeto é uma campainha funcional cuja função principal é usar o código para programar o arduino de forma que o botão com o transmissor envie um sinal para a extremidade receptora com a campainha e o receptor que iniciará o som da campainha com uma conexão sem fio.

Etapa 2: Etapa 1: Placa do transmissor

Etapa 1: Placa do transmissor
Etapa 1: Placa do transmissor

Este projeto deve funcionar com 2 placas de pão e 2 arduiono / genuinos conectados a elas. para a placa do transmissor, conectamos o botão de pressão com o resistor de 100 ohm conectado ao aterramento e um fio conectado à alimentação da placa de ensaio. Em seguida, conecte o transmissor à placa de ensaio e conecte o botão ao transmissor e ao arduino, conforme mostrado na imagem.

Etapa 3: Etapa 2: Placa receptora

Etapa 2: Placa receptora
Etapa 2: Placa receptora

Na placa receptora é onde a campainha vai. Conecte um fio ao terra através do receptor e conecte um fio a um pino de sua escolha, que você pode personalizar posteriormente em seu código. Conecte o receptor à placa de ensaio e conecte-o ao arduino conforme mostrado na imagem.

Etapa 4: Etapa 3: Código do transmissor

// ask_transmitter.pde

// - * - modo: C ++ - * -

// Exemplo simples de como usar RadioHead para transmitir mensagens

// com um transmissor ASK simples de uma forma muito simples.

// Implementa um transmissor simplex (unidirecional) com um módulo TX-C1

#incluir

#include // Na verdade não usado, mas necessário para compilar

Driver RH_ASK;

// driver RH_ASK (2000, 2, 4, 5); // ESP8266 ou ESP32: não use o pino 11

void setup ()

{

Serial.begin (9600); // Somente depuração

pinMode (5, INPUT);

if (! driver.init ())

Serial.println ("falha de inicialização");

}

void loop ()

}

if (digitalRead (5) == HIGH) {

const char * msg = "a";

driver.send ((uint8_t *) msg, strlen (msg));

driver.waitPacketSent ();

atraso (200);

}

}

Etapa 5: Etapa 4: Código do receptor

#incluir

#include // Não é realmente usado, mas necessário para compilar

#include "pitches.h" // adiciona frequência equivalente para nota musical

#include "themes.h" // adicione o valor da nota e a duração

Driver RH_ASK;

void setup ()

{

Serial.begin (9600); // Somente depuração

if (! driver.init ())

Serial.println ("falha de inicialização");

outro

Serial.println ("concluído");

Driver RH_ASK;

void setup ()

{

Serial.begin (9600); // Somente depuração

if (! driver.init ())

Serial.println ("falha de inicialização");

outro

Serial.println ("concluído");

}

void Play_Pirates ()

{

for (int thisNote = 0; thisNote <(sizeof (Pirates_note) / sizeof (int)); thisNote ++) {

int noteDuration = 1000 / Pirates_duration [thisNote]; // converter duração em atraso

tom (8, Pirates_note [thisNote], noteDuration);

int pauseBetweenNotes = noteDuration * 1,05; // Aqui 1.05 é o tempo, aumente para reproduzi-lo mais devagar

atraso (pauseBetweenNotes);

noTone (8); // parar a música no pino 8

}

}

void loop ()

{

uint8_t buf [1];

uint8_t buflen = sizeof (buf);

if (driver.recv (buf, & buflen)) // Sem bloqueio

{

Serial.println ("Selecionado -> 'Ele é um pirata'");

Play_Pirates ();

Serial.println ("parar");

}

}

Recomendado: