Sisukord:

Ehitame Arduino Nano abil SN76489 USB MIDI sünteesi: 7 sammu
Ehitame Arduino Nano abil SN76489 USB MIDI sünteesi: 7 sammu

Video: Ehitame Arduino Nano abil SN76489 USB MIDI sünteesi: 7 sammu

Video: Ehitame Arduino Nano abil SN76489 USB MIDI sünteesi: 7 sammu
Video: Teensy 3.1 16 step MIDI sequencer 2024, November
Anonim
Image
Image
Ehitame Arduino Nano abil SN76489 USB MIDI sünteesi
Ehitame Arduino Nano abil SN76489 USB MIDI sünteesi
Ehitame Arduino Nano abil SN76489 USB MIDI sünteesi
Ehitame Arduino Nano abil SN76489 USB MIDI sünteesi

Kas olete kunagi tahtnud ehitada oma süntesaatori, mis põhineb 80ndate vanadel kiiphelidel? Kas mängida lihtsaid polüfoonilisi lugusid, mis kõlavad täpselt nagu need vanad Sega Master System ja Megadrive videomängud?

Mul on, seega, tellisin ebayst paar SN76489 kiipi ja midi hostiliidese ning proovisin ära. Noh, see polnud minu jaoks jalutuskäik pargis, aga nautisin igat hetke.

Kõigepealt õppisin, kuidas SN76489 otse liidestada ja sellega müra tekitada. Selles oli mõningaid segadust tekitavaid elemente, kuid koos Oddbloke Geeki ajaveebi ja mõne muu näite abil suutsin koos kiibi spetsifikatsioonidokumendiga välja töötada lihtsa arduino raamatukogu.

Järgmisena pidin õppima, kuidas liidestada midi -klaviatuuri USB mini hosti kilbiga. See ei olnud nii raske, kuna on olemas mõningaid dokumente ja häid raamatukogusid on selgete näidetega.

Kui ma sain aru, kuidas kiipi juhtida ja kuidas USB -midi klaviatuuri liidestada, jäi üle vaid kirjutada kood, mis selle kõik kokku keeraks ja lubaks mul kiibi juhtimiseks klaviatuuri kasutada.

Teel õppisin, et helid, mille sagedus on madalam kui need, mida proovisin 0x2f midi nootide jaoks genereerida, ei kõlanud õigesti, seega otsustasin seda kasutada, et lubada müra genereerimiseks mürageneraatorile vahemikus 0x28 kuni 0x2f ja lubage mängida ka idamaise araabia puudutusega märkmeid, mis on madalamad kui midi 0x28.

Tagantjärele vaadates oli ehitamine väga lõbus ja väga huvitav.

Loodan, et teile tundub see sama lõbus ja huvitav kui mina ja et kui te selle ise ehitate, siis oleksite lahkelt jaganud sellest pilte.

Kui teile see projekt meeldis, hääletage selle all, et aidata võita konkurss, milles ta osaleb

Tarvikud

Olen lisanud linke materjalile, mida saate selle projekti jaoks osta, kuid võite leida palju saadaolevaid esemeid, mida saate vanast elektroonikast kraapida.

Need lingid on sidusettevõtte lingid, nii et kui ostate pärast nende klõpsamist, saan väikese osa (mitte varanduse) ja saate selle projekti jaoks sobiva toote. Nende kasutamine ei nõua tasu ega lisakulusid, kuid leiate sarnaseid esemeid, mis võivad need üsna hõlpsalt asendada.

ebay.us/svA4z4 | 1 x jõudlusplaat

ebay.us/ZyEFNp | 1 x arduino nano

ebay.us/t1zy0v | 1 x USB mini kilp

ebay.to/2QrHl1C | 1 x SN76489 helikiip

ebay.us/aaaj8p | 1 x vahetuste register 595

ebay.us/DSvTHO | 1 x 4MHz kristallostsillaator

ebay.us/XQeM0Q | 1 x 5V pingeregulaator 7805

ebay.us/6R6Fpf | 1 x jahutusradiaator pingeregulaatori jaoks

ebay.us/xkLbn4 | 3 x 10uF kondensaatorit

ebay.us/pnm2BH | juhtmed

ebay.us/PMbUfY | 1 x punane LED toiteallikaks

ebay.us/zokHtc | 1 x 220 oomi takisti LED -voolu piiramiseks

ebay.us/qjbesJ | 1 x toitepistik 12 V toiteallika jaoks

ebay.us/cS0wwv | 1 x sisse/välja lüliti

sobiv kast (ehitasin oma vanast sahtlist, mis seisis minu laos aastaid)

Samm: valmistage USB Mini Host Shield ette 5V midi -seadme juhtimiseks

USB mini hosti kilbi ettevalmistamine 5 V midi seadme juhtimiseks
USB mini hosti kilbi ettevalmistamine 5 V midi seadme juhtimiseks

Kuna USB mini -hosti kilp töötab 3,3 V ja minu kasutatavad USB -midi -klaviatuurid vajavad 5 V, on vaja varjestuse väljundpinget reguleerida, katkestades 3,3 V liini, mis läheb USB -väljundisse Vcc, nii et saame selle hiljem ühendada kuni 5V.

Selle tegemiseks on palju õpetusi ja see osutus üsna lihtsaks:

Lihtsalt katkestage 2k2 takisti ja Vcc liini vaheline joon (vt lisatud pilti). Kasutasin selle joone kriimustamiseks kruvikeerajat ja testisin, kas see töötab järjepidevusmõõturiga.

Samm: ühendage USB -minikilp oma Arduino Nano -ga

Ühendage USB -minikilp oma Arduino Nano -ga
Ühendage USB -minikilp oma Arduino Nano -ga
Ühendage USB -minikilp oma Arduino Nano -ga
Ühendage USB -minikilp oma Arduino Nano -ga

Õnneks on selle kohta palju teavet, nii et googeldades "Arduino Nano ja mini USB host kilp", sattusin sellele teemale

Selles kirjeldati, kuidas ühendada USB mini v2.0 kilp ja pärast selle järgimist läksin otse edasi, et testida mõnda USB midi näidet.

Juhtmestik:

Arduino hosti kilp

10--------------5

11--------------6

12--------------7

13--------------8

2----------------2

5V -------------- 1

3.3V ------------ 9

GND ----------- 3

RST ------------ 4

Selles teemas mainiti ka seda, et nad katkestasid 3,3 V juhtme, nii et USB saab VBUS -ist 5 V.

See kirjeldus ja lisatud pildid pärinevad sellest teemast.

BTW, selle tahvli trükis on viga, nii et see oli natuke segane, kuid näete minu tagasisidet selle kohta (tyrkelko) ja kust ma seda õppisin.

3. samm: kiibid kedagi? SN76489 lisamine 4MHz Osc -ga ja 595 vahetuste register

Kiibid Keegi? SN76489 lisamine 4MHz Osc -ga ja 595 vahetuste register
Kiibid Keegi? SN76489 lisamine 4MHz Osc -ga ja 595 vahetuste register

Nüüd oli aeg lisada kiip, mis teeb selle hämmastava heli.

Olen selle kiibiga arduino kasutajaliideseks juba raamatukogu välja töötanud ja pidin järgima ainult minu juhiseid.

Raamatukogu antakse välja githubis GPLv3 all (minu esimene avatud lähtekoodiga versioon).

github.com/tyrkelko/sn76489

Ühendused 76489 ja 595 olid nagu lisatud pildil, mis on jäädvustatud raamatukogust readme.txt

Kirjutamise lubamine madalal (NotWE) 76489 oli ühendatud nano tihvtiga 3 ja seda saab koodis muuta.

#define PIN_NotWE 3

595 ühendati nanoga järgmiselt ja seda saab reguleerida ka tihvtide numbreid muutes:

#define PIN_SER 7

#define PIN_LATCH 6

#define PIN_CLK 5

Ostsillaator, mida kasutasin, oli 4MHz kristallostsillaator, millel oli 4 jalga.

See oli koodis konfigureeritud järgmiselt ja saate selle väärtust reguleerida mis tahes ostsillaatori sagedusele vahemikus 500 kHz kuni 4 MHz:

#define Sagedus 4000000.0

Kasutatud ostsillaatori ühendamine oli järgmine:

tihvt 1 - pole ühendatud

tihvt 7 - jahvatatud

tihvt 8 - ühendatud 76489 tihvtiga 14 - kella osc

Samm: lihtsalt koodi lisamine - raamatukogude lisamine, koodi koostamine ja üleslaadimine

Selles projektis kasutatud raamatukogud tuleb Arduino IDE -sse lisada järgmiselt.

Avage Arduino IDE

Laadige oma IDE raamatukogu kausta alla järgmised teegid (loodetavasti näete neid varsti IDE menüü "Tööriistad" menüüs "Halda raamatukogusid …"):

github.com/felis/USB_Host_Shield_2.0

github.com/tyrkelko/sn76489

Kasutage järgmise githubi projekti koodi:

github.com/tyrkelko/usb_midi_tone

Laadige alla usb_midi_tone.ino, kompileerige ja laadige üles oma Arduino nano.

Samm: ühendage võimendi ja kõlar, ühendage USB -midi -klaviatuur ja proovige

Nüüd on aeg testida, kas kõik töötab.

Selleks vajame:

1. Võimendi ja kõlar

2. USB midi klaviatuur

Ühendage SN76489 pin 7, audio out, võimendi helisisendisse.

Lülitage võimendi sisse ja seejärel arduino nano. Nüüd peaksite sekundi murdosa jooksul kuulama sisselülitamise testi heli.

Ühendage USB midi klaviatuur ja proovige.

Kui kõik töötab õigesti, peaksite saama mängida korraga 3 tooni ja mängida ka 8 tüüpi müra ja isegi mõnda veerandtooni 24 EDO-skaalat.

Kui see ei tööta, vaadake sammud üle, et näha, mis võis valesti minna.

Kui tunnete, et see tuleneb ebaselgetest juhistest, jätke mulle märkus, et värskendan juhiseid selle parandamiseks.

6. samm: täitke vooluahel 5 V pingeregulaatori, 12 V pistiku, toitelüliti ja toite LED -iga

Selles etapis peaksite pärast vooluahela korrektseks testimist selle ahela lõpetama.

1. Lisage võimsusregulaator koos LM7805 ja kahe 10uF kondensaatoriga ning 0,1uF. Selle kohta on palju õpetusi, selle saavutamiseks võite kasutada järgmist juhendit-https://www.instructables.com/id/7805-Regulator-5V…

2. Lisage 12 V toitepistik, kusjuures Vcc läheb sisse/välja lüliti kaudu

3. Lisage piirava voolutakistusega LED, mis näitab, kui toide on sisse lülitatud.

7. samm: pange kasti, värvige ja nautige oma uut sünteesi

Kui vooluring on testitud ja töötab teie maitse järgi, pole palju muud teha, kui kena korpuse ehitamine, värvida see vingete värvidega ja mängida muusikat.

Loodan, et teile meeldis seda juhendit lugeda ja see inspireeris teid ehitama oma süntesaati või alustama mõne teise projektiga, mille kallal töötate.

Palun kommenteerige kõikide küsimustega allpool ja kui olete selle õpetuse põhjal midagi sarnast loonud, oleks tore, kui jagate oma tehtud teemat jaotises „Mina tegin selle!” valdkonnas või tagasiside jaotises.

Soovitan: