Isi kandungan:
- Bekalan
- Langkah 1: Menyiapkan Perisai Host Mini USB untuk Memacu Peranti Midi 5V
- Langkah 2: Sambungkan Perisai Mini USB Dengan Arduino Nano Anda
- Langkah 3: Kerepek Sesiapa? Menambah SN76489 Dengan 4MHz Osc. dan 595 Shift Register
- Langkah 4: Cukup Tambah Kod - Menambah Perpustakaan, Menyusun dan Memuat Naik Kod
- Langkah 5: Sambungkan Penguat dan Pembesar Suara, Sambungkan Papan Kekunci USB Midi dan Uji
- Langkah 6: Lengkapkan Litar Dengan Pengatur Voltan 5V, Penyambung 12V, Suis Hidup / Mati Daya dan LED Daya
- Langkah 7: Tutup dalam Kotak, Cat dan Nikmati Sintesis Baru Anda
Video: Mari Bina Sintetik USB MIDI SN76489 Dengan Arduino Nano: 7 Langkah
2024 Pengarang: John Day | [email protected]. Diubah suai terakhir: 2024-01-30 11:08
Pernah mahu membina synthesizer anda sendiri berdasarkan cip lama dari tahun 80an? Mainkan nada polifonik sederhana yang terdengar seperti permainan video Sega Master System dan Megadrive lama ini?
Oleh itu, saya telah memesan beberapa cip SN76489 dari ebay dan antara muka host midi dan mencuba. Saya bukan berjalan-jalan di taman, tetapi, saya menikmati setiap saat.
Mula-mula saya belajar bagaimana untuk menghubungkan antara muka SN76489 secara langsung dan membuat bising dengannya. Terdapat beberapa elemen yang membingungkan untuk ini, tetapi, dengan bantuan The Oddbloke Geek Blog dan beberapa contoh lain, bersama dengan dokumen spesifikasi cip, saya dapat mengembangkan perpustakaan arduino yang sederhana.
Seterusnya, saya harus belajar bagaimana menghubungkan papan kekunci midi dengan perisai host mini USB. Ini tidak begitu sukar, kerana terdapat beberapa dokumentasi yang tersedia, dan perpustakaan yang baik ada dengan contoh yang jelas.
Sebaik sahaja saya memahami cara mengawal cip dan bagaimana antara muka papan kekunci USB midi saya, satu-satunya perkara yang perlu dilakukan ialah menulis beberapa kod yang akan membungkus semua ini dan membolehkan saya menggunakan papan kekunci untuk mengawal cip.
Sepanjang perjalanan, saya mengetahui bahawa bunyi dengan frekuensi lebih rendah daripada yang saya cuba hasilkan kerana nota midi 0x2f tidak terdengar betul, jadi, saya memutuskan untuk menggunakannya untuk membolehkan menghantar bunyi ke penjana bunyi untuk sebarang nota midi antara 0x28 dan 0x2f dan juga membenarkan nota bermain dengan sentuhan arab oriental untuk sesuatu yang lebih rendah daripada midi 0x28.
Melihat ke belakang, sangat menyeronokkan dan sangat menarik untuk dibina.
Saya harap anda merasa seronok dan menarik seperti saya dan bahawa jika anda membuatnya sendiri, anda akan cukup baik untuk berkongsi beberapa gambarnya.
Sekiranya anda menyukai projek ini, sila pilih di bawah untuk membantu memenangi peraduan yang disertainya
Bekalan
Saya telah menambahkan pautan ke bahan yang boleh anda beli untuk projek ini, namun anda dapat menemui banyak item yang tersedia yang dapat anda gesek dari elektronik lama.
Pautan ini adalah pautan afiliasi, jadi, jika anda membeli setelah mengkliknya, saya mendapat sebahagian kecil (bukan untung) dan anda mendapat produk yang sesuai untuk projek ini. Tidak ada bayaran atau kos tambahan untuk menggunakannya, namun anda dapat mencari barang serupa yang dapat menggantinya dengan mudah.
ebay.us/svA4z4 | 1 x papan prestasi
ebay.us/ZyEFNp | 1 x arduino nano
ebay.us/t1zy0v | 1 x perisai mini USB
ebay.to/2QrHl1C | 1 x cip suara SN76489
ebay.us/aaaj8p | 1 x shift shift 595
ebay.us/DSvTHO | 1 x pengayun kristal 4MHz
ebay.us/XQeM0Q | Pengatur voltan 1 x 5V 7805
ebay.us/6R6Fpf | 1 x pendingin untuk pengatur voltan
ebay.us/xkLbn4 | Kapasitor 3 x 10uF
ebay.us/pnm2BH | wayar
ebay.us/PMbUfY | 1 x LED merah untuk kuasa
ebay.us/zokHtc | 1 x 220 ohm perintang untuk menghadkan aliran arus LED
ebay.us/qjbesJ | 1 x penyambung kuasa untuk bekalan kuasa 12v
ebay.us/cS0wwv | 1 suis hidup / mati
kotak yang sesuai (saya membina lombong dari laci lama yang berada di simpanan saya selama bertahun-tahun)
Langkah 1: Menyiapkan Perisai Host Mini USB untuk Memacu Peranti Midi 5V
Oleh kerana perisai host mini USB beroperasi pada 3.3V dan papan kekunci USB midi yang saya gunakan memerlukan 5V, ia diperlukan untuk menyesuaikan voltan keluaran perisai dengan memotong garis 3.3V yang menuju ke USB keluar Vcc, jadi, kita kemudian dapat menghubungkannya hingga 5V.
Terdapat banyak tutorial tentang cara melakukannya dan ternyata agak mudah:
Cukup potong garis antara perintang 2k2 dan garis Vcc (lihat gambar terlampir). Saya menggunakan pemacu skru untuk menggaru garisan ini dan menguji jika ia berfungsi dengan meter kesinambungan.
Langkah 2: Sambungkan Perisai Mini USB Dengan Arduino Nano Anda
Nasib baik, ada banyak maklumat mengenai cara melakukannya, jadi, dengan pergi ke "Arduino Nano dan perisai hos USB mini", saya memasuki utas ini
Ia menerangkan cara menyambungkan perisai USB mini v2.0 dan setelah mengikutinya saya terus maju untuk menguji beberapa contoh USB midi.
Pendawaian:
Perisai Host Arduino
10--------------5
11--------------6
12--------------7
13--------------8
2----------------2
5V -------------- 1
3.3V ------------ 9
GND ----------- 3
RST ------------ 4
Dalam utas ini, disebutkan bahawa mereka memotong plumbum 3.3V sehingga USB dapat memperoleh 5V dari VBUS.
Penerangan dan gambar yang dilampirkan ini berasal dari utas ini.
BTW, terdapat kesilapan pada cetakan pada papan ini, jadi ini agak membingungkan, namun anda dapat melihat maklum balas saya mengenai perkara itu (tyrkelko) dan dari mana saya mempelajarinya.
Langkah 3: Kerepek Sesiapa? Menambah SN76489 Dengan 4MHz Osc. dan 595 Shift Register
Kini tiba masanya untuk menambahkan cip yang mengeluarkan suara yang luar biasa ini.
Saya sudah membangunkan perpustakaan untuk menghubungkan arduino dengan cip ini dan hanya perlu mengikut arahan saya.
Perpustakaan dilancarkan dalam github di bawah GPLv3 (pelepasan sumber terbuka pertama saya).
github.com/tyrkelko/sn76489
Sambungan 76489 dan 595 adalah seperti pada gambar terlampir yang diambil dari fail readme.txt perpustakaan
Tulis Aktifkan pada Rendah (NotWE) 76489 dihubungkan dengan pin 3 dari nano dan boleh diubah dalam kodnya.
#tentukan PIN_NotWE 3
595 dihubungkan ke nano seperti berikut dan juga dapat disesuaikan dengan mengedit nombor pin:
#tentukan PIN_SER 7
#tentukan PIN_LATCH 6
#tentukan PIN_CLK 5
Pengayun yang saya gunakan adalah pengayun kristal 4MHz dengan 4 kaki.
Ia dikonfigurasi dalam kod seperti berikut dan anda dapat menyesuaikan nilainya ke frekuensi pengayun antara 500kHz dan 4MHz:
#tentukan FREKUENSI 4000000.0
Menghubungkan pengayun yang saya gunakan adalah seperti berikut:
pin 1 - tidak bersambung
pin 7 - tanah
pin 8 - disambungkan ke 76489 pin 14 - osc jam
Langkah 4: Cukup Tambah Kod - Menambah Perpustakaan, Menyusun dan Memuat Naik Kod
Perpustakaan yang digunakan dalam projek ini perlu ditambahkan ke Arduino IDE seperti berikut:
Buka Arduino IDE
Muat turun pustaka berikut ke dalam folder perpustakaan IDE anda (harap dapat melihatnya di bawah menu "Urus Perpustakaan …" di menu "Alat" IDE tidak lama lagi):
github.com/felis/USB_Host_Shield_2.0
github.com/tyrkelko/sn76489
Gunakan kod dari projek github berikut:
github.com/tyrkelko/usb_midi_tone
Muat turun usb_midi_tone.ino, kompilasi dan muat naik ke Arduino nano anda.
Langkah 5: Sambungkan Penguat dan Pembesar Suara, Sambungkan Papan Kekunci USB Midi dan Uji
Kini tiba masanya untuk menguji semuanya berfungsi.
Untuk melakukan itu, kita memerlukan:
1. Penguat dan pembesar suara
2. Papan kekunci USB midi
Sambungkan SN76489 pin 7, audio keluar, ke audio amplifier di.
Nyalakan penguat dan kemudian hidupkan arduino nano. Anda sekarang harus mendengar suara ujian kuasa selama beberapa saat.
Sambungkan papan kekunci USB midi dan uji.
Sekiranya semuanya berfungsi dengan betul, anda seharusnya dapat memainkan 3 nada secara serentak, dan juga memainkan 8 jenis bunyi dan bahkan beberapa nada nada 24 Skala EDO.
Sekiranya tidak berjaya, ikuti langkah-langkah untuk melihat apa yang mungkin salah.
Sekiranya anda merasakan ini hasil daripada arahan yang tidak jelas, sila tinggalkan nota kepada saya, jadi saya mengemas kini arahan untuk memperbaikinya.
Langkah 6: Lengkapkan Litar Dengan Pengatur Voltan 5V, Penyambung 12V, Suis Hidup / Mati Daya dan LED Daya
Dalam langkah ini, anda seharusnya dapat membungkus litar setelah mengujinya agar berfungsi dengan betul.
1. Tambahkan pengatur kuasa dengan LM7805 dan dua kapasitor 10uF dan 0.1uF. Terdapat banyak tutorial mengenai perkara ini, anda boleh menggunakan petunjuk berikut untuk mencapainya -
2. Tambahkan penyambung kuasa 12V dengan Vcc melalui suis hidup / mati
3. Tambahkan LED dengan perintang arus yang terhad untuk menunjukkan bila kuasa dihidupkan.
Langkah 7: Tutup dalam Kotak, Cat dan Nikmati Sintesis Baru Anda
Setelah litar diuji dan berfungsi mengikut kehendak anda, tidak banyak yang perlu dilakukan kecuali untuk membina kandang yang bagus, cat dengan warna yang hebat dan mainkan muzik.
Saya harap anda seronok membaca arahan ini, dan ia memberi inspirasi kepada anda untuk membina synth anda sendiri atau memulakan projek lain yang sedang anda jalankan.
Sila komen di bawah dengan sebarang pertanyaan dan jika anda telah membina sesuatu yang serupa berdasarkan tutorial ini, akan lebih baik jika anda berkongsi apa yang telah anda buat dalam "Saya membuatnya!" kawasan atau di bahagian maklum balas.
Disyorkan:
Bina Pengawal MIDI Arduino: 5 Langkah (dengan Gambar)
Bina Pengawal MIDI Arduino: Hai semua! Dalam arahan ini, saya akan menunjukkan kepada anda cara membina pengawal MIDI berkuasa Arduino anda sendiri. MIDI bermaksud Antarmuka Digital Instrumen Musikal dan ini adalah protokol yang membolehkan komputer, alat muzik dan perkakasan lain untuk
Mari Bina (Analog Synth): 5 Langkah
Mari Bangun (Analog Synth): Dalam siri ini, saya akan menunjukkan kepada anda cara membina synthesizer analog modular asas menggunakan komponen analog dan digital. Pautan ke Skema dan Komponen: https://drive.google.com/open?id= 1mZX4LyiJwXZLJ3R56SDxloMnk8z07IYJ
Mari Buat Robot Berjalan Dengan Tin Coca-Cola di Rumah: 6 Langkah (dengan Gambar)
Mari Buat Robot Berjalan Dengan Tin Coca-Cola di Rumah: Halo semua, saya Merve! Kami akan membuat robot berjalan dengan timah Coca-cola minggu ini. * _ * Mari kita mulakan! ** SILA VOTE PROJEK INI DALAM PERTANDINGAN STICK IT
Hack Pengubah Suara untuk Sintetik DIY: 9 Langkah (dengan Gambar)
Suara Pengubah Suara untuk DIY Synths: Bagi mereka yang mengikuti iblis terbaru saya - anda akan tahu bahawa saya telah membina beberapa 555 pemasa masa. Baru-baru ini semasa perjalanan ke depot kitar semula tempatan, saya menjumpai penukar suara kanak-kanak. Ini adalah jenis di mana anda bercakap dengan mik
Mari Buat Bola Kristal Ajaib Dengan Mantra Sihir! ~ Arduino ~: 9 Langkah
Mari Buat Bola Kristal Ajaib Dengan Mantra Sihir! ~ Arduino ~: Dalam ini, kita akan membuat Magic Ball yang menggunakan sensor gerakan dan pengimbas RFID untuk mengawal animasi lampu LED di dalamnya