Përmbajtje:
- Furnizimet
- Hapi 1: Përgatitja e USB Mini Host Shield për të drejtuar një pajisje 5V Midi
- Hapi 2: Lidhni USB Mini Shield me Arduino Nano tuaj
- Hapi 3: Patate të skuqura dikush? Shtimi i SN76489 Me 4MHz Osc. dhe 595 Regjistër Shift
- Hapi 4: Thjesht Shto Kod - Shtimi i Bibliotekave, Përpilimi dhe Ngarkimi i Kodit
- Hapi 5: Lidhni një përforcues dhe altoparlant, lidhni tastierën tuaj USB Midi dhe provoni
- Hapi 6: Plotësoni qarkun me një rregullator të tensionit 5V, lidhës 12V, çelës të ndezjes/fikjes së energjisë dhe LED të energjisë
- Hapi 7: Mbylleni në një kuti, lyeni dhe shijoni sintetin tuaj të ri
Video: Le të Ndërtojmë një SN76489 USB MIDI Synth Me Arduino Nano: 7 hapa
2024 Autor: John Day | [email protected]. E modifikuara e fundit: 2024-01-30 12:17
A keni dashur ndonjëherë të krijoni sintetizuesin tuaj bazuar në meloditë e vjetra të viteve '80? Luani meloditë e thjeshta polifonike që tingëllojnë ashtu si dukeshin këto lojëra të vjetra Sega Master System dhe Megadrive?
Unë kam, kështu që, porosita disa patate të skuqura SN76489 nga ebay dhe një ndërfaqe midi host dhe i dhashë një goditje. Epo, nuk ishte një shëtitje në park për mua, por, e shijova çdo moment.
Së pari mësova se si të ndërhyja drejtpërdrejt me SN76489 dhe të bëja pak zhurmë me të. Kishte disa elemente konfuze në këtë, por, me ndihmën e The Oddbloke Geek Blog dhe disa shembuj të tjerë, së bashku me dokumentin e specifikimit të çipit unë isha në gjendje të krijoja një bibliotekë të thjeshtë arduino.
Tjetra, më duhej të mësoja se si të ndërlidhja një tastierë midi me një mburojë mini mikpritëse USB. Kjo nuk ishte aq e vështirë, pasi ka disa dokumente në dispozicion, dhe ekzistojnë biblioteka të mira me shembuj të qartë.
Pasi kuptova se si të kontrolloja çipin dhe si të ndërfaqej me tastierën time midi USB, e vetmja gjë që më mbeti të bëja ishte të shkruaja një kod që do t'i mbështillte të gjitha këto së bashku dhe do të më lejonte të përdor tastierën për të kontrolluar çipin.
Gjatë rrugës, mësova se tingujt me frekuencë më të ulët se ato që u përpoqa të gjeneroja për shënimet midi 0x2f nuk tingëllonin mirë, kështu që, vendosa ta përdor atë për të lejuar dërgimin e zhurmës në gjeneratorin e zhurmës për çdo shënim midi midis 0x28 dhe 0x2f dhe gjithashtu lejoni shënimet e luajtjes me një prekje arabe orientale në të për çdo gjë më të ulët se midi 0x28.
Duke parë prapa, ishte shumë argëtuese dhe shumë interesante për tu ndërtuar.
Shpresoj që ta shihni si argëtuese dhe interesante si unë dhe se nëse e ndërtoni një të tillë, do të ishit mjaftueshëm të sjellshëm për të ndarë disa fotografi të tij.
Nëse ju pëlqeu ky projekt, ju lutemi votoni për atë më poshtë për të ndihmuar në fitimin e konkursit ku merr pjesë
Furnizimet
Unë kam shtuar lidhje me materialin që mund të blini për këtë projekt, megjithatë, ju mund të gjeni shumë artikuj në dispozicion që mund t'i hiqni nga elektronika e vjetër.
Këto lidhje janë lidhje shoqëruese, kështu që, nëse blini pasi i klikoni, unë marr një pjesë të vogël (jo pasuri) dhe ju merrni një produkt që është i duhuri për këtë projekt. Nuk ka asnjë tarifë ose kosto shtesë në përdorimin e tyre, megjithatë, ju mund të gjeni ndonjë artikull të ngjashëm që mund t'i zëvendësojë ato mjaft lehtë.
ebay.us/svA4z4 | 1 x bord i performancës
ebay.us/ZyEFNp | 1 x arduino nano
ebay.us/t1zy0v | 1 x mini mburojë USB
ebay.to/2QrHl1C | 1 x çip i zërit SN76489
ebay.us/aaaj8p | 1 x regjistër zhvendosjeje 595
ebay.us/DSvTHO | 1 x oshilator kristal 4MHz
ebay.us/XQeM0Q | 1 x 5V rregullator i tensionit 7805
ebay.us/6R6Fpf | 1 x lavaman për rregullatorin e tensionit
ebay.us/xkLbn4 | 3 x 10uF kondensatorë
ebay.us/pnm2BH | telat
ebay.us/PMbUfY | 1 x LED i kuq për energji
ebay.us/zokHtc | Rezistencë 1 x 220 ohm për të kufizuar rrjedhën e rrymës LED
ebay.us/qjbesJ | 1 x lidhës i energjisë për furnizim me energji 12v
ebay.us/cS0wwv | 1 x ndërprerës ndezje/fikje
një kuti të përshtatshme (e kam ndërtuar timen nga një sirtar i vjetër që ishte duke pushuar në ruajtjen time me vite)
Hapi 1: Përgatitja e USB Mini Host Shield për të drejtuar një pajisje 5V Midi
Meqenëse mburoja USB mini host funksionon në 3.3V dhe tastierat USB midi që përdor kërkojnë 5V, kërkohet të rregulloni tensionin dalës të mburojës duke prerë linjën 3.3V që shkon në USB jashtë Vcc, kështu që, më vonë mund ta lidhim në 5V
Ka shumë mësime se si ta bëni këtë dhe doli të ishte mjaft e thjeshtë:
Thjesht prerë vijën midis rezistencës 2k2 dhe vijës Vcc (shiko figurën e bashkangjitur). Kam përdorur një vidë për të gërvishtur këtë vijë dhe testova nëse funksiononte me njehsor vazhdimësie.
Hapi 2: Lidhni USB Mini Shield me Arduino Nano tuaj
Për fat të mirë, ka shumë informacione se si ta bëni këtë, kështu që, duke kërkuar në Google për "Arduino Nano dhe mini USB mburoja të hostit", zbrita në këtë temë
Ai përshkroi se si të lidhni mburojën USB mini v2.0 dhe pasi e ndoqa atë, shkova drejtpërdrejt për të provuar disa shembuj të midi USB.
Instalime elektrike:
Mburoja e hostit Arduino
10--------------5
11--------------6
12--------------7
13--------------8
2----------------2
5V -------------- 1
3.3V ------------ 9
GND ----------- 3
RST ------------ 4
Në këtë fije, u përmend gjithashtu se ata prenë prizën 3.3V në mënyrë që USB të marrë 5V nga VBUS.
Ky përshkrim dhe imazhet e bashkangjitura erdhën nga kjo fije.
BTW, ka një gabim në shtypjen në këtë tabelë, kështu që kjo ishte pak konfuze, megjithatë, ju mund të shihni reagimet e mia për atë (tyrkelko) dhe nga e mësova.
Hapi 3: Patate të skuqura dikush? Shtimi i SN76489 Me 4MHz Osc. dhe 595 Regjistër Shift
Tani ishte koha për të shtuar çipin që bën këtë tingull të mahnitshëm.
Unë kam krijuar tashmë një bibliotekë për të ndërlidhur arduino me këtë çip dhe vetëm më është dashur të ndjek udhëzimet e mia.
Biblioteka lëshohet në github nën GPLv3 (lëshimi im i parë me burim të hapur).
github.com/tyrkelko/sn76489
Lidhja e 76489 dhe 595 ishte si në imazhin e bashkangjitur e cila është kapur nga biblioteka e skedarit readme.txt
Aktivizimi i Shkrimit në Low (NotWE) i 76489 ishte i lidhur me pin 3 të nano dhe mund të ndryshohet në kod.
#përcakto PIN_NotWE 3
595 u lidh me nano si më poshtë dhe gjithashtu mund të rregullohet duke redaktuar numrat e kunjave:
#përcaktoni PIN_SER 7
#përcaktoni PIN_LATCH 6
#përcaktoni PIN_CLK 5
Lëkundësi që kam përdorur ishte një oshilator kristal 4MHz me 4 këmbë.
Ai ishte konfiguruar në kod si më poshtë dhe ju mund ta rregulloni vlerën e tij në çdo frekuencë oshilatori midis 500kHz dhe 4MHz:
#përcakto FREQENC 400 4000000.0
Lidhja e oshilatorit që kam përdorur ishte si më poshtë:
pin 1 - nuk është i lidhur
pin 7 - terren
pin 8 - i lidhur me 76489 pin 14 - orë osc
Hapi 4: Thjesht Shto Kod - Shtimi i Bibliotekave, Përpilimi dhe Ngarkimi i Kodit
Bibliotekat e përdorura në këtë projekt duhet të shtohen në Arduino IDE si më poshtë:
Hapni Arduino IDE
Shkarkoni bibliotekat e mëposhtme në dosjen e bibliotekës së IDE -së tuaj (shpresoj se do t'i shihni së shpejti në menunë "Menaxho Bibliotekat …" në menunë IDE "Tools"):
github.com/felis/USB_Host_Shield_2.0
github.com/tyrkelko/sn76489
Përdorni kodin nga projekti i mëposhtëm github:
github.com/tyrkelko/usb_midi_tone
Shkarkoni usb_midi_tone.ino, përpiloni dhe ngarkoni në Arduino nano tuaj.
Hapi 5: Lidhni një përforcues dhe altoparlant, lidhni tastierën tuaj USB Midi dhe provoni
Tani është koha për të testuar se gjithçka funksionon.
Për ta bërë këtë ne kemi nevojë:
1. Një përforcues dhe altoparlant
2. Një tastierë midi USB
Lidhni SN76489 pin 7, audio jashtë, me audio përforcues brenda.
Ndizni amplifikatorin dhe më pas aktivizoni arduino nano. Tani duhet të dëgjoni tingullin e provës së ndezjes për një pjesë të sekondës.
Lidhni tastierën USB midi dhe provoni.
Nëse gjithçka funksionon si duhet, duhet të jeni në gjendje të luani 3 ton njëkohësisht, dhe gjithashtu të luani 8 lloje të zhurmës dhe madje edhe një ton çerek prej 24 EDO-Scale.
Nëse nuk funksionon, kaloni hapat për të parë se çfarë mund të ketë shkuar keq.
Nëse mendoni se kjo rezulton nga udhëzimet e paqarta, ju lutem më jepni një shënim, kështu që unë azhurnoj udhëzimet për ta rregulluar atë.
Hapi 6: Plotësoni qarkun me një rregullator të tensionit 5V, lidhës 12V, çelës të ndezjes/fikjes së energjisë dhe LED të energjisë
Në këtë hap ju duhet të jeni në gjendje të mbyllni qarkun pasi ta keni testuar që të funksionojë si duhet.
1. Shtoni një rregullator të energjisë me LM7805 dhe dy kondensatorë 10uF dhe 0.1uF. Ka shumë mësime mbi këtë, ju mund të përdorni udhëzimet e mëposhtme për ta arritur këtë-https://www.instructables.com/id/7805-Regulator-5V…
2. Shtoni një lidhës të energjisë 12V me Vcc që kalon përmes një çelësi on/off
3. Shtoni një LED me një rezistencë të kufizuar të rrymës për të treguar kur energjia është e ndezur.
Hapi 7: Mbylleni në një kuti, lyeni dhe shijoni sintetin tuaj të ri
Sapo qarku të testohet dhe të funksionojë sipas dëshirës tuaj, nuk ju mbetet shumë për të bërë, përveç ndërtimit të një rrethimi të bukur, lyeni me ngjyra të mrekullueshme dhe luani pak muzikë.
Shpresoj se ju ka pëlqyer leximi i këtij udhëzimi dhe që ju frymëzoi të ndërtoni sintetikun tuaj ose të filloni me një projekt tjetër në të cilin po punoni.
Ju lutemi komentoni më poshtë me çdo pyetje dhe nëse keni ndërtuar diçka të ngjashme bazuar në këtë tutorial do të ishte mirë nëse do të ndanit atë që keni bërë në "Unë e bëra këtë!" zonë ose në pjesën e reagimeve.
Recommended:
Një makinë për frikësimin e Halloween -it duke përdorur një PIR, një kungull të printuar në 3D dhe një Pranker audio të pajtueshme me Troll Arduino/Bordi praktik i Shakasë.: 5 Hapa
Një makinë për frikësimin e Halloween -it duke përdorur një PIR, një kungull të printuar në 3D dhe Tran Arduino Compatible Audio Pranker/Joke Board praktike .: Bordi Troll i krijuar nga Patrick Thomas Mitchell i EngineeringShock Electronics, dhe u financua plotësisht në Kickstarter jo shumë kohë më parë. Unë mora shpërblimin disa javë më parë për të ndihmuar në shkrimin e disa shembujve të përdorimit dhe ndërtimin e një biblioteke Arduino në një përpjekje
Programimi i një Arduino duke përdorur një Arduino tjetër për të shfaqur një tekst rrotullues pa bibliotekë: 5 hapa
Programimi i një Arduino Duke përdorur një Arduino tjetër për të shfaqur një tekst rrotullues pa bibliotekë: Sony Spresense ose Arduino Uno nuk janë aq të shtrenjta dhe nuk kërkojnë shumë energji. Sidoqoftë, nëse projekti juaj ka kufizime në fuqi, hapësirë apo edhe buxhet, mund të dëshironi të merrni parasysh përdorimin e Arduino Pro Mini. Ndryshe nga Arduino Pro Micro, Arduino Pro Mi
Le të Ndërtojmë (Sintet Analogjike): 5 Hapa
Le të Ndërtojmë (Analogue Synth): Në këtë seri, unë do t'ju tregoj se si të ndërtoni një sintetizues bazë modular analog duke përdorur si përbërës analoge ashtu edhe dixhitalë. Lidhu me Skematik dhe Komponentët: https://drive.google.com/open?id= 1mZX4LyiJwXZLJ3R56SDxloMnk8z07IYJ
Kontrolluesi i dritës MIDI 5V LED Strip për Spielatron ose MIDI Synth tjetër: 7 hapa (me fotografi)
Kontrolluesi i dritës MIDI 5V LED për Spielatron ose MIDI Synth tjetër: Ky kontrollues ndez dritat me tre ngjyra LED për 50mS për shënim. Blu për G5 në D#6, e kuqe për E6 në B6 dhe jeshile për C7 në G7. Kontrolluesi është një pajisje ALSA MIDI kështu që programi MIDI mund të dalë në LED në të njëjtën kohë si një pajisje sintetike MIDI
Ndryshoni një karikues USB të përgjithshëm të makinës për të ngarkuar një IPod Nano të gjeneratës së tretë: 4 hapa
Ndryshoni një Karikues USB të Përgjithshëm të Makinës për të Ngarkuar një IPod Nano të Gjeneratës së 3 -të: Unë kam një iPod Nano të gjeneratës së 3 -të. Ai zbulon se është i lidhur, por refuzon të karikohet nga një përshtatës i përgjithshëm i karikimit USB, por unë nuk kam dashur të blej një kabllo përshtatës ose një ngarkues tjetër posaçërisht për iPod, kështu që modifikova një tashmë