Isi kandungan:

Mari Bina Sintetik USB MIDI SN76489 Dengan Arduino Nano: 7 Langkah
Mari Bina Sintetik USB MIDI SN76489 Dengan Arduino Nano: 7 Langkah

Video: Mari Bina Sintetik USB MIDI SN76489 Dengan Arduino Nano: 7 Langkah

Video: Mari Bina Sintetik USB MIDI SN76489 Dengan Arduino Nano: 7 Langkah
Video: Tumi Jodi Thakte | তুমি যদি থাকতে | Cover | Abir Biswas | Kumar Sanu | KMJ Music Series 2024, Julai
Anonim
Image
Image
Mari Membina Sintetik USB MIDI SN76489 Dengan Arduino Nano
Mari Membina Sintetik USB MIDI SN76489 Dengan Arduino Nano
Mari Membina Sintetik USB MIDI SN76489 Dengan Arduino Nano
Mari Membina Sintetik USB MIDI SN76489 Dengan Arduino Nano

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

Menyiapkan Perisai Host Mini USB untuk Memacu Peranti Midi 5V
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

Sambungkan Perisai Mini USB Dengan Arduino Nano Anda
Sambungkan Perisai Mini USB Dengan Arduino Nano Anda
Sambungkan Perisai Mini USB Dengan Arduino Nano Anda
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

Ada kerepek? Menambah SN76489 Dengan 4MHz Osc. dan 595 Shift Register
Ada kerepek? 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: