Съдържание:

Звънец на вратата на Arduino: 5 стъпки
Звънец на вратата на Arduino: 5 стъпки

Видео: Звънец на вратата на Arduino: 5 стъпки

Видео: Звънец на вратата на Arduino: 5 стъпки
Видео: Arduino 64 Steps Sequencer with minimum hardware, adapted from the Drum Sequencer 2024, Ноември
Anonim
Ардуино звънец на вратата
Ардуино звънец на вратата

ДОСТАВКИ

-2 дъски за хляб

-зумер

-жилни проводници

-2 arduino/genuino със захранващи кабели

-rf предавател и приемник

-Натисни бутона

-100 ома резистор

Стъпка 1: Функция

Този проект е работещ звънец на вратата, чиято основна функция е да използва код за програмиране на arduino по начин, при който бутонът с предавателя изпраща сигнал към приемащия край със зумера и приемника, който ще инициира звука на звънеца на вратата с безжична връзка.

Стъпка 2: Стъпка 1: Предавателна платка

Стъпка 1: Предавателна платка
Стъпка 1: Предавателна платка

Как трябва да работи този проект, е да има 2 дъски за хляб и 2 arduiono/genuinos, свързани към тях. за предавателната платка свързваме бутона с резистора 100 ома, свързан към земята, и проводник, свързан към захранването на макета. След това свържете предавателя към макета и свържете бутона към предавателя и arduino, както е показано на снимката.

Стъпка 3: Стъпка 2: Приемна платка

Стъпка 2: Приемна платка
Стъпка 2: Приемна платка

На дъската на приемника е мястото, където се чува зумерът. Свържете един проводник към земята през приемника и свържете проводник към извод по ваш избор, който по -късно можете да персонализирате във вашия код. Свържете приемника към макета и го свържете към arduino, както е показано на снимката.

Стъпка 4: Стъпка 3: Код на предавателя

// ask_transmitter.pde

// -* -режим: C ++ -* -

// Прост пример за това как да използвате RadioHead за предаване на съобщения

// с прост ASK предавател по много прост начин.

// Прилага симплекс (еднопосочен) предавател с модул TX-C1

#включва

#include // Всъщност не се използва, но е необходимо за компилиране

RH_ASK драйвер;

// RH_ASK драйвер (2000, 2, 4, 5); // ESP8266 или ESP32: не използвайте щифт 11

void setup ()

{

Serial.begin (9600); // Само отстраняване на грешки

pinMode (5, INPUT);

ако (! driver.init ())

Serial.println ("init failed");

}

void loop ()

}

if (digitalRead (5) == HIGH) {

const char *msg = "a";

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

driver.waitPacketSent ();

забавяне (200);

}

}

Стъпка 5: Стъпка 4: Код на приемника

#включва

#include // В действителност не се използва, но е необходимо за компилиране

#include "pitches.h" // добавяне на еквивалентна честота за музикална нота

#include "themes.h" // добавяне на бележка и продължителност

RH_ASK драйвер;

void setup ()

{

Serial.begin (9600); // Само отстраняване на грешки

ако (! driver.init ())

Serial.println ("init failed");

иначе

Serial.println ("готово");

RH_ASK драйвер;

void setup ()

{

Serial.begin (9600); // Само отстраняване на грешки

ако (! driver.init ())

Serial.println ("init failed");

иначе

Serial.println ("готово");

}

void Play_Pirates ()

{

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

int noteDuration = 1000/Pirates_duration [thisNote]; // преобразуване на продължителността във време закъснение

тон (8, Pirates_note [thisNote], noteDuration);

int pauseBetweenNotes = noteDuration * 1.05; // Тук 1,05 е темпо, увеличете, за да го играете по -бавно

забавяне (pauseBetweenNotes);

noTone (8); // спиране на музиката на пин 8

}

}

void loop ()

{

uint8_t buf [1];

uint8_t buflen = sizeof (buf);

if (driver.recv (buf, & buflen)) // Не блокиращ

{

Serial.println ("Избрано ->" Той е пират "");

Play_Pirates ();

Serial.println ("стоп");

}

}

Препоръчано: