Isi kandungan:
Video: Arduino - Piezo Three Button Piano: 4 Langkah
2024 Pengarang: John Day | [email protected]. Diubah suai terakhir: 2024-01-30 11:09
Piano tiga butang adalah projek untuk pemula dengan beberapa pengalaman menggunakan Arduino.
Saya secara tidak sengaja berjaya membuat ini sambil bermain-main dengan piezo buzzer untuk pertama kalinya. Ia sangat kuat! Semasa mencuba pelbagai kaedah untuk menjadikan buzzer lebih senyap dan mencuba frekuensi yang berbeza dengan menggunakan fungsi nada () dan noTone (), saya menyedari bahawa sangat seronok untuk mencuba dan mencampurkan buzzer piezo bersama dengan komponen kegemaran saya yang lain dari Arduino saya kit: butang dan potensiometer.
Bahan yang diperlukan termasuk:
- 1 Arduino
- 1 Papan Roti
- 1 Kabel USB
- Kawat Jumper (pelbagai warna)
- 1 330 Kilo-ohm Perintang
- 1 Buzzer Piezo
- 3 Butang Tekan
- 1 Potensiometer
Langkah 1: Piezo Buzzer
Untuk memulakan, sediakan piezo di papan roti Arduino. Sebelahnya (sebelah kaki yang lebih pendek) perlu berlari ke tanah. Bahagian lain (sisi kaki yang lebih panjang) perlu disambungkan ke pin input digital. Saya memilih untuk menyambungkannya ke 8.
Langkah 2: Butang Tekan
Seterusnya, sudah tiba masanya untuk mengatur butang tekan. Seperti piezo, butang tekan perlu disambungkan ke tanah dan ke pin input digital.
Langkah 3: Potensiometer
Langkah terakhir dalam binaan fizikal ialah potensiometer. Potensiometer terdapat dalam beberapa bentuk yang berbeza. Kami akan menggunakan potensiometer sebagai pembahagi voltan, jadi ketiga kakinya perlu disambungkan.
Kaki Kanan: Bar Negatif (Tanah)
Kaki Tengah: Pin Analog 0
Kaki Kiri: Bar Positif
Langkah 4: Kod
Semasa menulis kod untuk projek ini, saya merujuk maklumat mengenai beberapa jenis fungsi tertentu:
nada ()
noTone () (Saya tidak menggunakan yang satu ini. Sebagai gantinya, saya menetapkan frekuensi menjadi "0".)
peta ()
Rujukan lain yang indah untuk pengguna kali pertama Piezo Buzzers boleh didapati di sini. Walaupun idea untuk menukar suara buzzer piezo nampaknya sederhana, pada mulanya boleh menjadi agak luar biasa!
Fungsi nada () dapat dipecah menjadi tiga bahagian:
- Pin (pin yang disambungkan oleh piezo buzzer)
- Kekerapan (frekuensi bunyi dalam hertz)
- Durasi (jangka masa bunyi diberikan dalam milisaat)
Pada dasarnya, ia kelihatan seperti ini: nada (pin, frekuensi, jangka masa). Komponen ketiga (durasi) adalah pilihan, sementara dua yang lain diperlukan agar buzzer berfungsi. Komponen "frekuensi" fungsi nada adalah apa yang dapat dianggap sebagai "suara" yang dihasilkan oleh bel.
Anda juga akan melihat bahawa kod tersebut mempunyai dua kod bit yang lain. Terdapat beberapa pernyataan if / else yang disiapkan untuk memberitahu Arduino apa yang harus dilakukan jika butang yang berbeza ditekan serta untuk mengaturnya dengan "frekuensi = 0" dalam situasi ketika tidak ada butang yang ditekan. Dalam pernyataan if / else, fungsi peta () digunakan untuk memetakan skala potensiometer ke sekumpulan frekuensi. Ini boleh diubah! Main-main dengan nilai frekuensi yang berbeza untuk melihat bunyi yang berbeza yang anda dapat dari piezo.
Lihat kod yang saya gunakan untuk membuat piano tiga butang di sini atau periksa di bawah.
int piezoPin = 8; // Sediakan pin yang disambungkan ke Piezo.
int sensorPin = 0; // Siapkan pin yang disambungkan ke sensor (potensiometer). int sensorValue = 0;
butang int1 = 5; // Sediakan pin input yang disambungkan ke butang.
butang int2 = 4; butang int3 = 3;
frekuensi int = 0;
const int delayTime = 500; // Sediakan pemalar untuk pemboleh ubah masa tunda dalam fungsi nada ().
batal persediaan () {
pinMode (butang1, INPUT_PULLUP); pinMode (butang2, INPUT_PULLUP); pinMode (butang3, INPUT_PULLUP); }
gelung kosong () {
sensorValue = analogRead (sensorPin); // Baca sensor. // Petakan nilai potensiometer yang berlainan dengan satu set frekuensi untuk setiap tiga butang. jika (digitalRead (butang1) == RENDAH) {frekuensi = peta (sensorValue, 0, 1023, 400, 499); } lain jika (digitalRead (butang2) == RENDAH) {frekuensi = peta (sensorValue, 0, 1023, 500, 599); } lain jika (digitalRead (button3) == RENDAH) {frekuensi = peta (sensorValue, 0, 1023, 600, 699); } lain {frekuensi = 0; } nada (piezoPin, frekuensi, delayTime); // Tetapkan fungsi nada () dengan pemboleh ubah. }
Disyorkan:
Three Axial Tow Truck (cnc) - PLC: 4 Langkah
Three Axial Tow Truck (cnc) - PLC: Hello Disertasi ini berkaitan dengan pengaturcaraan PLC-PS3 KLOKNER MOELLER, dengan kedua-dua tujuan fungsi model mekanikal, yang disebut kren pengangkutan tiga paksi dan dalam kes kami pengangkutan muatan logam. Ia adalah inti
Arduino Control DC Motor Speed and Direction Menggunakan Potensiometer, OLED Display & Button: 6 Langkah
Arduino Control DC Motor Speed and Direction Menggunakan Potentiometer, OLED Display & Button: Dalam tutorial ini kita akan belajar bagaimana menggunakan pemandu L298N DC MOTOR CONTROL dan potensiometer untuk mengawal kelajuan dan arah motor DC dengan dua butang dan memaparkan nilai potensiometer pada Paparan OLED. Tonton video demonstrasi
Arduino Count Down W / Rest Button: 4 Langkah
Arduino Count Down W / Rest Button: Instructable ini akan mengajar anda cara membuat pemasa undur menggunakan Paparan 4-Digit 7-Segmen yang boleh diset semula dengan butang. Saya mendapat idea untuk membuat ini kerana semasa membuat paparan 1 digit 7-segmen di kelas, saya mahu membuat sesuatu
Three Push ON - Push OFF Latching Circuits: 3 Langkah
Three Push ON - Push OFF Latching Circuits: Flip-flop atau latch adalah litar yang mempunyai dua keadaan stabil dan boleh digunakan untuk menyimpan maklumat keadaan. Litar boleh dibuat untuk mengubah keadaan dengan menggunakan isyarat (dalam kes ini, dengan menekan butang). Di sini, saya akan menunjukkan tiga cara yang berbeza untuk
Tikus Doodler RGB Sun Three Button: 11 Langkah (dengan Gambar)
Tikus Sun Three Button RGB Light Doodler .: Saya bertemu Lori Stotko dan Stuart Nafey http://lightdoodles.com/ pada tahun ini Makers Faire Auditions. Mereka mempunyai pena Cahaya yang sejuk yang mereka buat untuk mencoret-coret. Saya memutuskan untuk membuat beberapa ketika saya pulang ke rumah, dan teringat tetikus tua tiga butang Matahari yang saya