Daftar Isi:
- Langkah 1: Bahan yang Dibutuhkan
- Langkah 2: Membangun Waktu
- Langkah 3: Modul Sensor Suara dan LED RGB
- Langkah 4: Kode
- Langkah 5: Pikiran Terakhir
Video: Modul Keypad Piano Dengan LED RGB: 5 Langkah (dengan Gambar)
2024 Pengarang: John Day | [email protected]. Terakhir diubah: 2024-01-30 09:56
Pendahuluan
Halo tuan dan nyonya, selamat datang di instruksi pertama saya! Hari ini, saya akan mengajari Anda cara membuat piano dengan komponen utama modul keypad dan buzzer piezo dan membuatnya bisa memainkan DO-RE-MI dan sebagainya.
Modul keypad yang paling sering dimaksudkan adalah untuk menjadi keypad yang dikombinasikan dengan arduino RFID untuk membuat brankas untuk barang-barang berharga. Dalam hal ini saya mengganti keypad, alih-alih melindungi sesuatu yang saya putuskan untuk digunakan untuk berbicara tentang kegembiraan dan musik yang sederhana.
Konsep Ide
Konsep ide penciptaan ini, berkembang dari memori bahagia sederhana saat bermain gambang ketika saya masih muda di kelas musik. Jumlah kegembiraan dan kegembiraan yang mengalir di seluruh tubuh saya mencapai puncaknya, maksud saya setiap anak mudah puas dan kepuasan saya bermain gambang.
Riset
Setelah bohlam ide Anda di atas menyala, sedikit riset harus dilakukan. Setelah menjelajahi web selama beberapa waktu, saya dapat menemukan ide yang awalnya saya pikirkan! Modul keypad berubah menjadi piano, seseorang telah membuat video proyek yang sama di sini. Berpikir ke depan, saya perlu menambahkan komponen terpisah yang akan lebih meningkatkan proyek tetapi membuatnya lebih menarik dan dapat menyebutnya milik saya.
Langkah 1: Bahan yang Dibutuhkan
Daftar Bahan
- Piezo Buzzer 1x
- Modul keypad 4x4 1x
- Arduino Uno 1x
- Kabel USB 2.0 tipe A/B 1x
- Modul Sensor Suara 1x
- LED RGB 1x
- Resistor 330 ohm 3x
- Kawat jumper jantan ke betina 8x
- Kawat jumper jantan ke jantan 4x
- 3 pin Kabel jumper male to female 1x
Daftar bahan sesuai dengan gambar di atas.
Langkah 2: Membangun Waktu
Modul Keypad 4x4 & Piezo Buzzer
Teori
Karena modul keypad 4x4 dan buzzer piezo berisi begitu banyak input pin individual dan saya akan memutuskan untuk membagi komponen yang digunakan menjadi dua pasang. Berfokus pada keypad, biasanya digunakan sebagai input. The SunFounder 4*4 Matrix Keypad Module adalah matriks non-encoded keypad yang terdiri dari 16 tombol secara paralel, Tombol dari setiap baris dan kolom dihubungkan melalui pin luar – pin Y1-Y4 seperti yang berlabel di samping mengontrol baris, ketika X1- X4, kolom.
Tujuan
Tujuan dari komponen ini untuk keseluruhan proyek, adalah untuk memungkinkan pengguna menekan tombol yang diatur ke suara tertentu yang dibuat oleh buzzer piezo melalui frekuensi dalam hertz.
Pin Modul Matriks - Pin Arduino
- 4 - 2
- 3 - 3
- 2 - 4
- 1 - 5
- 5 - 6
- 6 - 7
- 7 - 8
- 8 - 13
Piezo Buzzer - Pin Arduino
Hitam - GND
Kekuatan merah
Tugas saya yang paling sulit dalam build ini adalah mencari tahu di mana setiap kabel dicolokkan. Di atas saya berikan kepada Anda cara cepat dan mudah cara lokasi kawat, asalkan mengikuti dari atas ke bawah, ujungnya luangkan waktu Anda dan pastikan setiap pin dimasukkan dengan benar ke slot yang tepat.
*Tip adalah mengikuti di mana setiap kabel berada dari satu ujung ke ujung lainnya.
Semua sketsa Tinkercad dari kabel komponen tertentu diberi kode warna dengan benar, jadi ikuti dengan cermat
Langkah 3: Modul Sensor Suara dan LED RGB
Modul Sensor Suara dan LED RGB
Teori
Modul sensor suara memungkinkan Anda mendeteksi ketika suara telah melampaui titik setel yang Anda pilih. Suara dideteksi melalui mikrofon dan dimasukkan ke dalam op amp LM393. Setelah tingkat suara melebihi titik setel, LED pada modul akan menyala dan outputnya.
Tujuan
Tujuan dari komponen ini untuk keseluruhan proyek, adalah untuk mendapatkan pembacaan suara/volume dari modul sensor suara dan melalui pembacaan itu, LED RGB akan mengaktifkan warna yang benar terkait dengan suara.
Modul Sensor Suara - Pin Arduino (Gunakan Kawat Jumper 3 Pin)
- Keluaran - Pin Analog A0
- GND - Setiap slot pin GND terbuka
- VCC - 3V
RGB Common Anode (+) LED - Pin Arduino
- Merah - 9
- Daya - 5V
- Hijau - 10
- Biru - 11
Ingatlah untuk memasang kabel, masing-masing kabel melalui resistor 330 ohm. Gunakan gambar di atas sebagai referensi.
Tugas saya yang paling sulit dalam build ini adalah mencari tahu di mana setiap kabel dicolokkan. Di atas saya berikan kepada Anda dan cara cepat dan mudah menuju lokasi kabel, selama mengikuti dari atas ke bawah, tipnya adalah meluangkan waktu Anda dan memastikan setiap pin dimasukkan dengan benar ke slot yang tepat untuk mencegah debugging di masa mendatang.
*Tip adalah mengikuti di mana setiap kawat dimasukkan dengan cara apa pun
Semua sketsa Tinkercad dari kabel komponen tertentu diberi kode warna dengan benar, jadi ikuti terus
Langkah 4: Kode
Kode
Kode ini memungkinkan semua komponen untuk bekerja sama dengan menggunakan fungsi yang baru didefinisikan untuk memuat semua banyak kontrol satu komponen yang memiliki banyak variabel yang dapat diubah komponen tersebut adalah RGB led dan menggunakan warna rgb untuk mengubah warna saat dan piezo buzzer dan suara itu akan membuat tergantung pada tombol push.
Yang harus ada dalam kode ini adalah perpustakaan keypad
Tautan di sini:
Setelah diunduh tambahkan perpustakaan baru ke dalam arduino, setelah itu masukkan satu baris kode yang diperlukan untuk mengaktifkannya.
Kesulitan yang saya alami selama kode adalah di mana menempatkan fungsi yang baru didefinisikan karena melalui coba-coba saya tahu itu harus dalam pengaturan dan bukan loop.
Kode
#include // Pustaka Keypad
int pin hijau = 11; //RGB Green Pin terhubung ke digital pin 9
int pin merah= 10; //RGB Pin Merah terhubung ke pin digital 9
int pin biru = 9; //RGB Blue Pin terhubung ke pin digital 9 int speakerPin = 12; // speaker terhubung ke pin digital 12 const byte ROWS = 4; // empat baris const byte COLS = 4; // empat kolom const int soundPin = A0; //sensor suara terpasang ke A0
kunci karakter[ROWS][COLS] = {
{'a', 'b', 'c', 'd'}, {'e', 'f', 'g', 'h'}, {'i', 'j', 'k', ' l'}, {'m', 'n', 'o', 'p'} }; // Visualisasi modul keypad
byte rowPins[ROWS] = {2, 3, 4, 5}; // sambungkan ke pinout baris keypad
byte colPins[COLS] = {6, 7, 8, 13}; // sambungkan ke pinout kolom keypad
Keypad keypad = Keypad (makeKeymap(keys), rowPins, colPins, ROWS, COLS); // Membuat kunci
batalkan pengaturan(){
pinMode(pin speaker, OUTPUT); // setel speakerPin menjadi output
pinMode(pin merah, OUTPUT); // mengatur pin merah menjadi pinMode keluaran(greenPin, OUTPUT); // menetapkan pin hijau menjadi pinMode keluaran(bluePin, OUTPUT); // menetapkan pin biru menjadi output
Serial.begin (9600);
} void setColor(int red, int green, int blue) // Fungsi baru yang ditetapkan untuk memungkinkan RGB menampilkan warna melalui kode RGB { #ifdef COMMON_ANODE red = 255 - red; hijau = 255 - hijau; biru = 255 - biru; #endif analogWrite(redPin, red); analogWrite(pin hijau, hijau); analogWrite(bluePin, biru); }
void beep (unsigned char speakerPin, int frequencyInHertz, long timeInMilliseconds){ // fungsi penghasil suara
intx; lama delayAmount = (panjang)(1000000/frekuensiInHertz); long loopTime = (panjang)((timeInMilliseconds*1000)/(delayAmount*2)); untuk (x=0;x
lingkaran kosong (){
kunci char = keypad.getKey(); int value = analogRead(soundPin);//membaca nilai A0 Serial.println(value);//mencetak nilai
if (kunci != NO_KEY) {
Serial.println(kunci); } if (kunci=='a'){ bip(pin speaker, 2093, 100); setColor(218, 112, 214); } if (kunci=='b'){ bip(pin speaker, 2349, 100); setColor(218, 112, 214); } if (kunci=='c'){ bip(pin speaker, 2637, 100); setColor(218, 112, 214); } if (kunci=='d'){ bip(pin speaker, 2793, 100); setColor(218, 112, 214); } if (kunci=='e'){ bip(pin speaker, 3136, 100); setColor(218, 112, 214); } if (kunci=='f'){ bip(pin speaker, 3520, 100); setColor(218, 112, 214); } if (kunci=='g'){ bip(pin speaker, 3951, 100); setColor(218, 112, 214); } if (kunci=='h'){ bip(pin speaker, 4186, 100); setColor(218, 112, 214); } if (kunci=='i'){ bip(pin speaker, 2093, 100); setColor(230, 230, 0); } if (kunci=='j'){ bip(pin speaker, 2349, 100); setColor(180, 255, 130); } if (kunci=='k'){ bip(pin speaker, 2637, 100); setColor(130, 255, 130); } if (kunci=='l'){ bip(pin speaker, 2739, 100); setColor(130, 220, 130); } if (kunci=='m'){ bip(pin speaker, 3136, 100); setWarna (0, 255, 255); } if (kunci=='n'){ bip(pin speaker, 3520, 100); setColor(0, 220, 255); } if (kunci=='o'){ bip(pin speaker, 3951, 100); setWarna (0, 69, 255); } if (kunci=='p'){ bip(pin speaker, 4186, 100); setWarna(255, 0, 255); } }
Langkah 5: Pikiran Terakhir
Pikiran Akhir
Pikiran akhir dari proyek ini adalah tujuan yang dimaksudkan adalah untuk menjadi mainan, untuk membawa kesenangan dan kegembiraan yang sederhana. Karena proyek ini sudah selesai dan sedang dikerjakan, saya percaya build ini dan dapat dilanjutkan dengan komponen yang mungkin lebih banyak seperti elemen perekaman, atau elemen copy/simon says, atau bahkan LCD dengan not yang muncul untuk memainkan lagu tertentu.
Saya ingin mengetahui pendapat Anda tentang Modul Keypad, komponen apa yang menurut Anda dapat ditambahkan. Apakah Anda akan menggunakannya di salah satu proyek Anda? Silakan posting ide Anda di bagian komentar di bawah.
Pastikan untuk membagikan jika Anda menikmati proyek arduino ini.
Direkomendasikan:
Menghubungkan Keypad Dengan Arduino. [Metode Unik]: 7 Langkah (dengan Gambar)
Menghubungkan Keypad Dengan Arduino. [Metode Unik]: Halo, dan selamat datang di instruksi pertama saya! :) Dalam instruksi ini saya ingin berbagi perpustakaan yang luar biasa untuk menghubungkan keyboard dengan arduino - 'Perpustakaan kata sandi' termasuk 'Perpustakaan Keypad'. Perpustakaan ini menyertakan fitur terbaik yang kami
Piano Keypad: 3 Langkah
Piano Keypad: Tutorial ini akan menunjukkan cara membuat piano 8 not dasar menggunakan keypad 4x4 dan buzzer pasif. Dalam proyek ini, tombol 1 hingga 8 akan memainkan nada pada piano, dan tombol A-D akan memainkan melodi yang telah ditentukan sebelumnya
1602 Modul Perisai Keypad LCD Dengan Ransel I2C: 6 Langkah
1602 Modul Pelindung Papan Tombol LCD Dengan Ransel I2C: Sebagai bagian dari proyek yang lebih besar, saya ingin memiliki layar LCD dan papan tombol untuk navigasi beberapa menu sederhana. Saya akan menggunakan banyak port I/O pada Arduino untuk pekerjaan lain, jadi saya menginginkan antarmuka I2C untuk LCD. Jadi saya membeli beberapa perangkat keras
Setup Modul DS1302 RTC Dengan Keypad + Arduino + LCD: 3 Langkah
Setup Modul DS1302 RTC Dengan Keypad + Arduino + LCD: Halo, saya baru saja membuat proyek kecil ini, saya harap Anda menyukainya, seperti judulnya, ini tentang cara menggunakan keypad untuk mengatur DS1302, ini adalah salah satu proyek dasar yang Anda dapat tambahkan ke proyek Anda sendiri jika Anda ingin menambahkan modul atau fungsi lain… Ini v
Antarmuka Keypad Dengan 8051 dan Menampilkan Nomor Keypad dalam 7 Segmen: 4 Langkah (dengan Gambar)
Antarmuka Keypad Dengan 8051 dan Menampilkan Nomor Keypad dalam 7 Segmen: Dalam tutorial ini saya akan memberi tahu Anda tentang bagaimana kita dapat menghubungkan keypad dengan 8051 dan menampilkan nomor keypad dalam tampilan 7 segmen