Tentang proyek ini
Dalam video ini saya menjelaskan bagaimana Anda dapat menggunakan Arduino untuk membuat musik hanya dengan menggunakan speaker dan resistor.
Seperti banyak proyek serupa, proyek ini menghasilkan nada yang cocok dengan nada piano. Tidak seperti banyak dari proyek ini, bagaimanapun, yang satu ini tidak menggunakan tabel pencarian untuk mendapatkan frekuensi. Sebaliknya, nada dihasilkan menggunakan perhitungan. Perhitungan menerima angka dari 1 sampai 88. Angka ini berhubungan dengan kunci pada piano 88-tuts.
Pustaka Arduino menawarkan fungsi tone() yang dapat digunakan untuk menghasilkan nada gelombang persegi, tetapi fungsi ini tidak dapat menghasilkan nada di bawah 31Hz. Piano 88-tuts memiliki beberapa nada dengan frekuensi di bawah 31Hz. Jadi, jika Anda ingin menghasilkan nada lengkap dari piano 88 tuts, fungsi tone() tidak dapat digunakan. Sebagai gantinya, saya akan menunjukkan cara menghasilkan nada gelombang persegi menggunakan penundaan sederhana.
Proyek ini bekerja pada tingkat mikrodetik. Satu mikrodetik adalah sepersejuta detik. Proyek ini menggunakan secara ekstensif fungsi delayMicroseconds() perpustakaan Arduino, tetapi di situlah letak masalah kecil lainnya, karena tidak dapat diandalkan untuk menunda lebih dari beberapa ribu mikrodetik, yang terkadang perlu dilakukan oleh proyek ini, jadi saya akan menunjukkan cara mengatasinya ini juga.
Satu hal terakhir tentang proyek ini adalah, terlepas dari masalah yang dijelaskan di atas, kode untuk proyek ini sebenarnya agak kecil, karena kodenya hampir cocok dengan satu layar (resolusi Anda mungkin berbeda!). Agar adil, itu tanpa komentar kode apa pun, tetapi tautan ke kode yang dikomentari sepenuhnya tersedia di deskripsi video.
Saya harap Anda menikmati proyek ini!
Cara menginstal Arduino IDE di Ubuntu
Kode
Kode proyek
Skema
Hubungkan speaker ke GND dan pin 12 melalui resistor.