Sisukord:
- Tarvikud
- Samm: valmistage USB Mini Host Shield ette 5V midi -seadme juhtimiseks
- Samm: ühendage USB -minikilp oma Arduino Nano -ga
- 3. samm: kiibid kedagi? SN76489 lisamine 4MHz Osc -ga ja 595 vahetuste register
- Samm: lihtsalt koodi lisamine - raamatukogude lisamine, koodi koostamine ja üleslaadimine
- Samm: ühendage võimendi ja kõlar, ühendage USB -midi -klaviatuur ja proovige
- 6. samm: täitke vooluahel 5 V pingeregulaatori, 12 V pistiku, toitelüliti ja toite LED -iga
- 7. samm: pange kasti, värvige ja nautige oma uut sünteesi
Video: Ehitame Arduino Nano abil SN76489 USB MIDI sünteesi: 7 sammu
2024 Autor: John Day | [email protected]. Viimati modifitseeritud: 2024-01-30 08:47
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
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
Õ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
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:
Isetegemine -- Kuidas teha ämblikrobotit, mida saab nutitelefoni abil Arduino Uno abil juhtida: 6 sammu
Isetegemine || Kuidas teha ämblikrobotit, mida saab nutitelefoni abil Arduino Uno abil juhtida: Ämblikroboti tegemisel saab robootika kohta nii mõndagi õppida. Nagu robotite tegemine, on see nii meelelahutuslik kui ka väljakutsuv. Selles videos näitame teile, kuidas teha ämblikrobot, mida saame juhtida oma nutitelefoni abil (Androi
Otsese digitaalse sünteesi (DDS) kiibiga MIDI-juhitav samm-mootor: 3 sammu
Otsese digitaalse sünteesi (DDS) kiibiga MIDI-juhitav samm-mootor: kas teil on kunagi olnud halb ettekujutus, et pidite lihtsalt miniprojektiks muutuma? Noh, ma mängisin eskiisiga, mille olin teinud Arduino Due jaoks ja mille eesmärk oli teha muusikat AD9833 Direct Digital Synthesis (DDS) mooduliga … ja mingil hetkel mõtlesin & q
Kella tegemine M5stick C abil Arduino IDE abil RTC reaalajas kell M5stack M5stick-C abil: 4 sammu
Kella tegemine M5stick C abil, kasutades Arduino IDE | RTC reaalajas kell koos M5stack M5stick-C-ga: Tere, selles juhendis olevad poisid, me õpime, kuidas Arduino IDE abil kella m5stick-C arendusplaadiga teha. Nii kuvab m5stick kuupäeva, kellaaja ja amp; kuunädal ekraanil
Ehitame (analoogsüntees): 5 sammu
Ehitame (analoogsüntees): Selles seerias näitan teile, kuidas luua põhilist modulaarset analoogsüntesaatorit, kasutades nii analoog- kui ka digitaalkomponente. Link skeemile ja komponentidele: https://drive.google.com/open?id= 1mZX4LyiJwXZLJ3R56SDxloMnk8z07IYJ
MIDI 5V LED -riba valguskontroller Spielatroni või muu MIDI -sünteesi jaoks: 7 sammu (piltidega)
MIDI 5V LED-riba valguskontroller Spielatroni või muu MIDI Synthi jaoks: see kontroller vilgutab kolmevärvilisi LED-ribatulesid 50 mS märkme kohta. Sinine G5 kuni D#6, punane E6 kuni B6 ja roheline C7 kuni G7. Kontroller on ALSA MIDI -seade, nii et MIDI -tarkvara saab LED -idele väljastada samaaegselt MIDI -süntesaatoriseadmega