Daftar Isi:
2025 Pengarang: John Day | [email protected]. Terakhir diubah: 2025-01-13 06:57
PERSEDIAAN
-2 papan roti
-bel
-kabel jumper
-2 arduino/genuino dengan kabel listrik
-rf pemancar dan penerima
-tekan tombol
-100 ohm resistor
Langkah 1: Fungsi
Proyek ini adalah bel pintu yang berfungsi yang fungsi utamanya adalah menggunakan kode untuk memprogram arduino dengan cara push button dengan pemancar mengirim sinyal ke penerima dengan buzzer dan penerima yang akan memulai suara buzz bel pintu dengan koneksi nirkabel.
Langkah 2: Langkah 1: Papan Pemancar
Bagaimana proyek ini seharusnya bekerja adalah memiliki 2 papan roti dan 2 kabel arduiono/genuino ke mereka. untuk papan pemancar kami menghubungkan tombol tekan dengan resistor 100 ohm yang terhubung ke ground dan kabel yang terhubung ke daya di papan tempat memotong roti. Kemudian sambungkan pemancar ke papan tempat memotong roti dan sambungkan tombol ke pemancar dan arduino seperti yang ditunjukkan pada gambar.
Langkah 3: Langkah 2: Papan Penerima
Di papan penerima adalah tempat bel berbunyi. Hubungkan satu kabel ke ground melalui receiver dan sambungkan kabel ke pin pilihan Anda yang nantinya dapat Anda sesuaikan dalam kode Anda. Hubungkan penerima ke papan tempat memotong roti dan sambungkan ke arduino seperti yang ditunjukkan pada gambar.
Langkah 4: Langkah 3: Kode Pemancar
// ask_transmitter.pde
// -*- mode: C++ -*-
// Contoh sederhana bagaimana menggunakan RadioHead untuk mengirimkan pesan
// dengan pemancar ASK sederhana dengan cara yang sangat sederhana.
// Menerapkan pemancar simpleks (satu arah) dengan modul TX-C1
#termasuk
#include // Tidak benar-benar digunakan tetapi perlu dikompilasi
pengemudi RH_ASK;
// RH_ASK driver(2000, 2, 4, 5); // ESP8266 atau ESP32: jangan gunakan pin 11
batalkan pengaturan()
{
Serial.begin(9600); // Debug saja
pinMode(5, INPUT);
jika (!driver.init())
Serial.println("init gagal");
}
lingkaran kosong()
}
if(DigitalBaca(5)==TINGGI){
const char *msg = "a";
driver.send((uint8_t *)msg, strlen(msg));
driver.waitPacketSent();
penundaan (200);
}
}
Langkah 5: Langkah 4: Kode Penerima
#termasuk
#include // Sebenarnya tidak digunakan tetapi perlu dikompilasi
#include "pitches.h" //tambahkan frekuensi yang setara untuk not musik
#include "themes.h" //tambahkan nilai dan durasi Catatan
pengemudi RH_ASK;
batalkan pengaturan()
{
Serial.begin(9600); // Debug saja
jika (!driver.init())
Serial.println("init gagal");
lain
Serial.println("selesai");
pengemudi RH_ASK;
batalkan pengaturan()
{
Serial.begin(9600); // Debug saja
jika (!driver.init())
Serial.println("init gagal");
lain
Serial.println("selesai");
}
batalkan Play_Pirates()
{
for (int thisNote = 0; thisNote < (sizeof(Pirates_note)/sizeof(int)); thisNote++) {
int noteDuration = 1000 / Pirates_duration[thisNote];//konversi durasi ke waktu tunda
tone(8, Pirates_note[Catatan ini], catatanDurasi);
int pauseBetweenNotes = noteDuration * 1.05; //Di sini 1,05 adalah tempo, naikkan untuk memainkannya lebih lambat
delay(jedaAntaraCatatan);
tidakNada(8); //hentikan musik di pin 8
}
}
lingkaran kosong()
{
uint8_t buf[1];
uint8_t buflen = ukuran(buf);
if (driver.recv(buf, &buflen)) // Non-blocking
{
Serial.println("Dipilih -> 'Dia Bajak Laut'");
Play_Pirates();
Serial.println("berhenti");
}
}