Daftar Isi:
Video: Arduino - Piano Tiga Tombol Piezo: 4 Langkah
2024 Pengarang: John Day | [email protected]. Terakhir diubah: 2024-01-30 09:55
Piano tiga tombol adalah proyek untuk pemula dengan beberapa pengalaman menggunakan Arduino.
Saya secara tidak sengaja tersapu dalam mencoba membuat ini saat bermain-main dengan piezo buzzer untuk pertama kalinya. Itu sangat keras! Dalam mencoba mencari berbagai metode untuk membuat bel lebih tenang dan mencoba frekuensi yang berbeda menggunakan fungsi tone() dan noTone(), saya menyadari mungkin menyenangkan untuk mencoba dan mencampur buzzer piezo bersama dengan komponen favorit saya yang lain dari Arduino saya kit: tombol dan potensiometer.
Bahan yang dibutuhkan antara lain:
- 1 Arduino
- 1 papan tempat memotong roti
- 1 Kabel USB
- Kabel Jumper (berbagai warna)
- 1 330 Kilo-ohm Resistor
- 1 Piezo Buzzer
- 3 Tombol Tekan
- 1 Potensiometer
Langkah 1: Piezo Buzzer
Untuk memulai, atur piezo di papan tempat memotong roti Arduino. Satu sisinya (sisi kaki yang lebih pendek) perlu berlari ke tanah. Sisi lain (sisi kaki yang lebih panjang) perlu terhubung ke pin input digital. Saya memilih untuk menghubungkannya ke 8.
Langkah 2: Tekan Tombol
Selanjutnya, saatnya untuk mengatur tombol push. Seperti piezo, tombol tekan perlu terhubung ke ground dan ke pin input digital.
Langkah 3: Potensiometer
Langkah terakhir dalam membangun fisik adalah potensiometer. Potensiometer datang dalam beberapa bentuk yang berbeda. Kami akan menggunakan potensiometer sebagai pembagi tegangan, jadi ketiga kakinya harus terhubung.
Kaki Kanan: Bilah Negatif (Ground)
Kaki Tengah: Pin Analog 0
Kaki Kiri: Bar Positif
Langkah 4: Kode
Saat menulis kode untuk proyek ini, saya merujuk informasi tentang beberapa jenis fungsi tertentu:
nada()
noTone() (Saya tidak akhirnya menggunakan yang ini. Saya mengatur frekuensi ke "0" sebagai gantinya.)
peta()
Referensi bagus lainnya untuk pengguna pertama kali Piezo Buzzers dapat ditemukan di sini. Meskipun ide untuk mengubah suara buzzer piezo tampak sederhana, awalnya bisa sedikit berlebihan!
Fungsi tone() dapat dipecah menjadi tiga bagian:
- Pin (pin yang terhubung dengan buzzer piezo)
- Frekuensi (frekuensi suara dalam hertz)
- Duration (durasi suara yang diberikan dalam milidetik)
Pada dasarnya, tampilannya seperti ini: nada(pin, frekuensi, durasi). Komponen ketiga (durasi) adalah opsional, sedangkan dua lainnya diperlukan agar bel berfungsi. Komponen "frekuensi" dari fungsi nada inilah yang dapat dianggap sebagai "suara" yang dihasilkan oleh bel.
Anda juga akan melihat bahwa kode tersebut menampilkan dua bit kode lainnya. Ada beberapa pernyataan if/else yang diatur untuk memberi tahu Arduino apa yang harus dilakukan jika tombol yang berbeda ditekan serta untuk mengaturnya dengan "frekuensi = 0" dalam situasi ketika tidak ada tombol yang ditekan. Dalam pernyataan if/else, fungsi map() digunakan untuk memetakan skala potensiometer ke sekumpulan frekuensi. Ini bisa diubah! Bermain-main dengan nilai frekuensi yang berbeda untuk melihat suara berbeda apa yang bisa Anda dapatkan dari piezo.
Lihat kode yang saya gunakan untuk membuat piano tiga tombol di sini atau periksa di bawah.
int piezoPin = 8; // Siapkan pin yang terhubung ke Piezo.
int sensorPin = 0; //Mengatur pin yang terhubung ke sensor (potensiometer). int sensorNilai = 0;
int tombol1 = 5; //Mengatur pin input yang terhubung ke tombol.
int tombol2 = 4; int tombol3 = 3;
int frekuensi = 0;
const int delayWaktu = 500; //Mengatur konstanta untuk variabel waktu tunda dalam fungsi tone().
batalkan pengaturan() {
pinMode(tombol1, INPUT_PULLUP); pinMode(button2, INPUT_PULLUP); pinMode(button3, INPUT_PULLUP); }
lingkaran kosong() {
sensorValue = analogRead(sensorPin); //Baca sensornya. //Petakan nilai potensiometer yang berbeda ke satu set frekuensi untuk masing-masing dari tiga tombol. if (digitalRead(button1) == LOW) { frekuensi = peta(sensorValue, 0, 1023, 400, 499); } else if (digitalRead(button2) == LOW) { frequency = map(sensorValue, 0, 1023, 500, 599); } else if (digitalRead(button3) == LOW) { frequency = map(sensorValue, 0, 1023, 600, 699); } else { frekuensi = 0; } nada(piezoPin, frekuensi, waktu tunda); //Mengatur fungsi tone() dengan variabel. }
Direkomendasikan:
Tiga Truk Derek Aksial (cnc) - PLC: 4 Langkah
Three Axial Tow Truck (cnc) - PLC: HelloDisertasi ini berkaitan dengan pemrograman PLC-PS3 KLOKNER MOELLER, dengan kedua tujuan fungsionalitas model mekanis, yang disebut derek pengangkut tiga sumbu dan dalam kasus kami pengangkutan muatan logam. Ini ess
Tiga Ayam Prancis di dalam Kotak (dengan Mikro: bit): 10 Langkah
Three French Hens in the Box (dengan Mikro: bit): Kejutkan (atau menakut-nakuti) orang dengan tiga ayam melompat keluar dari kotak. Sentuhan liburan dengan elektronik di Jack-in-the-box klasik. Ketiga ayam ini adalah orang Prancis, tentu saja
Tiga Sirkuit Loudspeaker -- Tutorial Langkah-demi-Langkah: 3 Langkah
Tiga Sirkuit Loudspeaker || Tutorial Langkah-demi-Langkah: Sirkuit Loudspeaker memperkuat sinyal audio yang diterima dari lingkungan ke MIC dan mengirimkannya ke Speaker dari mana audio yang diperkuat diproduksi. Di sini, saya akan menunjukkan kepada Anda tiga cara berbeda untuk membuat Sirkuit Loudspeaker ini menggunakan:
Jam Neopixel Dengan Tiga Cincin Neopixel: 7 Langkah
Jam Neopiksel Dengan Tiga Cincin Neopiksel: Penciptaan jam Neo Piksel yang brilian oleh Steve Manley menggerakkan saya untuk membuat instruksi ini tentang cara membuat jam serupa dengan jumlah uang paling sedikit. (Kebiasaan penting orang Belanda adalah selalu berusaha menghemat uang;-))Saya menemukan bahwa
Tiga Tombol Kain: 6 Langkah (dengan Gambar)
Tiga Tombol Kain: Tombol kain super sederhana ini lembut, menyenangkan untuk ditekan dan dapat berguna saat membuat berbagai prototipe. Mereka semua berbagi dasar atau plus yang sama, tergantung pada apa yang Anda kaitkan. Saya juga menjual kancing kain handmade ini melalui