
Obsah:
- Zásoby
- Krok 1: Príprava štítu USB Mini Host Shield na pohon 5V zariadenia Midi
- Krok 2: Pripojte mini USB štít k svojmu Arduino Nano
- Krok 3: Čipuje niekto? Pridanie SN76489 so 4 MHz Osc. a 595 posuvný register
- Krok 4: Stačí pridať kód - pridanie knižníc, kompilácia a nahranie kódu
- Krok 5: Pripojte zosilňovač a reproduktor, pripojte klávesnicu USB Midi a vyskúšajte
- Krok 6: Dokončite obvod pomocou 5V regulátora napätia, 12 V konektora, vypínača a LED diódy napájania
- Krok 7: Zatvorte krabicu, vymaľujte a užívajte si nový syntetizátor
2025 Autor: John Day | [email protected]. Naposledy zmenené: 2025-01-23 15:05




Chceli ste niekedy postaviť svoj vlastný syntetizátor na základe starých čipových melódií z 80. rokov? Chcete hrať jednoduché polyfónne melódie, ktoré znejú rovnako, ako zneli tieto staré videohry Sega Master System a Megadrive?
Mám, tak som si objednal niekoľko čipov SN76489 z ebay a rozhrania midi host a skúsil som to. Nebola to pre mňa prechádzka parkom, ale užíval som si každú chvíľu.
Najprv som sa naučil, ako priamo prepojiť SN76489 a vytvárať s ním hluk. Malo to niekoľko mätúcich prvkov, ale pomocou blogu Oddbloke Geek Blog a niekoľkých ďalších príkladov a dokumentu o špecifikácii čipu som dokázal vyvinúť jednoduchú arduino knižnicu.
Ďalej som sa musel naučiť prepojiť midi klávesnicu s USB mini host štítom. Nebolo to také ťažké, pretože je k dispozícii určitá dokumentácia a dobré knižnice existujú s jasnými príkladmi.
Keď som pochopil, ako ovládať čip a ako prepojiť USB midi klávesnicu, zostávalo už len napísať nejaký kód, ktorý by to všetko zabalil a umožnil mi pomocou klávesnice ovládať čip.
Po ceste som sa dozvedel, že zvuky s nižšou frekvenciou ako tie, ktoré som sa pokúšal generovať pre midi noty 0x2f, neznie správne, a tak som sa to rozhodol použiť na odoslanie šumu do generátora šumu pre všetky midi noty medzi 0x28 a 0x2f. a tiež umožniť hrať poznámky s orientálnym arabským nádychom pre čokoľvek nižšie ako midi 0x28.
Keď sa na to pozerám spätne, bolo to veľmi zábavné a veľmi zaujímavé stavať.
Dúfam, že vás to bude baviť a baviť rovnako ako mňa, a že ak si ho postavíte sami, budete tak láskaví a podelíte sa s ním o niekoľko fotografií.
Ak sa vám tento projekt páčil, hlasujte zaň nižšie a pomôžte tak vyhrať súťaž, ktorej sa zúčastňuje
Zásoby
Pridal som odkazy na materiál, ktorý si môžete kúpiť pre tento projekt, ale môžete nájsť mnoho dostupných položiek, ktoré môžete zoškrabať zo starej elektroniky.
Tieto odkazy sú pridružené odkazy, takže ak si ich kúpite po kliknutí na ne, dostanem malú časť (nie majetok) a vy získate produkt, ktorý je pre tento projekt vhodný. Za ich používanie nie sú žiadne poplatky ani dodatočné poplatky, ale môžete nájsť akékoľvek podobné položky, ktoré ich môžu veľmi ľahko nahradiť.
ebay.us/svA4z4 | 1 x výkonná doska
ebay.us/ZyEFNp | 1 x arduino nano
ebay.us/t1zy0v | 1 x mini štít USB
ebay.to/2QrHl1C | 1 x zvukový čip SN76489
ebay.us/aaaj8p | 1 x posuvný register 595
ebay.us/DSvTHO | 1 x kryštálový oscilátor s frekvenciou 4 MHz
ebay.us/XQeM0Q | 1 x 5V regulátor napätia 7805
ebay.us/6R6Fpf | 1 x chladič pre regulátor napätia
ebay.us/xkLbn4 | Kondenzátory 3 x 10uF
ebay.us/pnm2BH | drôty
ebay.us/PMbUfY | 1 x červená LED na napájanie
ebay.us/zokHtc | 1 x 220 ohmový odpor na obmedzenie toku prúdu LED
ebay.us/qjbesJ | 1 x napájací konektor pre napájanie 12 V.
ebay.us/cS0wwv | 1 x vypínač
vhodná krabica (svoju som postavil zo starej zásuvky, ktorá roky ležala v mojom sklade)
Krok 1: Príprava štítu USB Mini Host Shield na pohon 5V zariadenia Midi

Pretože USB mini host štít funguje na 3,3 V a USB midi klávesnice, ktoré používam, vyžadujú 5 V, je potrebné upraviť výstupné napätie štítu prerušením vedenia 3,3 V, ktoré smeruje do USB výstupu Vcc, takže ho môžeme neskôr pripojiť na 5V.
Existuje veľa návodov, ako to urobiť, a ukázalo sa, že je to celkom jednoduché:
Stačí prerušiť čiaru medzi odporom 2k2 a Vcc (pozri priložený obrázok). Pomocou skrutkovača som túto linku poškriabal a vyskúšal som, či funguje s meračom spojitosti.
Krok 2: Pripojte mini USB štít k svojmu Arduino Nano


Našťastie existuje veľa informácií o tom, ako to urobiť, a tak som po googlení na tému „Arduino Nano a mini USB host štít“pristúpil k tomuto vláknu
Popisoval som, ako pripojiť štít USB mini v2.0, a potom som ho nasledoval a otestoval niekoľko príkladov USB midi.
Elektrické vedenie:
Hostiteľský štít Arduino
10--------------5
11--------------6
12--------------7
13--------------8
2----------------2
5V -------------- 1
3,3 V ------------ 9
GND ----------- 3
RST ------------ 4
V tomto vlákne bolo tiež spomenuté, že prerušili kábel 3,3 V, aby USB mohlo dostať 5 V od VBUS.
Tento popis a priložené obrázky pochádzajú z tohto vlákna.
BTW, tam je chyba v tlači na tejto doske, takže to bolo trochu mätúce, ale môžeš vidieť moju spätnú väzbu na to (tyrkelko) a odkiaľ som sa to naučil.
Krok 3: Čipuje niekto? Pridanie SN76489 so 4 MHz Osc. a 595 posuvný register

Teraz bol čas pridať čip, ktorý vytvára tento úžasný zvuk.
Už som vyvinul knižnicu na prepojenie arduina s týmto čipom a musel som sa riadiť iba svojimi pokynmi.
Knižnica je vydaná v github pod GPLv3 (moje prvé open source vydanie).
github.com/tyrkelko/sn76489
Spojenie 76489 a 595 bolo rovnaké ako na priloženom obrázku, ktorý je zachytený zo súboru knižnice readme.txt
Povolenie zápisu na nízkej úrovni (NotWE) 76489 bolo spojené s pinom 3 nano a je možné ho zmeniť v kóde.
#define PIN_NotWE 3
595 bol k nano pripojený nasledovne a je ho tiež možné upraviť úpravou čísel pinov:
#define PIN_SER 7
#define PIN_LATCH 6
#define PIN_CLK 5
Oscilátor, ktorý som použil, bol 4MHz kryštálový oscilátor so 4 nohami.
V kóde bol nakonfigurovaný nasledovne a jeho hodnotu môžete prispôsobiť ľubovoľnej frekvencii oscilátora medzi 500 kHz a 4 MHz:
#define FREQUENCY 4000000.0
Pripojenie oscilátora, ktorý som použil, bolo nasledovné:
pin 1 - nie je pripojený
kolík 7 - zem
pin 8 - pripojený k 76489 pin 14 - hodiny osc
Krok 4: Stačí pridať kód - pridanie knižníc, kompilácia a nahranie kódu
Knižnice použité v tomto projekte je potrebné pridať do Arduino IDE nasledovne:
Otvorte Arduino IDE
Stiahnite si nasledujúce knižnice do priečinka knižnice vášho IDE (dúfame, že sa vám čoskoro zobrazia v ponuke „Spravovať knižnice …“v ponuke „Nástroje“IDE):
github.com/felis/USB_Host_Shield_2.0
github.com/tyrkelko/sn76489
Použite kód z nasledujúceho projektu github:
github.com/tyrkelko/usb_midi_tone
Stiahnite si usb_midi_tone.ino, skompilovajte a nahrajte do svojho Arduino nano.
Krok 5: Pripojte zosilňovač a reproduktor, pripojte klávesnicu USB Midi a vyskúšajte
Teraz je čas vyskúšať, či všetko funguje.
Na to potrebujeme:
1. Zosilňovač a reproduktor
2. USB midi klávesnica
Pripojte zvukový výstup SN76489 pin 7 k zvukovému vstupu zosilňovača.
Zapnite zosilňovač a potom arduino nano. Teraz by ste mali na sekundu počuť testovací zvuk pri zapnutí.
Pripojte USB midi klávesnicu a vyskúšajte.
Ak všetko funguje správne, mali by ste byť schopní hrať 3 tóny súčasne a tiež hrať 8 typov šumu a dokonca aj nejaký štvrtinový tón v stupnici 24 EDO.
Ak to nefunguje, pozrite sa na kroky a zistite, čo sa mohlo stať.
Ak sa domnievate, že to vyplýva z nejasných pokynov, napíšte mi prosím poznámku, takže aktualizujem pokyny a opravím to.
Krok 6: Dokončite obvod pomocou 5V regulátora napätia, 12 V konektora, vypínača a LED diódy napájania
V tomto kroku by ste mali byť schopní zabaliť obvod po testovaní, či funguje správne.
1. Pridajte regulátor výkonu s LM7805 a dvoma 10uF kondenzátormi a 0,1uF. Na to je veľa návodov, na to môžete použiť nasledujúci návod-https://www.instructables.com/id/7805-Regulator-5V…
2. Pridajte 12V napájací konektor tak, aby Vcc prechádzal vypínačom
3. Pridajte LED diódu s obmedzujúcim prúdovým odporom, ktorá indikuje, kedy je napájanie zapnuté.
Krok 7: Zatvorte krabicu, vymaľujte a užívajte si nový syntetizátor

Akonáhle sú obvody testované a fungujú podľa vašich predstáv, nezostáva vám nič iné, ako postaviť pekný kryt, vymaľovať ho úžasnými farbami a pustiť si hudbu.
Dúfam, že sa vám čítanie tohto návodu páčilo a že vás inšpirovalo k zostaveniu vlastného syntetizátora alebo k pokračovaniu v inom projekte, na ktorom pracujete.
Komentujte nižšie uvedené otázky a ak ste na základe tohto tutoriálu vytvorili niečo podobné, bolo by skvelé, keby ste sa podelili o to, čo ste urobili, v časti „Toto som urobil!“oblasti alebo v sekcii spätnej väzby.
Odporúča:
Arpeggiačný syntetizátor (Mosquito I): 6 krokov

Arpeggiating Synthesizer (Mosquito I): Mosquito I je malý arpeggiačný syntetizátor, ktorý používa Arduino Nano a knižnicu syntézy zvuku Mozzi. Dokáže prehrať viac ako dvadsať 8-krokových sekvencií, ale môžete pridať ľubovoľný počet vlastných sekvencií. Je pomerne jednoduché nastaviť a
Arduino syntetizátor / tónový generátor: 5 krokov

Arduino syntetizátor / tónový generátor: Toto je syntetizátor / tónový generátor, ktorý používa príkaz Tón, ktorý je pôvodom z Arduina. Má 12 jednotlivých klávesov, ktoré je možné nastaviť tak, aby hrali akúkoľvek frekvenciu štvorcových vĺn. Má schopnosť ísť hore a dole po oktávach pomocou tlačidla. Má tiež s
Hudobný syntetizátor založený na DE0-Nano-SoC: 5 krokov (s obrázkami)

Hudobný syntetizátor založený na DE0-Nano-SoC: Hudobný syntetizátor Tento hudobný syntetizátor je pomerne jednoduchý: stačí fúkať, spievať alebo dokonca prehrávať hudbu pred mikrofónom a zvuk sa bude modulovať a odosielať cez reproduktor. Jeho špecifikácia sa zobrazí aj na LCD displeji.
MIDI 5V LED Strip Light Controller pre Spielatron alebo iný MIDI syntetizátor: 7 krokov (s obrázkami)

MIDI 5V LED páskový svetelný ovládač pre Spielatron alebo iný MIDI syntetizátor: Tento ovládač bliká trojfarebnými LED pásikovými svetlami po dobu 50 mS na notu. Modrá pre G5 až D#6, červená pre E6 až B6 a zelená pre C7 až G7. Ovládač je zariadenie ALSA MIDI, takže softvér MIDI môže na LED diódy vystupovať súčasne so zariadením MIDI syntetizátora
Mikro midi syntetizátor: 5 krokov (s obrázkami)

Syntezátor Micro Midi: Tento návod ukazuje použitie čipu VLSI VS1053b Audio a Midi DSP v režime Midi v reálnom čase. V tomto režime funguje ako 64 -hlasový polyfónny syntetizátor GM (General Midi) Midi. Samostatné mikro Arduino Uno ovláda OLED displej