Počítače Windows Internet

DIY USB hudobná klávesnica pre atmega. Ako si vyrobiť pohodlný syntetizátor vlastnými rukami. Midi klávesnicový obvod MKC64 v1.54

Oleg Jakubov

Po zverejnení mojej stránky na webe som dostal niekoľko listov so žiadosťou, aby som napísal alebo poslal schému midi klávesnice, ktorú som zostavil. A rozhodol som sa pripraviť článok o midi klávesnici.

Klávesový obvod MIDI som si vybral z časopisu Rádio číslo 3, 4 na rok 1997. Ak si chce niekto naozaj postaviť dobrý nástroj, odporúčam zájsť do knižnice a zohnať si tam časopisy, ale komu sa nechce behať a strácať čas, oskenoval som celý tento článok (myslím, že nie na úkor autora). S MIDI klávesnicou som veľmi spokojný. Vo všeobecnosti neboli s montážou žiadne problémy, s výnimkou niektorých preklepov v schéme (pravdepodobne ich urobila redakcia pri rozložení článku). Pred skenovaním som urobil opravy, to je možné vidieť pozorným preštudovaním diagramu. Upozornenie: pri flashovaní ROM nerobte chyby pri zadávaní kódov, inak nástroj nebude hrať vôbec alebo nebude fungovať správne. Chcel by som sa osobitne poďakovať samotnému autorovi tohto článku za vytlačenie kontrolných kódov tabuľky ROM, pretože je ťažké zadať všetky znaky bez chýb a pri zadávaní som urobil chyby na dvoch miestach a ďakujem ku kontrolným súčtom som rýchlo našiel chyby. Aj v naskenovanej tabuľke som zvýraznil tie miesta, ktoré autor uvádza v prípade nahradenia dvoch znakov. To pre prípad, že by sa klaviatúra nezačínala notou Fa, ale notou Do. Všetky diely a komponenty zariadenia som namontoval na dosku plošných spojov a spoje medzi kolíkmi mikroobvodov som prispájkoval tenkým drôtikom vo fluoroplastovom opletení, iba medzi klávesnicou a doskou som prispájkoval plochým káblom. Jediné, čo som urobil, bolo zvýšenie kapacity kondenzátora C1, keďže procesor sa nespustil. Midi klávesnica funguje veľmi stabilne a zatiaľ som nezaznamenal žiadne problémy!!! Ak sa niekomu zdá tento obvod veľmi komplikovaný, tak skúste zostaviť iný obvod, uverejnený aj v časopise Rádio č. 11, 1993. Ale v tomto obvode nie sú také možnosti ako v obvode, o ktorom som práve písal. Odporúčam preto mať trochu trpezlivosti a dať si dokopy schému z Rádia magazínu číslo 3, 4 za rok 1997. Naskenovaný článok je nižšie. Ak by mal ešte niekto problémy s montážou, kontaktujte ma, možno niečo odporučím. Jedinou nevýhodou tejto schémy je podľa mňa nepohodlnosť rýchleho výberu nástroja a tiež malá možnosť efektu „PITCH“. Typicky majú klávesnice tento efekt vo forme kolieska na ľavej strane klávesnice.

Prajem príjemné zhromaždenie!!!

MIDI KLÁVESNICA PRE MULTIMEDIÁLNE POČÍTAČE A MIDI SYNTÉZY

S. Kononov, Tula

MIDI klaviatúra vyvinutá autorom tohto článku patrí medzi elektronické hudobné nástroje so zvýšenou zložitosťou a je určená predovšetkým čitateľom, ktorí majú určité znalosti a skúsenosti s konštruovaním takýchto zariadení. Preto je popis dizajnu uvedený v stručnom zhrnutí. Redakcia verí, že obsah tejto publikácie pritiahne pozornosť tých, ktorí sa všeobecne zaujímajú o elektronickú hudbu a možno sa chystajú začať navrhovať moderné vybavenie. Bude pre nich užitočné zoznámiť sa s článkami A. Studneva „Čo je MIDI?“ a „MIDI keyboard“, publikované v januárovom a novembrovom vydaní „Rádia“ za rok 1993, ako aj článok K. Bystrushkina „Multimédiá prídu do každého domova“ („Rádio“, 1996, č. 3).

Odporúčaná MIDI klaviatúra je „tupý“ klávesový nástroj, ktorého hlavným účelom je spolupracovať s osobnými počítačmi vybavenými kartami Creative, Sound Blaster, Gravis, YAMA-HA a inými hudobnými kartami, ktoré majú midi vstup. Okrem toho vám umožňuje pracovať s externými syntetizátormi, generátormi tónov a akýmkoľvek zariadením, ktoré má aj MIDI vstup Pri vývoji servisných funkcií MIDI keyboardu boli modelmi pre „imitáciu“ produkty talianskej spoločnosti „MASTER STAR“. . Najprv som navrhol univerzálny MIDI diaľkový ovládač pre gombíkový akordeón a akordeón, ktorý bol prezentovaný na výstave MUSIKMESSE-95 (Frankfurt nad Mohanom). Vtedy vznikla myšlienka premeniť toto konštrukčne zložité zariadenie na jednoduchšiu MIDI klaviatúru, ktorú si môžu zopakovať čitatelia časopisu Rádio. Nástroj má solídny servis. Predovšetkým umožňuje každému klávesu ovládať dva MIDi kanály, pričom každému z nich priraďuje vlastné programy (timbry) a zapamätáva si ich spolu s úrovňou hlasitosti každého kanálu v pamäti zariadenia. Takto môžete ľubovoľne kombinovať a vrstviť ľubovoľné dva vzorové zvuky z tých, ktoré sú k dispozícii v tónovom generátore pripojenom ku klaviatúre. V „cool“ zariadeniach sa tento režim nazýva „COMBY“. Klávesnica tiež umožňuje meniť výšku tónu nástroja o jednu oktávu nahor alebo nadol, priradiť až 127 programov, ovládať veľké množstvo MIDI kanálov (od 1 do 16). ), ovládajte zvukové efekty PITCH BEND, VOLUME, MODULATION, SUSTAIN a mnoho ďalších. Tempo predvádzanej skladby je od 20 do 240 úderov za minútu. Hranica rozdelenia klávesnice na dva návody je ľubovoľná Nástroj, obvod, pozostáva z troch funkčne ucelených častí: bloku procesora (A1), ovládacieho panela (A2) a bloku klávesnice (A3). Sada mikroobvodov, ktoré sa v nich používajú, je podobná komponentom zariadení, ako je Spectrum a Caller ID, takže tí, ktorí radi navrhujú EMR, nebudú mať problémy s nájdením základne prvkov Blok procesora je v dizajne obvodu podobný procesoru Caller ID . Hlavný oscilátor procesora Z80 (DD2) je zostavený pomocou logických prvkov DD1.1 - DD1.3 a kremenného rezonátora ZQ1. Prirodzená frekvencia kremenného rezonátora musí byť 4 MHz, inak sa zmení prenosová rýchlosť MIDI informácií z vysokého rádu registra C čipu DD6 cez vyrovnávací prvok DD1.4 Na tranzistoroch VT1, VT2 je namontovaná jednotka poskytuje resetovací signál na vstupe RES (RESET - pin 26) DD2 čipu pri zapnutí/vypnutí zdroja, keď jeho napätie nepresiahne +4,5V. To zvyšuje spoľahlivosť ukladania informácií do energeticky nezávislej pamäte čipu DD5 v čase zapnutia alebo vypnutia napájania. Batéria GB1 spolu s kondenzátorom C3, rezistorom R8 a diódou VD2 podporuje napájanie mikroobvodu DD4 pre dlhodobé ukladanie informácií v ňom, keď je vypnuté všeobecné napájanie prístroja Mikroobvody DD7 a DD8 ovládacieho panela ovládanie tlačidiel SB1-SB19 ovládacieho panela, dynamická indikácia štvormiestneho sedemprvkového displeja, tvoreného indikátormi HG1, HG2, a digitalizácia jedinej analógovej časti prístroja - regulátora hlasitosti R40 "Volume". Na displej som podľa môjho názoru použil veľmi pohodlné, jasné duálne indikátory VQE14 (starý názov KIPTS09I), inštalované v televízoroch Horizon 4. a 5. generácie. Zapnutie indikátora HQ2 je podobné ako zapnutie indikátora HG1 znázorneného na obrázku.

Klávesový blok tvorí päťoktávová (61 kláves) hudobná klaviatúra začínajúca tónom „F“, čipy D09, DD10 a konektory X1-X3 pre pripojenie dvoch externých MIDI prijímačov a pedálu „SUSTAIN“ k nástroju. Každý kláves klávesnice je vybavený dvojicou normálne otvorených kontaktov, ktoré sú spojené do matice 8x8 s diódovou (VD14-VD74) izoláciou. V diagrame symbol SA1 označuje kláves úplne vľavo a symbol SA61 označuje kláves úplne vpravo. Maticový polling zabezpečujú čipy DD9 a DD10. Ak hudobná klaviatúra používaná pre konštruovaný nástroj začína tónom „C“, potom sa ladenie matice musí posunúť o sedem kláves. Aby ste to dosiahli, musíte v ROM zvýšiť kód v bunkách s adresami 025FH a 0268H o sedem jednotiek ( pozrite si tabuľku programovania ROM KR573RF5 ) , t. j. namiesto kódu „05“ napíšte „OSN“. Napájanie klávesnice je mikroobvodový stabilizátor napätia KR142EN5V, ktorého vstup je napájaný konštantným napätím 9 V z externého zdroja Takýmto zdrojom môže byť akýkoľvek sieťový zdroj malej veľkosti, vrátane importovaného, ​​ktorý poskytuje záťaž prúd najmenej 500 mA. Kondenzátory C6-C9 na výstupe stabilizátora sú blokovacie pre napájacie obvody mikroobvodov Časti a komponenty zariadenia sú namontované na štyroch doskách plošných spojov, ktoré sú navzájom spojené plochými káblami a sú umiestnené pod. predný panel krytu klávesnice. Tlačidlá spínačov SB1-SB19, indikátory HG1, HG2 a hriadeľ variabilného rezistora R40, prevlečené otvormi v paneli, tvoria ovládací panel MIDI klaviatúry Pedál SUSTAIN môže byť ľubovoľnej konštrukcie s dvojicou normálne otvorených kontakty. K prístroju sa pripája cez konektor X3 Jack (1/4 JACK), ktorý sa nachádza na zadnom paneli prístroja. Vzhľad MIDI klaviatúry a rozloženie ovládacieho panelu displeja (indikátory HG1, GH2), ovládania hlasitosti (odpor R40 "VOLUME") a tlačidiel (SB1 - SB19) je na obr. Pomocou nich môže hudobník vykonávať všetky potrebné MIDI operácie na výber timbrálov, čísel kanálov, prerozdeľovanie hlasov atď., Ako aj ovládať externý rytmický počítač alebo sekvencer. Očíslované tlačidlá umiestnené napravo od displeja zadávajú príslušné čísla programov, MIDI kanál, tempo a funkčné tlačidlá naľavo od displeja ovládajú rôzne parametre klaviatúry. Postupným stláčaním tlačidla "PROG" (program) sa na displeji zobrazia parametre klávesnice: - typ stopy a číslo zvukového programu tejto stopy. Písmená na ľavej strane displeja označujú: A - ľavý (spodný) manuál, B - pravý (horný) manuál, C - prídavné midi zariadenie. Za písmenom nasleduje trojmiestne číslo (000-127) zvukového programu priradeného k tejto stope;

- ovládanie tempa pre generátor rytmu; súčasne sa na displeji zobrazuje písmeno T a trojmiestne číslo charakterizujúce frekvenciu úderov (downbeatov) za minútu a čiarky na displeji vytvárajú efekt „bežiacich svetiel“ pre vizuálnu kontrolu rýchlosti generátor tempa Rozsah nastavenia tempa je od 20 do 240 - režim kanála a číslo vlastného programu nástroja: v tomto prípade písmeno P na ľavej strane displeja znamená, že celá klaviatúra „sedí“. skladba *A* - informácia z klávesnice sa prenáša súčasne do skladby „B“ (režim „COMBY“), písmeno L je ľavý manuál, teda skladba „A“ (pravý manuál je „B “) Za písmenom sa zobrazuje dvojmiestne číslo (00-99) vlastného programu uloženého v pamäti RAM DD5, čísla zvukových programov a MIDI kanálov pre stopy, ako aj nasledujúce informácie: PITCH - rýchlosť tónového ladenia, MODULATION - úroveň hĺbky modulácie, VOLUME - úroveň hlasitosti, SPUT - hranica manuálnej separácie, režim kanála MODE (P. U, L), Ost A - +/- oktáva pre ľavý manuál, Ost B - + /- oktáva pre pravý manuál. Tlačidlá "-1" a +1 znižujú (zvyšujú) číselné údaje na displeji. Tlačidlo "MIDI" sa používa na priradenie MIDI kanálu ku každej stope a jeho postupným stlačením sa vyberie stopa. Na displeji sa zobrazí Ac stopa (Bc, CC) a číslo (1-16) MIDI kanálu. Pomocou tlačidla „START“ spustíte alebo zastavíte (druhým stlačením) externý rytmický počítač alebo sekvencer – na displeji sa na niekoľko sekúnd zobrazí „Strt“ alebo „Stop“. Tlačidlo "BIELA" má dva funkčné účely. Ak sú všetky zvolené parametre klávesnice vyhovujúce a je potrebné si ich zapamätať pod aktuálnym číslom vlastného programu, stlačte toto tlačidlo dvakrát. Pri prvom stlačení sa na displeji zvýraznia štyri pomlčky, čím sa prístroj prepne do programovacieho režimu. Po druhom stlačení sa všetky režimy a parametre uložia do pamäte vlastných programov zariadenia a na displeji sa zobrazí aktuálne číslo vlastného programu. Druhým účelom tlačidla "WRITE" je pracovať so zariadením v režime programovania funkcií. Tento režim sa aktivuje prvým stlačením tlačidla „WRITE“. Na displeji sa zobrazia štyri pomlčky, ktoré symbolizujú pozvanie do programovacieho režimu. Digitalizované tlačidlá začnú vykonávať funkcie programátorov nasledujúcich režimov: - PITCH - rýchlosť ladenia tónov. Na displeji sa zobrazí „PITCH BEND“ a číslo (1-4). Označenie „Pb“ zodpovedá minimu, „Pb4“ - maximálnej rýchlosti zmeny tohto parametra; - MODULATION - hĺbka modulácie 25, 50, 75 a 100%. Označené písmenami LF (LONG FREQUENCY) a číslami 1. 2, 3 a 4; - VELOCFTY - rýchlosť stláčania kláves - pevná pre celú klávesnicu. Zobrazuje sa na displeji ako trojmiestne číslo (000-127); - VOLUME - úroveň hlasitosti (O-15). Displej zobrazuje dve čísla: vľavo - pre ľavú časť klaviatúry (stopa A) v režime deliacich manuálov, vpravo - pre pravú časť (stopa B): - SPLIT - hranica rozdelenia klaviatúry do dvoch manuálov. Na displeji sa zobrazí „SP“ (SPLIT) a dvojciferné číslo posledného klávesu na ľavej strane klávesnice; - MODE - režim programovania kanálov (P, U, L). Na displeji sa rozsvieti „Pr“ - písmeno zodpovedajúce režimu kanálu (P, U, L); - TRANSPORT - transpozícia, t.j. zmena výšky klaviatúry o 12 poltónov nadol alebo o rovnaký počet poltónov nahor. Režim zostupnej transpozície je indikovaný na displeji ako dvojmiestne číslo 01-12 so znamienkom „-“ je indikovaný bez znamienka. Číslo 00 označuje žiadnu transpozíciu; - Ost A - +/- oktáva pre ľavý manuál. To znamená, že stupnica klaviatúry stopy A môže byť posunutá o oktávu nadol alebo o oktávu nahor. Na displeji sa zobrazí „Ao“-1, „Ao-0“, „Ao-1“, čo znamená posun o oktávu nižšie, žiadny posun a posun o oktávu vyššie: - Ost B - +/- oktáva pre správnu príručku. Displej zobrazuje „In -1“, „In 0“ a „In 1“ - PAUSE – veľkosť pauzy medzi odoslaniami MIDI Na displeji sa zobrazí „PA“ a dvojmiestne číslo 01-50, označujúce veľkosť pauzy v ľubovoľných jednotkách.

Bohužiaľ, niektoré hudobné karty v multimediálnych počítačoch sa pri zmene zvukového programu „skĺznu“, t. j. prestanú prijímať správy MIDI počas načítavania nového zvukového programu, čo vedie k strate prijímaných informácií. Napríklad karta YAMAHA SW20 zmení zvuky za 0,5...1 s a GRAV1S ULTRASOUND načítava zvukové programy z pevného disku, čo zaberie ešte viac času. Pre čistý chod zvukovej karty YAMAHA SW20 veľkosť pauzy zodpovedá 16. Pre lacné karty ako SOUNDBLASTER a pre hudobné nástroje s MIDI vstupom PAUSE=1. "Parametre uvedených funkcií je možné meniť pomocou tlačidiel "-1" a "+1". Po opätovnom stlačení tlačidla "WRITE" sa zvukový program stopy A (0-127) a zvukový program stopy B (0-127) sa zadávajú do pamäte vlastných programov zariadenia, zvukový program stopy C (0-127), číslo MIDI kanálu A (1-16), číslo MIDI kanálu B (1-16), MIDI kanál. číslo C (1-16), hlasitosť skladby A (0-15), hlasitosť skladby B (0-15), oktáva A (-1, 0, 1), oktáva B (-1, 0. 1), obs. režim manuálov (P, U, L), úrovne, modulácia (1 -4), rýchlosť PITCH BEND (1-4) Bez ohľadu na sériové číslovanie vlastných programov popisovaného nástroja, hranica sekcie SPLIT (1-). 61), posun výšky tónu TRANSPORT (-12, 0, +12), rýchlosť stláčania VELOCITY (0-127), tempo hranej skladby (2&-240) a gombík „VOLUME“. Tlačidlá "PITCH-", "P1TCH +", "MOD" na diaľkovom ovládači klávesnice MlDI sú prvé z nich, ktoré regulujú hlasitosť externého zariadenia, ak klaviatúra obsluhuje dva MIDI kanály (režimy U, L). regulátor tiež obsluhuje tieto kanály, ale postupne. Ktorá časť klaviatúry (manuálu) sa v poslednej chvíli dotkla rukou osoby, parametre ovládania hlasitosti sa prenesú cez tento MIDI kanál. Jasnejšie to možno urobiť vstupom do režimu programovania funkcií - stlačte tlačidlo „WRITE“ a pomocou tlačidla „4“ zapnite funkciu VOLUME. Pri plynulom otáčaní gombíka odporu R40 v smere hodinových ručičiek by sa na displeji malo zobraziť 16 stupňových stupňov od 0 do 15. Ak pracujeme na ľavej strane klávesnice, regulátor ovplyvní iba hlasitosť kanálu „A“ a úroveň hlasitosti sa zobrazí na ľavej strane displeja. Pri práci na pravej strane klaviatúry ovplyvní ovládanie Tlačidlá „PITCH-“ a „PITCH+“ poskytujú pohodlnú simuláciu činnosti ovládacieho kolieska PITCH BEND s plynulým posunom tónu nadol/nahor a späť režime programovania funkcií môžete zrýchliť alebo spomaliť prevádzku simulátora PITCH BEND. výber jednej zo štyroch rýchlostí pitch bend. Tlačidlo „MOD“ je ovládací prvok pre štyri úrovne modulácie (25, 50, 75 a 100 %). Stlačením a podržaním v tejto polohe aktivujete moduláciu MIDI tónov. Po uvoľnení tlačidla sa modulácia deaktivuje. Majitelia počítačov vybavených zvukovými kartami s MIDI rozhraním budú potrebovať aj adaptér (MIDI adaptér), ktorý je potrebný pre galvanické oddelenie MIDI vstupu nástroja a TTL midi vstupu zvukovej karty počítača. Jeho schéma je znázornená na obr. 2.

Izoláciu zabezpečuje optočlen AOT127A (U1). Adaptér je napájaný cez konektor zvukovej karty (piny 1,8 a 9 - +5 V, kolíky 4 a 5 - spoločné). Vstupy "MIDI THRU- a "MIDI OUT" sú určené na pripojenie syntezátorov, generátorov tónov a iných externých MIDI prijímačov, ktoré nie sú zabudované v počítači. Pri nastavovaní MIDI klaviatúry je potrebné venovať osobitnú pozornosť nastaveniu R38- Uzol R40 pre analógovo-digitálnu konverziu úrovne ovládania hlasitosti Urobte to na vyladenom a plne funkčnom nástroji v tomto poradí Zapnite nástroj, stlačte tlačidlo „WRITE“ na diaľkovom ovládači a potom použite tlačidlo „4“. zapnite funkciu VOLUME Plynulým otáčaním ovládača odporu R40 v smere hodinových ručičiek by sa na displeji malo zobraziť všetkých šestnásť stupňov – od 0 do 15. Ak je rozsah nastavenia posunutý alebo úzky, dosiahnete normálnu prevádzku analógovo-digitálneho signálu. prevod výberom odporu R38.

Skontrolujte dostupnosť správ midi nasledovne. Na kolík 5 konektora „MIDI OUT“ pripojte vstupnú sondu osciloskopu, stlačte pedál „SYS-TAIN“ alebo pripojte (dočasne) vstupy PCO a PC1 čipu DD6 k spoločnému vodiču a potom zapnite napájanie nástroj Pri tomto zapojení funguje cyklický výstupný program MIDI kód ​​55H Na obrazovke osciloskopu to vyzerá ako sekvencia paketov piatich impulzov Trvanie každého bitu správy kódu je 31250 bps prenosu MIDI správ.

  • Zvuk
  • Ako dieťa som mal klavír, ozajstný, sovietsky, asi 300 kilogramový, rád som na ňom brnkal a po skončení hudobnej školy som aj niečo hral. Klavír je cool, autentický, ale vôbec nie praktický. A aby to bolo naozaj na duši, potrebujete ešte biciu súpravu, sadu príslušenstva pre elektrickú gitaru, klarinet, sitar a sample loop...

    Samozrejme, teraz už nemusíte premeniť svoj byt na garážové štúdio so šiestimi platmi, stačí si do PC nainštalovať bezplatný hudobný editor. Ale toto všetko je nepohodlné.

    PC klávesnica vôbec nie je ako klávesový nástroj, všetko je tu iné. Navyše to vôbec nie je vhodné na učenie dieťaťa. Zdá sa, že nie je iná možnosť, ako si kúpiť syntetizátor. Ale stále mám pochybnosti.

    Čo je to syntetizátor? Veľké zariadenie s hudobnou klávesnicou, ktoré by malo niekde zaberať veľa miesta. Ktorý má zabudovanú akustiku, ale už mám aj prijímač s reproduktormi. Ktorý má v sebe zabudovaný zlý PC, ale ja mám dobrý PC.

    Vychádza to tak, že za 40 tisíc kúpim to, čo už mám v najlepšej kvalite, s výnimkou iba klávesnice. To je len nejaké maximum iracionálnych výdavkov.

    Pri hľadaní samostatnej klávesnice som narazil na takú triedu zariadení, ako je USB MIDI Keyboard.
    Vždy sa mi zdalo, že MIDI patrí do oblasti profesionálnej hudobnej činnosti.
    Teraz sa však všetka hudba vytvára na PC na akomkoľvek vhodnom mieste, čo znamená, že hudobníci potrebujú mobilné hudobné klávesy, ktoré sa ľahko zmestia do batohu.

    Okamžite sa mi v hlave vytvoril plán. MIDI klávesnicu pripájame k domácemu mediálnemu centru založenému na Raspberry Pi 3, kde beží softvérový syntetizátor, ktorý umožňuje komukoľvek kedykoľvek predviesť svoje ďalšie majstrovské dielo. Takéto MIDI klaviatúry majú väčšinou sadu ovládacích prvkov a prídavných tlačidiel, ktoré sú naprogramované pre rôzne efekty alebo prídavné hudobné nástroje. Vyzerá a znie to veľmi cool!

    Existujú väčšie a menšie zariadenia, niektoré drahšie a niektoré lacnejšie. Vybral som si možnosť za cca 5 tis. Má dve oktávy, klávesy normálnej veľkosti, tlačidlá pre bubeníkov, ladiace gombíky, teda všetko, o čom mohol začínajúci elektronický hudobník snívať.

    Nie som odborník na tvorbu hudby na PC, preto bolo ťažké hľadať spôsoby, ako môj nápad zrealizovať. Informácie bolo potrebné zbierať kúsok po kúsku. Hádanka sa postupne začala formovať a podarilo sa mi poskladať funkčné riešenie, o ktoré sa s vami podelím. Napodiv štandardná distribúcia Raspbian/Debian obsahovala všetko, čo ste potrebovali, nemuseli ste ani pripájať externé úložiská.

    Fluidsynth sa používa ako sekvencer (aplikácia, ktorá prehráva MIDI súbory).
    MIDI klaviatúra je okamžite detekovaná cez ALSA a je k dispozícii na pripojenie k sekvenceru.
    Na reprodukciu zvukov rôznych nástrojov sa používajú otvorené databázy vzoriek vo formáte SoundFont2. Najprv si toto všetko nainštalujte.

    Sudo -s apt-get update apt-get -y install alsa-utils fluid-soundfont-gm fluidsynth
    K Raspberry pripojíme MIDI klávesnicu a spustíme sekvencer v serverovom režime:

    Fluidsynth -i -s -a alsa -g 3 /usr/share/sounds/sf2/FluidR3_GM.sf2
    Vykonáme príkaz:

    Aconnect -o
    V dôsledku toho uvidíme zoznam dostupných MIDI klientov:

    Klient 14: "Midi Through" 0 "Midi Through Port-0" klient 20: "VMini" 0 "VMini MIDI 1" 1 "VMini MIDI 2" klient 128: "FLUID Synth (1628)" 0 "Port vstupu synth (1628 ) :0)"
    Tu je pre nás dôležité zapamätať si klientske čísla klávesnice a sekvencera, aby sme ich potom mohli spojiť s príkazom:

    Aconnect 20:0 128:0
    Teraz sme všetci pripravení hrať na klavíri Yamaha (toto je predvolený nástroj). Prečítajte si návod na fluidsynth, je tam veľa zaujímavých príkazov, napríklad zmeniť nástroj na bicie alebo dychy, nastaviť množstvo reverbu alebo chorusu.

    Urobme náš softvérový syntetizátor pohodlným. Aby sme klávesnicu nepripájali zakaždým k sekvenceru ručne, napíšeme jednoduchého démona, ktorý to urobí automaticky pri štarte.

    Cat > /etc/init.d/fluidsynth<< EOF #!/bin/bash ### BEGIN INIT INFO # Provides: fluidsynth # Required-Start: $all # Required-Stop: # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: Fluidsynth deamon to play via MIDI-keyboard ### END INIT INFO startDaemon() { sleep 30s && fluidsynth -i -s -a alsa -g 3 --load-config=/home/osmc/midi-router >/var/log/fluidsynth & spánok 60s && aconnect 20:0 128:0 & ) stopDaemon() ( pkill -9 fluidsynth &> /dev/null ) restartDaemon() ( stopDaemon startDaemon ) prípad "$1" na začiatku) startDaemon ; ; stop) stopDaemon ;; reštart) restartDaemon ;; postavenie) ;; *) startDaemon esac exit 0 EOF
    Zaregistrujte démona pre autorun:

    Predvolené nastavenia fluidsynth Chmod 755 /etc/init.d/fluidsynth update-rc.d
    Upozorňujeme, že teraz pri spustení sa sekvenceru odošle konfiguračný súbor (/home/osmc/midi-router) obsahujúci príkazy, ktoré premenia našu klávesnicu na skutočný syntetizátor.

    Tu je vec. Každý kláves a gombík na klávesnici odosiela určité udalosti s vlastným číslom. Ako som pochopil, neexistujú tu žiadne špeciálne normy, takže každý výrobca si robí, čo chce. Napríklad chcem, aby štvorcové klávesy zneli ako bubny, ostatné klávesy ako klavír a gombíky na ovládanie hlasitosti, reverbu a chorusu.

    Potrebujem teda namapovať kódy udalostí z klávesnice na rôzne nástroje a kódy z gombíkov na kódy, ktorým sekvencer rozumie. V fluidsynth sa to robí pomocou smerovača. Práve tieto príkazy sú obsiahnuté v konfiguračnom súbore.

    Tu je príklad môjho konfiguračného súboru s komentármi o tom, čo robí.

    Cat > /home/osmc/midi-router<< EOF # загружаем стандартные инструменты и ударники, найденные где-то на просторах Сети load /usr/share/sounds/sf2/FluidR3_GM.sf2 load /home/osmc/241-Drums.SF2 # связываем инструмент каждый со своим каналом select 1 2 128 0 select 2 1 0 0 # по умолчанию звук идет на канал 0 # перенаправляем события с квадратных клавиш на канал с ударными router_begin note router_chan 0 0 0 1 router_par1 36 48 1 0 router_end # события с остальных клавиш перенаправляем на канал с пианино router_begin note router_chan 0 0 0 2 router_par1 0 35 1 0 router_end router_begin note router_chan 0 0 0 2 router_par1 49 255 1 0 router_end # события с ручек мэпим на события, которые понимает секвенсер, # полный их список есть в документации на сайте fluidsynth router_begin cc router_chan 0 0 0 2 router_par1 14 14 0 98 router_end router_begin cc router_chan 0 0 0 2 router_par1 15 15 0 11 router_end router_begin cc router_chan 0 0 0 2 router_par1 16 16 0 91 router_end router_begin cc router_chan 0 0 0 2 router_par1 17 17 0 93 router_end # выключаем громкость на канале 0, # иначе при нажатии на клавишу # разные инструменты будут звучать одновременнно cc 0 7 0 EOF
    Ak chcete zistiť, aké kódy generuje vaše zariadenie, musíte použiť tento nástroj:

    Aseqdump -p 20:0
    Počúva a odosiela udalosti z MIDI klávesnice do konzoly. Stlačte tlačidlo alebo otočte gombíkom a uvidíte typ udalosti, kanál a kód. Klávesnicu si môžete naprogramovať tak, ako chcete, nie tak, ako s ňou prišli inžinieri, ktorí navrhli konkrétny syntetizátor. Za čo patrí veľká vďaka vývojárom fluidsynth, alsa, SoundFont2, Raspberry a V-Mini.

    Mimochodom, táto téma s DIY syntetizátormi sa odráža vo viacerých vynálezoch, odporúčam si ju preštudovať.

    Klávesnica je určená na pripojenie k externému zvukovému modulu alebo počítaču (ak je k dispozícii vhodné rozhranie) pomocou protokolu MIDI - na nahrávanie hudby do programu sekvencera alebo živého vystúpenia. Počet kláves v navrhovanej verzii je 48, ale môže sa zvýšiť na 64 bez zmeny obvodu Charakteristickým znakom navrhovanej klávesnice je jej citlivosť na silu nárazu na kláves.

    História zariadenia

    Pred časom som bol v súvislosti s kúpou bytu nútený prísť o luxusný nástroj, ktorý mi slúžil ako MIDI keyboard - bola to legendárna YAMAHA DX-7. Keď smútok opadol, vyvstala otázka v celej svojej závažnosti a škaredosti: na čom pracovať? Práve v tomto momente sa mi vďaka úsiliu môjho priateľa dostal do rúk polozmontovaný obvod pre KR1816BE39 (v protivníkovi sa tento procesor nazýva 8048). Okruh sa ľahko zostavuje a nastavuje, a čo je najdôležitejšie, prišiel pod ruku v správnom čase. Klávesnicu som zostavil vo forme matice 8x6 pomocou KR1533ID7 a KR1533KP7. Bola tu aj mucha - dve nevýhody tejto schémy zabíjajú všetky jej výhody: nedostatočná citlivosť na rýchlosť stlačenia klávesov (reproduktory) a koliesko PITCH WEEL. Nuž, raz som programoval na Z-80 (a dokonca som si vyrobil funkčný sekvencer) a rozhodol som sa otriasť zo starých čias. Rozhodne som odmietol Z-80 ako CPU ako morálne zastaraný. Okrem toho som nechcel robiť veľa spájkovania a rozhodol som sa vziať to isté zariadenie na KR1816BE39 ako základ a vybaviť ho ďalším multiplexerom na prerušenie (horných) kontaktov kľúčov. Našiel som dokumentáciu (neuveríte - v knižnici knihu “Designing Digital Devices on Single-Chip Microprocessors”) k assembleru KR1816BE39 a načmáral som program... A potom sa ukázalo, že kamarátov programátor ROM mal zomrel a jednoducho nebolo čím program flashovať... Zo smútku som úplne stratil myseľ a rozhodol som sa prepísať rovnaký algoritmus pre PIC. Za pol dňa bol programátor (LUDIPIPO) zaspájkovaný, následne bol vyrobený prototyp zo zásuvky, KR1533ID7 a páru KR1533KP7 a celá inštalácia bola vykonaná MGTF bez akéhokoľvek razenia. A proces sa začal...

    Najprv bola spustená nedynamická verzia programu (uvádzam aj pre tých, ktorí majú klávesnicu s jedným kontaktom na kláves). Potom začala dynamická verzia. A potom prišiel nápad pridať tlačidlá a indikátor. Faktom je, že WAVEBLASTER (dcérsky wavetable syntezátor pre veľmi staré zvukové systémy) ležal dlho nečinný. Prepojením s mojím výtvorom som získal niečo, na čom sa dá hrať (podľa svojich schopností a talentu) aj bez počítača, čo sa niekedy celkom hodí. Toto určilo sadu funkcií na tlačidlách - môže to byť užitočné pri pripájaní k zvukovým modulom počas „živého“ prehrávania. Funkcie tlačidiel sa dajú ľahko zmeniť napísaním vlastných obslužných programov a použitím mojich postupov hlasovania a zobrazenia. Nejako sa ukázalo, že klávesnica zostavená v železnom obale je pohodlnejšia ako YAMAHA PSS (stále klávesy v plnej veľkosti, pedál a čo je najdôležitejšie, dynamika!). Uprostred kreatívneho procesu vznikla ťažká túžba vyrobiť verziu MIDI klávesnice čisto pre počítač - indikátor a tlačidlá sú voliteľné, ale potrebné sú kolieska PITCH WEEL a MODULATION. Chvíľu som s tým bojoval, ale nakoniec som to vzdal a opäť som zapol spájkovačku. Elektronika nie je náročná na montáž, ale mechanika je o niečo náročnejšia a nad dizajnom kolies som začal krčiť čelo. Po chvíli rozmýšľania som sa rozhodol opustiť druhé koliesko – každopádne nikdy neroztáčam obe naraz, zvyčajne najprv píšem noty a výšku, potom pridám moduláciu. V neposlednom rade bolo zníženie objemu mechanickej práce, ktorú som tak miloval, na polovicu. Pre menej lenivých nižšie vysvetlím, ako vyrobiť dve kolesá takmer bez zložitosti. Aby som stále mohol písať moduláciu, rozhodol som sa zorganizovať tri prevádzkové režimy kolesa: výška tónu pre 2 poltóny, výška tónu pre 1 poltón (pohodlná) a modulácia. To všetko môžete prepínať jedným tlačidlom, režim indikovať dvojicou LED diód. Pre zjednodušenie obvodu som eliminoval zostávajúce tlačidlá a indikátory, to všetko nie je potrebné na prácu s modernými programami sekvencera.

    Koleso sa samozrejme musí dať na os potenciometra, to je pochopiteľné, ale s čím by malo byť spojené? Moja prvá myšlienka bola použiť jednorazový časovač 555, ale výpočty ukázali, že by bolo ťažké dosiahnuť presnosť a stabilitu merania šírky impulzu pri pokuse poskytnúť prijateľnú rýchlosť vzorkovania kolesa, pretože procesor je zaneprázdnený hlavne meraním. čas spínania kontaktov klávesnice. Jediný spôsob, ktorý zostáva, je použiť analógovo-digitálny prevodník (ADC). Keďže som používal Pic16F84 bez vstavaného ADC, spomenul som si na svoje inžinierske zázemie (a moju rodnú továreň) a vyrobil som ADC z niekoľkých rezistorov s komparátorom (a kúskom programu). Ukázalo sa to jednoduché, lacné a celkom presné.

    Uvádzam obe schémy - s tlačidlami aj s kolieskom, ako aj programy k nim. V prípade potreby je možné oba okruhy ľahko skombinovať miernou zmenou adries externých zariadení, stačí si uvedomiť, že režim CHORUS (STEREO) používa výšku tónu na získanie rozladenia a musíte ho buď odstrániť, alebo sa starať o prenos výšky tónu s rozladením; cez kanály.

    Takže - skutočná klávesnica

    Schéma zariadenia

    Ako prvá sa objavila nedynamická verzia, necitlivá na silu nárazu na kľúč – na testovanie funkčnosti rozloženia.

    PIC16F84 som použil ako procesor z niekoľkých dôvodov: tento čip je dostupný, lacný a ľahko programovateľný a bol to ten, ktorý som mal po ruke. Pozor: PIC16C84 nie je vhodný - má len 36 buniek RAM a program nebude fungovať. Obvod kolesa však používa menej buniek RAM a jeho program je možné vtesnať do PIC16C84 zmenšením niekoľkých ďalších buniek, napríklad MIDCH (priradením konštantného MIDI kanálu všetkým prenášaným dátam).

    Schéma dynamickej klávesnice s indikáciou je uvedená nižšie:

    Okruh je v mnohých ohľadoch tradičný - je ťažké znovu vynájsť bicykel bez pedálov a kolies J Port B funguje na prenos - spodných 7 bitov poskytuje kľúčovú adresu v matici alebo údaje pre externé zariadenia (indikátor a koleso DAC). Najvýznamnejší bit sa používa na výstup MIDI dát v sériovom kóde - konverzia a výstup sa vykonáva softvérovo. Preto by mal byť kryštál na frekvencii 4 MHz, pokiaľ nechcete prepísať rutinu výstupu bajtov MIDI. Dva najmenej významné bity portu A slúžia na príjem - prijímajú signály z multiplexerov „uvoľnených“ a „stlačených“ kontaktov klávesov a tri najvýznamnejšie bity určujú adresu externého zariadenia (cez ďalší dekodér KR1533ID7). V obvode s kolieskom som opustil dekodér adresy externého zariadenia, aby som obvod zjednodušil a uvoľnil vysoký bit portu PA4 pre vstup dát z komparátora, takže adresy klávesnice a tlačidiel sú odlišné. Pri kombinovaní obvodov bude potrebné tento mikroobvod vrátiť, na dešifrovanie adresy použite portové bity PA2 a PA3 a adresu 4 zariadení: klávesnicu, tlačidlá, register dynamických indikačných údajov a register dôvernosti dynamickej indikácie. Indikáciu režimu kolieska bude potrebné prepísať.

    Okruh s kolieskom PITCH WEEL / MODULATION vyzerá takto:

    Na každý kľúč je nainštalovaná jedna dióda na oddelenie. Rezistory na vstupoch multiplexerov by nemali byť väčšie ako 8k, inak sú možné chyby v dôsledku montážnej kapacity. Indikátor - ľubovoľný so spoločnou anódou pre 3 číslice, ak sú svorky segmentov každej číslice na výstupe oddelene, musia sa spojiť svorky segmentov s rovnakým názvom - indikácia je dynamická a číslice svietia postupne. Akékoľvek tlačidlá, bez uzamknutia, odskok kontaktu je riadený softvérom. LED diódy sú nainštalované v blízkosti tlačidiel s rovnakým názvom a indikujú aktiváciu príslušných režimov, tlačidlá „+“ a „-“ nemajú diódy LED. Tranzistory na indikátore sú akékoľvek nízkoenergetické, vysokofrekvenčné reverzné vedenie. Dva registre KR1533IR23 sa používajú na striedavé zachytenie adresy a kódu aktuálnej číslice indikátora (LED diódy sú tiež zoskupené do dvoch kvázi číslic). Použil som štandardnú klávesnicu zo sovietskych elektrických organov so 48 klávesmi (vyrábala sa aj samostatne ako rádiový dizajnér „ŠTART“ a je pomerne rozšírená). Aby sa zmenšila výška klaviatúry a hrúbka nástroja, boli ponechané dve zo šiestich kontaktných skupín pod každým klávesom a celé to bolo narezané a znovu zlepené. Vo všeobecnosti stačí jedna spínacia skupina na kľúč, ale bolo pohodlnejšie ju takto zlepiť. Prípojnice „uvoľnených“ a „stlačených“ kontaktov majú dĺžku 8 kláves. Na želanie možno použiť aj klávesnicu, kde sú namiesto spínacej skupiny kontaktov použité dva páry zapínacích kontaktov - jeden pár sa zopne na začiatku pohybu klávesy, druhý na konci (ako na nástrojoch YAMAHA). V tomto prípade musí byť signál do PA0 napájaný z inverzného výstupu multiplexora (pin 6). Bez zmien v obvode môžete použiť klávesnicu so 64 klávesmi (štandard – 61, t.j. 5 oktáv). Ak je to potrebné, počet kľúčov sa môže zvýšiť na najmenej 127, aby ste to dosiahli, musíte do obvodu zaviesť ďalší dekodér KR1533ID7.

    Veľmi dôležité je dobre nastaviť mechaniku – horné kontakty MUSIA pri uvoľnení kláves zovrieť. Ak sa tak nestane, program považuje takéto klávesy za stlačené a pokúsi sa ich spracovať, takže opätovné stlačenie týchto klávesov nevydá zvuk. Navyše maximálny počet nôt, ktoré možno hrať súčasne, je 10 (ak niekomu narástlo viac prstov na ruke, toto číslo sa dá ľahko zmeniť) a neuvoľnením kláves sa tento počet znižuje. Z rovnakých dôvodov sa počet kláves špecifikovaný v procedúre dotazovania klávesnice MUSÍ zhodovať s počtom skutočných klávesov. Odskok kontaktu je potlačený softvérom.

    Pre odporovú maticu R-2R ADC je vhodné vybrať odpory s presnosťou 1–2% a absolútne hodnoty sa môžu líšiť, pomer je dôležitý. Nemali by ste však výrazne zvyšovať nominálnu hodnotu, tým sa zvýši čas konverzie v dôsledku vstupnej kapacity komparátora. Použil som SMD odpory bez prispôsobenia, hoci merania ukázali, že v jednom montážnom páse sú odpory zvyčajne prispôsobené s presnosťou nad 1%. Som si istý, že obvod bude pracovať s nepresnými odpormi, ale linearita charakteristiky sa zhorší. Samotné koliesko je vyrobené z rukoväte zo starého televízora a na osi potenciometra má pružinu, ktorá ho vracia do strednej polohy. Pre pohodlie nastavenia mechaniky sa po zapnutí napájania so stlačeným tlačidlom režimu aktivuje program ladenia, ktorý rozsvieti LED diódu, keď je koleso v strednej polohe, čo vám umožní jemne doladiť nulovú polohu kolieska na osi potenciometra. Ak je potreba a želanie vyrobiť samostatné MODULačné koleso, je potrebné ho pripojiť k voľnému komparačnému prvku (sú štyri) a matica R-2R je spoločná pre obe kolesá. Na prepínanie výstupov komparátorov je lepšie použiť ďalší mikroobvod a ako riadiaci signál použiť PA2.

    Na želanie si môžete zostaviť dynamickú verziu klávesnice bez indikácie, tlačidiel a kolieska PITCH WEEL / MODULATION - jednoducho bez montáže nepoužitej časti obvodu. Všetky meniteľné parametre sa po zapnutí nastavia na predvolené...

    To všetko môže byť napájané z čohokoľvek, spotreba prúdu závisí od konkrétneho indikátora a nepresahuje 100 mA. Stabilizátor 7805 mám priamo na doske bez chladiča (je to dobre vidieť na fotke). Malý radiátor je potrebný, ak sa do neho dodáva viac ako 9V. Komparátor je napájaný napätím 9 - 12 V, najlepšie stabilizovaným. Áno, použil som sovietske mikroobvody zo starých zásob - existuje veľké množstvo ich moderných analógov, výmena je možná a dokonca žiaduca - moderné analógy majú nižšiu spotrebu.

    Program

    Algoritmus na spracovanie stlačených klávesov pochádza z algoritmu navrhnutého v časopise „Microprocessor Tools and Systems“ č. 5, 1986. Bola to táto publikácia (alebo skôr chyba v navrhovanom programe), ktorá ma podnietila študovať assembler. V skutočnosti jedinou myšlienkou prevzatou odtiaľ bolo zaznamenať počet každého stlačeného klávesu do špeciálne pridelenej oblasti pamäte RAM (CHAN), takže keď je klávesnica znova vyzvaná, nespracúva znova už spracovaný kláves. Pre každé zo stlačených klávesov mám pridelené dve bunky RAM (celkom nie viac ako 10): v prvom je zaznamenané číslo stlačeného klávesu, v druhom - jeho RYCHLOSŤ (rýchlosť stláčania). Opakujem - týchto buniek je len 20 a počiatočná adresa je daná názvom CHAN. Znamienko voľného páru je nastavený najvýznamnejší bit prvej bunky. Najvýznamnejší bit druhej bunky, ktorá sa nastavuje, znamená, že NOTE ON pre tento kľúč už bol prenesený a nepotrebuje ďalšie spracovanie.

    Nebudem podrobne popisovať celý program, zdrojový kód je preplnený komentármi a je celkom prístupný pre vyškoleného človeka. Pre ostatné poskytujem ihneď hotový firmware v súbore Dinamic.hex a Pitchmod.hex. Vysvetlím len niektoré veci, ktoré nie sú zrejmé. Najprv o dynamike: v okamihu otvorenia horných kontaktov kľúča sa jeho číslo zapíše do prvej bunky prvého voľného páru z oblasti CHAN, čím sa súčasne vynuluje znak voľného páru. Počiatočná hodnota VELOCITY = 127 sa zapíše do druhej bunky. Citlivosť klávesnice je určená frekvenciou prerušenia, pretože spracovanie prerušenia znižuje hodnoty VELOCITY pre všetky klávesy, pre ktoré ešte nebol prenesený NOTE ON. Prerušenia sú spôsobené vstavaným časovačom. V momente, keď sú spodné kontakty kľúča zatvorené, v príslušnej bunke CHAN sa nastaví znak „prenesený“ a odošle sa NOTE ON s aktuálnou VELOCITY. Na zlepšenie krivky citlivosti sa hodnoty VELOCITY znižujú podľa logaritmického zákona: 1/16 jej časti zníženej o 1 sa odpočíta od aktuálnej hodnoty VELOCITY, zatiaľ čo kľúč sa pohybuje od horného kontaktu k nižšiemu za prvé, hodnota VELOCITY v zodpovedajúcej bunke CHAN klesá podľa logaritmického zákona a čím rýchlejšie sa kľúč pohybuje, tým väčšia je VELOCITY v momente, keď sú spodné kontakty kľúča zatvorené a vysiela sa NOTE ON. Prerušenia ovládajú aj dynamické zobrazenie, aby sa eliminovalo blikanie indikátora.
    Funkcie tlačidiel: TRANSPOSE - všetky klávesy sú zredukované na vaše obľúbené A mol: rozsah +/- 15 poltónov. PRG priradí timbre (nástroj) danej predvoľbe (UP1-UP5) a VOL priradí jej hlasitosť. Aktuálny parameter je zobrazený na indikátore a je možné ho zmeniť pomocou tlačidiel „+“ a „-“ TWIN zobrazuje „dvojitý“ timbre – jednu z predvolieb (UP1-UP5) a zároveň predvoľbu LOWER. zvuk súčasne. STEREO reprodukuje zvuk aktuálnej predvoľby do pravého a ľavého stereo kanála s miernym „rozladením“ (efekt „chorus“). Tlačidlo SPLIT nie je aktivované. Pedál SUSTAIN je obvodovo navrhnutý ako jedno z tlačidiel, kapacita jeho drôtu by nemala byť príliš veľká. Adresy obslužných prvkov tlačidiel sú zhromaždené v tabuľke na začiatku programu, pri zmene funkcií tlačidiel môžete nahradiť svoje vlastné.

    ADC kolesa je polovičný softvér, funguje pomocou postupného aproximačného algoritmu, matica R-2R vykonáva digitálno-analógový prevod. Najprv sa na maticu R-2R použije 1 z najvýznamnejšej číslice a komparátor určí, či je to veľa alebo málo. Ak je málo, 1 zostáva v najvýznamnejšom bite, ak je veľa - 0. Potom sa to isté stane s každým nasledujúcim bitom nízkeho rádu (celkovo 6 krokov) a dostaneme šesťbitové číslo zodpovedajúce uhol natočenia kolesa. Táto presnosť sa mi zdá dostatočná, ale môžete pridať ešte jeden bit zvýšením matice a konverzným programom.

    Dizajn

    Ako skutočnú klávesnicu som použil konštruktor „Start“ sovietskej výroby, možno je teraz jednoduchšie nájsť starú, nefunkčnú Yamahu alebo Casio, vyrieši sa tým aj problém výroby puzdra - ak, samozrejme, starý nástroj je relatívne neporušený...

    Doska s plošnými spojmi nebola vyvinutá - považoval som za nevhodné tráviť čas zapojením a výrobou dosky na výrobu jednej kópie zariadenia a rozloženie bolo urobené na doske s plošnými spojmi pomocou prepojok MGTF. Ako konektor a kábel ku klávesnici sme použili kábel z disketových jednotiek z počítača s príslušným konektorom na každej strane - uľahčuje to montáž/demontáž hotového zariadenia.

    V mojom prípade bolo telo ohnuté z tenkého oceľového plechu (čo bolo po ruke) - s drevenými bokmi (ako staré sovietske nástroje).

    No to je skrátka všetko. Kreatívny úspech!

    Zoznam rádioelementov

    Označenie Typ Denominácia Množstvo PoznámkaObchodMôj poznámkový blok
    Schéma č.1.
    MikrokontrolérPIC16F841 Do poznámkového bloku
    ČipKR1533ID71 Do poznámkového bloku
    ČipKR1533KP71 Do poznámkového bloku
    Lineárny regulátor

    LM7805

    1 Do poznámkového bloku
    Dióda

    KD522A

    64 Do poznámkového bloku
    Kondenzátor22 pF2 Do poznámkového bloku
    Kondenzátor0,1 uF2 Do poznámkového bloku
    100 uF2 Do poznámkového bloku
    Rezistor

    220 ohmov

    2 Do poznámkového bloku
    Rezistor

    6,8 kOhm

    8 Do poznámkového bloku
    Kremenný rezonátor4 MHz1 Do poznámkového bloku
    Tlačidlo klávesnice 64 Do poznámkového bloku
    Schéma č.2.
    MikrokontrolérPIC16F841 Do poznámkového bloku
    ČipKR1533ID72 Do poznámkového bloku
    ČipKR1533KP72 Do poznámkového bloku
    ČipKR1533IR232 Do poznámkového bloku
    Lineárny regulátor

    LM7805

    1 Do poznámkového bloku
    Bipolárny tranzistor

    KT315A

    5 Do poznámkového bloku
    Dióda

    KD522A

    80 Do poznámkového bloku
    Kondenzátor22 pF2 Do poznámkového bloku
    Kondenzátor0,1 uF2 Do poznámkového bloku
    Elektrolytický kondenzátor100 uF2 Do poznámkového bloku
    Rezistor

    180 ohmov

    7 Do poznámkového bloku
    Rezistor

    220 ohmov

    2 Do poznámkového bloku
    Rezistor

    6,8 kOhm

    16 Do poznámkového bloku
    Rezistor

    8 kOhm

    1 Do poznámkového bloku
    Kremenný rezonátor4 MHz1 Do poznámkového bloku
    3-miestny digitálny LED indikátor so spoločnými anódami. 1 Do poznámkového bloku
    Dióda vyžarujúca svetloČervená12 Do poznámkového bloku
    Kľúčový spínač 64 Do poznámkového bloku
    Tlačidlo 16 Do poznámkového bloku
    Schéma č.3.
    MikrokontrolérPIC16F841 Do poznámkového bloku
    ČipKR1533ID71 Do poznámkového bloku
    ČipKR1533KP72 Do poznámkového bloku
    Porovnávač

    Už dlho som chcel v sebe prebudiť skladateľa a začať vytvárať vlastnú elektronickú hudbu. Mňa však (mierne povedané) odrádzali vysoké ceny MIDI ovládačov. Ale po prehľadávaní internetu som dostal nápad vytvoriť si vlastný ovládač pomocou Arduino Uno a vodivých farieb!

    Začnime)

    Krok 1: Výber dielov

    Môžete sa mierne odchýliť od prezentovaného materiálu a MIDI kontrolér, ktorý ste zostavili, bude stále fungovať (pod pojmom „mierne odchýliť“ mám na mysli, že môžete nainštalovať odpor s mierne odlišnou hodnotou alebo nechať jeden z kolíkov odpojený).

    Z elektroniky potrebujeme:

    • 1 Arduino Uno s káblom USB;

    • 1 nádoba vodivej farby;

    • 1 montážna doska s rozmermi 5x7 cm;

    • 3 tlačidlá;

    • odpory s odporom 2,2 kOhm;

    • 1 LED;

    • odpory s odporom 10 kOhm;

    • 1 snímač LDR;

    • odpory s odporom 4,7 kOhm;

    • 1 prepojka;

    • 12 ks rezistorov 2,7 MΩ;

    • 30 priamych kolíkov;

    • 12 ohnutých čapov;

    • 12 adaptérov;

    • 12 sponiek.

    Okrem elektroniky budete potrebovať aj tieto nástroje:

    • Spájkovačka a spájka;
    • Nožnice na drôt;
    • Stojan na spájkovanie dielov (tretia ruka);
    • multimeter;
    • Niekoľko drôtov a/alebo tenký kovový drôt.

    Krok 2: Spájkujte kolíky

    Začneme vytvárať dosku spájkovaním kolíkov. Uverejníme príspevok ohnuté čapy v strede prvého radu na doske. Následne budú slúžiť ako „citlivé“ piny, ku ktorým bude pripojená klávesnica.

    Po nainštalovaní kolíkov si všimnite, že krátke kolíky vyčnievajú z dosky. Zatlačíme na ne, aby všetko išlo do roviny. Teraz ich zaspájkujeme a hneď skontrolujeme spoje na skrat.

    Poznámka: Nespájkujte kolíky príliš dlho, inak sa zohrejú a roztavia plast.

    V ďalšom kroku umiestnite rovné hrebene do štrbín Arduino. Nainštalujte dosku na vrcholy kolíkov, ktoré sú vložené do Arduina. Táto akcia vyžadovala trochu sily, pretože kolíky nie sú dokonale zarovnané s otvormi na doske.

    Po úspešnej inštalácii dosky na kolíky sa uistite, že kolíky sú zarovnané s horným okrajom dosky. Potom môžu byť spájkované.

    Krok 3: Spájkujte prepojky

    Teraz vyberieme dosku z Arduina a otočíme ju na opačnú stranu. Spájkujme prepojky, na ktoré budú komponenty neskôr pripevnené. Existujú dva spôsoby, ako to urobiť:

    • Naplňte všetky potrebné otvory spájkou a potom ich navzájom spojte.
    • Použite tenký drôt.

    Odporúčam vám použiť druhú metódu, pretože je jednoduchšia a rýchlejšia. Ak zvolíte túto metódu, umiestnite drôt na dosku tak, ako je znázornené na obrázku.

    • Červená bodka znamená spájkovanie drôtu do otvoru.
    • Žltá bodka - tenký drôt pripojte na kolík na druhej strane dosky (ako na treťom obrázku).

    Ako vidíte, trochu som pokazil ľavý dolný roh, keď som použil príliš veľa spájky, takže buďte opatrní!

    Tip: Ak nemáte tenký drôt, použite zvyšky vodičov odporov, ktoré používate.

    Krok 4: Spájkujte dotykové kapacitné odpory

    Inštalujeme komponenty, tj 2.7 MOhmodpory, ktorý bude vykonávať senzoricko-kapacitné funkcie.

    Poznámka: Ak sa chcete dozvedieť viac o teoretických základoch a praktických aplikáciách dotykových kapacitných snímačov, odporúčam vám pozrieť si nasledujúce odkazy:

    Umiestnime jeden 2.7 MOhmodpor zospodu pravého ohnutého kolíka a prestrčte nohy cez otvory (ako na prvom obrázku). Teraz otočme dosku a zatlačte jeden vodič rezistora späť do ďalšieho otvoru (ako je znázornené na druhom obrázku). Prispájkujte spodnú časť odporu k otvoru a hornú časť odporu ku kolíkovej svorke. Potom priložíme 7 cm drôtu na tento kolík (ako je vidieť na treťom obrázku).

    Zopakujme proces so všetkými odpormi a drôtmi a prispájkujme ich na miesto. Spodné nohy rezistorov by mali tvoriť jedno dlhé spojenie.

    Poradenstvo: Vyberte si striedajúce sa farby vodičov – to uľahčí pripojenia v neskorších krokoch.

    Krok 5: Spájkujte tlačidlá

    Začnime umiestnením tlačidiel a rezistorov na dosku, ako na prvom a druhom obrázku. V mojom prípade som použil 2.2 kOhm odpory, ale môžete použiť akýkoľvek odpor s hodnotou medzi 2kOhm a 10KOhm.

    Otočme dosku a všetko prispájkujme na miesto. Obrázok 3 vysvetľuje rôzne pripojenia, ktoré budete musieť vytvoriť:

    • modrá bodka - označuje nohu tlačidla, ktorú je potrebné prispájkovať na dosku;
    • ružová bodka – označuje odporovú nohu, ktorá musí byť prispájkovaná k doske;
    • červená čiara znamená, že by ste mali spájať dva body do jedného spojenia;
    • čierna čiara označuje drôt, ktorý pôjde z jednej nohy tlačidla cez otvor v doske, ktorý sa potom pripojí ku kolíku na druhej strane.

    Ak je všetko prispájkované správne, dve tlačidlá úplne vľavo vám umožnia zmeniť oktávy, zatiaľ čo tlačidlo úplne vpravo bude aktivovanéLDR senzor.

    Krok 6: Spájkujte LDR a LED

    Po prispájkovaní tlačidiel pokračujeme v inštalácii LDR, LED a zodpovedajúcich rezistorov. Predtým, ako to urobíte, bolo by rozumné experimentovať s hodnotami rezistorov, ktoré pôjdu na LED. Možno je moje hodnotenie príliš vysoké na zapnutie vašej LED. Trochu experimentujte, aby ste našli správnu hodnotu odporu.

    Tip: Akýkoľvek odpor medzi 330Ohm a 5kOhmbolo by to dobré riešenie pre 5mmLED.

    Teraz usporiadame LED, LDR a odpory ( 4.7 K preLDR) na správnych miestach. Dosku otočíme a všetko zaspájkujeme. Tretí obrázok vysvetlí rôzne spojenia, ktoré je potrebné vytvoriť:

    • hnedé bodky sú kolíky LDR, ktoré by mali byť prispájkované k doske;
    • ružová bodka je odporová noha, ktorá by mala byť prispájkovaná k doske;
    • oranžové bodky sú kolíky LED, ktoré je potrebné prispájkovať na dosku;
    • červený pruh - musíte spájkovať dva body do jedného spojenia;
    • čierny prúžok je drôt, ktorý pôjde z výstupu odporu cez otvor dosky, ktorý sa potom pripojí ku kolíku.

    Poznámka: Pred spájkovaním LED sa uistite, že polarita LED je správna. Kladný pól LED by mal byť pripojený k odporu a záporný pól k zemi.

    Krok 7: Otestujte všetky pripojenia

    Teraz je vhodný čas vyskúšať, či sú spoje tlačidiel, LDR a LED úspešne zaspájkované. Toto je posledná príležitosť na opravu chýb, odporúčam vám stiahnuť si priložený kód a spustiť program. a stiahnuť Arduino_Test_Fixture_Code na dosku Arduino.

    Ak je všetko úspešné a test je dokončený, môžete prejsť na ďalší krok. Ak nie, dvakrát skontrolujte spájkované spoje na doske. Je lepšie mať po ruke multimeter, hovorím to z vlastnej trpkej skúsenosti.

    Krok 8: Dokončenie dosky

    Začnime inštaláciou vodičov do otvorov, ako je vidieť na prvom obrázku. Pre tento krok je vhodné použiť dva drôty rôznych farieb.

    Dosku otočíme a drôtiky odstrihneme na požadovanú dĺžku. Prispájkujte ich na kolíky, ktoré idú do konektorov Arduino. Skôr ako začnete používať MIDI ovládač, najprv musíte otestovať jeho pripojenia pomocou testovacieho náčrtu. Nahrajte náčrt, otvorte sériový port a dotknite sa „citlivých“ kolíkov na doske. Ak sa pri každom špendlíku zobrazí text „Poznámka x je aktívna“, všetky špendlíky fungujú správne.

    Krok 9: Preveďte Arduino na zariadenie MIDI

    Keď je doska pripravená, je čas previesť Arduino na MIDI kontrolér, ktorý rozpoznajú hudobné programy ako Ableton a Fl Studio alebo dokonca iné MIDI zariadenia. Proces pozostáva z dvoch krokov:

    1. Zmeňte aktuálny firmvér na Arduino Uno na programy kompatibilné s MIDI;
    2. Nahrajte MIDI skicu do Arduina.

    Začnime od prvého bodu. Podľa stavu sa načíta do Arduina firmvéruUSB-sériový port, ktorý umožňuje Arduinu vymieňať si správy s PC a Arduino IDE. S novým programom DualMoco, pribudne druhý režim, ktorý umožní Arduinu fungovať ako MIDI zariadenia.

    Použijeme program FLIP a podľa pokynov zmeníme firmvér Arduina. Pracovný súbor nájdete v archíve v priečinku Firmware – súbor DualMoco.hex.

    Po stiahnutí nového firmvéru znova pripojte Arduino k PC. Ak všetko pôjde dobre, Arduino by nemalo byť detekované Arduino IDE, pretože nový program je v ( MIDIrežim). Otvorte hudobný program, ktorý je schopný nahrávať MIDI a skontrolujte, či je Arduino pomenované MIDI/ MOCOpreLUFA sa zobrazilo nad nastaveniami MIDI, ako môžete vidieť na 1. obrázku.

    Krok 10: Urobte posledné prípravy

    Zvláštnosť DualMocože má druhý režim - USB-sériový port, ktorý vám umožňuje nahrávať skice z Arduino IDE, rovnako ako s bežným firmvérom. Ak chcete uviesť Arduino do druhého režimu, pripojte dva kolíky ISCP dohromady, ako je znázornené na obrázku 1 a 2. Môžete použiť buď kúsok drôtu alebo malý prepojovací kábel, ako je znázornené na obrázkoch. Teraz odpojte USB kábel od Arduina na niekoľko sekúnd a znova ho pripojte, Arduino by sa malo objaviť v Arduino IDE.

    Poznámka: Keď chcete prepnúť z režimuusb-sériový portVV režime MIDI odstráňte prepojkuKolíky ISCP, ako je znázornené na treťom obrázku, a znova ich pripojteArduino do PC.

    Je čas nahrať aktuálnu skicu do Arduina, Arduino_Finálny, konečný_kód. Stiahnite si ho, skonvertujte Arduino na usbsériový port režim a stiahnite si kód. Ak potrebujete doladiť prah, experimentujte s hodnotami PRAH A OZE. Keď všetko funguje podľa očakávania, zmeňte aktuálny riadok 17 z:

    booleovský midiMode = false; // ak midiMode = false, Arduino bude fungovať ako zariadenie usb-to-serial

    booleovský midiMode = true;// ak midiMode = true, Arduino bude fungovať ako natívne MIDI zariadenie.

    Po vykonaní posledných zmien v kóde je čas otestovať hudobný program, ktorý môže podporovať zariadenia MIDI. Najprv prepnime Arduino do režimu MIDI:

    1. Nahrajme finálny kód do Arduina.
    2. Odpojme USB kábel z Arduina.
    3. Prepnite Arduino do režimu MIDI odstránením prepojky z kolíkov ISCP.
    4. Nainštalujte kábel USB do Arduina.

    Ak všetko prebehlo dobre, otvorte hudobný program a začnite sa dotýkať kolíkov. Magické zvuky musia znieť...

    Krok 11: Prispájkujte sponky na prepojky

    Keď je doska Arduino úplne dokončená, je čas zamerať sa na klávesnicu a spôsob jej pripojenia k doske. Existuje milión spôsobov, ako to urobiť, ale vybral som kancelárske sponky, ktoré by boli pripevnené k maľovanému papieru (ľahko sa upevňujú a dajú sa znova použiť).

    Proces spájkovania kancelárskych sponiek na drôty je pomerne jednoduchý:

    1. Odrežte zástrčku na jednej strane drôtu;
    2. Odizolujeme drôt o 5 mm;
    3. Spájkujte odizolovaný drôt na kancelársku sponku;
    4. Opakujte pre všetkých 12 sponiek.

    Poznámka: Spony by nemali byť potiahnuté žiadnym povlakom (farba alebo plast).

    Krok 12: Maľovanie šablóny

    Aj keď je možné hrať na klaviatúre Arduino MIDI jednoduchým dotykom sponiek, oveľa zábavnejšie je vyrobiť si vlastnú šablónu a používať ju. Vyfarbenú predlohu. Šablóna je v archíve projektu.

    Vyfarbenie šablóny je celkom jednoduché, len dbajte na to, aby ste nechali priestor medzi čiarami a použili vhodné farby, inak to nebude fungovať. Po zaschnutí farby pripevnite sponky na „kľúče“ a môžete začať robiť hudbu.

    Ďakujem za tvoju pozornosť!)