Բովանդակություն:

Եկեք կառուցենք SN76489 USB MIDI Synth Arduino Nano- ի հետ. 7 քայլ
Եկեք կառուցենք SN76489 USB MIDI Synth Arduino Nano- ի հետ. 7 քայլ

Video: Եկեք կառուցենք SN76489 USB MIDI Synth Arduino Nano- ի հետ. 7 քայլ

Video: Եկեք կառուցենք SN76489 USB MIDI Synth Arduino Nano- ի հետ. 7 քայլ
Video: Եկեք կառուցենք մաքսակետերով ամրոց. Թագուհի Ղազարյան 2024, Հուլիսի
Anonim
Image
Image
Եկեք կառուցենք SN76489 USB MIDI Synth Arduino Nano- ի հետ
Եկեք կառուցենք SN76489 USB MIDI Synth Arduino Nano- ի հետ
Եկեք կառուցենք SN76489 USB MIDI Synth Arduino Nano- ի հետ
Եկեք կառուցենք SN76489 USB MIDI Synth Arduino Nano- ի հետ

Երբևէ ցանկացե՞լ եք կառուցել ձեր սեփական սինթեզատորը `հիմնված 80-ականների հին չիպային մեղեդիների վրա: Նվագե՞լ պարզ բազմաձայն հնչյուններ, որոնք հնչում են այնպես, ինչպես հնչում էին այս հին Sega Master System և Megadrive տեսախաղերը:

Ես ունեմ, հետևաբար, ես eBay- ից պատվիրեցի մի քանի SN76489 չիպ և midi սերվերի ինտերֆեյս և տվեցի այն: Դե, այգում զբոսնելն ինձ համար չէր, բայց ես վայելում էի ամեն պահը:

Սկզբում ես սովորեցի, թե ինչպես ուղղակիորեն միացնել SN76489- ը և աղմուկ բարձրացնել դրա հետ: Դրա մեջ կային որոշ շփոթեցնող տարրեր, բայց The Oddbloke Geek Blog- ի և մի քանի այլ օրինակների օգնությամբ, չիպերի ճշգրտման փաստաթղթի հետ միասին, ես կարողացա մշակել պարզ arduino գրադարան:

Հաջորդը, ես պետք է սովորեի, թե ինչպես միացնել midi ստեղնաշարը USB մինի հյուրընկալող վահանի հետ: Սա այնքան էլ դժվար չէր, քանի որ առկա են որոշ փաստաթղթեր, և կան լավ գրադարաններ `հստակ օրինակներով:

Երբ ես հասկացա, թե ինչպես պետք է վերահսկել չիպը և ինչպես միացնել իմ USB midi ստեղնաշարը, մնում էր միայն գրել ինչ -որ կոդ, որն այս ամենը կփաթաթեր և թույլ կտար ինձ օգտագործել ստեղնաշարը `չիպը կառավարելու համար:

Theանապարհին ես իմացա, որ 0x2f midi նոտաների համար ավելի ցածր հաճախականությամբ հնչյուններ, որոնք ճիշտ չէին հնչում, ուստի ես որոշեցի դա օգտագործել, որպեսզի թույլ տամ աղմուկի գեներատորին 0x28- ից 0x2f- ի միջև աղմուկ ուղարկել: ինչպես նաև թույլատրել նվագել նոտաներ արևելյան արաբական շոշափելիքով `midi 0x28- ից ցածր ամեն ինչի համար:

Հետ նայելով ՝ շատ զվարճալի և շատ հետաքրքիր էր կառուցելը:

Հուսով եմ, որ ձեզ դուր կգա այն նույնքան զվարճալի և հետաքրքիր, որքան ես, և եթե դուք ինքներդ կառուցեք այն, ապա բարի կլինեք կիսվել դրա որոշ նկարներով:

Եթե ձեզ դուր եկավ այս նախագիծը, խնդրում ենք կողմ քվեարկել դրան ներքև ՝ օգնելու հաղթել այն մրցույթում, որին նա մասնակցում է:

Պարագաներ

Ես ավելացրել եմ հղումներ այն նյութին, որը կարող եք ձեռք բերել այս նախագծի համար, սակայն, կարող եք գտնել բազմաթիվ մատչելի իրեր, որոնք կարող եք քերել հին էլեկտրոնիկայից:

Այս հղումները փոխկապակցված հղումներ են, ուստի, եթե դուք գնում եք դրանք սեղմելուց հետո, ես ստանում եմ մի փոքր մասն (այլ ոչ թե հարստություն), և դուք ստանում եք այս նախագծի համար համապատասխան արտադրանք: Սրանք օգտագործելու համար ոչ մի վճար կամ լրացուցիչ ծախս չկա, այնուամենայնիվ, դուք կարող եք գտնել ցանկացած նմանատիպ իր, որը կարող է դրանք բավականին հեշտությամբ փոխարինել:

ebay.us/svA4z4 | 1 x կատարման տախտակ

ebay.us/ZyEFNp | 1 x arduino նանո

ebay.us/t1zy0v | 1 x USB մինի վահան

ebay.to/2QrHl1C | 1 x SN76489 ձայնային չիպ

ebay.us/aaaj8p | 1 x հերթափոխի գրանցամատյան 595

ebay.us/DSvTHO | 1 x բյուրեղային տատանում 4 ՄՀց հաճախականությամբ

ebay.us/XQeM0Q | 1 x 5V լարման կարգավորիչ 7805

ebay.us/6R6Fpf | 1 x ջերմամեկուսիչ լարման կարգավորիչի համար

ebay.us/xkLbn4 | 3 x 10uF կոնդենսատորներ

ebay.us/pnm2BH | լարերը

ebay.us/PMbUfY | 1 x կարմիր LED հզորության համար

ebay.us/zokHtc | 1 x 220 օմ դիմադրություն `LED հոսանքի հոսքը սահմանափակելու համար

ebay.us/qjbesJ | 1 x հոսանքի միակցիչ ՝ 12 վ լարման համար

ebay.us/cS0wwv | 1 x անջատիչ/անջատիչ

հարմար տուփ (ես իմը կառուցեցի հին դարակից, որը տարիներ շարունակ հանգստանում էր իմ պահեստում)

Քայլ 1. USB Mini Host Shield- ի պատրաստում `5V միջին սարք վարելու համար

USB Mini Host Shield- ի պատրաստում ՝ 5V միջին սարք վարելու համար
USB Mini Host Shield- ի պատրաստում ՝ 5V միջին սարք վարելու համար

Քանի որ USB մինի սերվերի վահանը գործում է 3.3 Վ լարման վրա, իսկ իմ օգտագործած USB միջնակարգ ստեղնաշարերը պահանջում են 5 Վ, պահանջվում է վահանի ելքային լարումը ճշգրտել ՝ կտրելով USB հոսանքի Vcc հոսող 3.3 Վ գիծը, ուստի հետագայում կարող ենք միացնել այն: մինչև 5 Վ

Կան բազմաթիվ ձեռնարկներ, թե ինչպես դա անել, և պարզվեց, որ դրանք բավականին պարզ են.

Պարզապես կտրեք գիծը 2k2 դիմադրության և Vcc գծի միջև (տե՛ս կից պատկերը): Ես օգտագործեցի պտուտակահան ՝ այս գիծը քերծելու համար և փորձեցի, արդյոք այն աշխատում է շարունակականության հաշվիչով:

Քայլ 2. Միացրեք USB Mini Shield- ը ձեր Arduino Nano- ի հետ

Միացրեք USB Mini Shield- ը ձեր Arduino Nano- ի հետ
Միացրեք USB Mini Shield- ը ձեր Arduino Nano- ի հետ
Միացրեք USB Mini Shield- ը ձեր Arduino Nano- ի հետ
Միացրեք USB Mini Shield- ը ձեր Arduino Nano- ի հետ

Բարեբախտաբար, շատ տեղեկություններ կան, թե ինչպես դա անել, այնպես որ, «Arduino Nano and mini USB host shield» - ի գուգլինգով ես հայտնվեցի այս թեմայում

Այն նկարագրում էր, թե ինչպես միացնել USB mini v2.0 վահանը, և այն հետևելուց հետո ես անմիջապես առաջ գնացի ՝ փորձարկելու USB midi օրինակներ:

Հաղորդալարեր.

Arduino Host վահան

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

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

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

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

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

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

3.3 Վ ------------ 9

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

ՌՍՏ ------------ 4

Այս թեմայում նշվեց նաև, որ նրանք կտրել են 3.3 Վ լարը, որպեսզի USB- ը VBUS- ից 5V ստանա:

Այս նկարագրությունը և կցված պատկերները եկել են այս թեմայից:

BTW, այս տախտակի վրա տպագրության վրա սխալ կա, այնպես որ սա մի փոքր շփոթեցնող էր, այնուամենայնիվ, դուք կարող եք տեսնել իմ կարծիքը այդ մասին (tyrkelko) և որտեղից ես դա սովորել եմ:

Քայլ 3: Չիփս կա՞: SN76489- ի ավելացում 4 ՄՀց Osc- ով: և 595 հերթափոխի գրանցամատյան

Չիպսեր Ինչ -որ մեկը? SN76489- ի ավելացում 4 ՄՀց Osc- ով: և 595 հերթափոխի գրանցամատյան
Չիպսեր Ինչ -որ մեկը? SN76489- ի ավելացում 4 ՄՀց Osc- ով: և 595 հերթափոխի գրանցամատյան

Այժմ ժամանակն էր ավելացնել այս զարմանալի ձայնը թողնող չիպը:

Ես արդեն գրադարան եմ մշակել arduino- ն այս չիպի հետ միացնելու համար և միայն պետք է հետևեի իմ հրահանգներին:

Գրադարանը թողարկվում է github- ում GPLv3- ի ներքո (իմ առաջին բաց կոդով թողարկումը):

github.com/tyrkelko/sn76489

76489 -ի և 595 -ի կապը եղել է ինչպես կցված պատկերում, որը վերցված է գրադարանից readme.txt ֆայլից

76489 -ի Գրելու միացում ցածր (NotWE) հասցեով միացված էր նանոյի 3 -րդ կապին և կարող է փոխվել ծածկագրում:

#սահմանել PIN_NotWE 3

595 -ը միացված էր նանոյին հետևյալ կերպ և կարող է նաև ճշգրտվել ՝ խմբագրելով փին համարները.

#սահմանեք PIN_SER 7

#սահմանեք PIN_LATCH 6

#սահմանեք PIN_CLK 5

Իմ կողմից օգտագործվող տատանումները 4 ՄՀց բյուրեղային տատանումներ էին ՝ 4 ոտքով:

Կոդում այն կազմաձևված է հետևյալ կերպ, և դուք կարող եք դրա արժեքը հարմարեցնել 500kHz- ից 4MHz- ի միջև տատանվող ցանկացած հաճախականությանը.

#սահմանեք Հաճախականությունը 4000000.0

Իմ կողմից օգտագործվող տատանումների միացումը հետևյալն էր.

PIN 1 - միացված չէ

կապում 7 - գետնին

կապ 8 - միացված 76489 կապ 14 - ժամացույցի osc

Քայլ 4: Պարզապես ավելացրեք ծածկագիր. Գրադարաններ ավելացնելը, ծածկագրի կազմումը և վերբեռնումը

Այս նախագծում օգտագործվող գրադարանները պետք է ավելացվեն Arduino IDE- ին հետևյալ կերպ.

Բացեք Arduino IDE- ն

Ներբեռնեք հետևյալ գրադարանները ձեր IDE գրադարանի թղթապանակում (հուսով եմ, որ դրանք շուտով կտեսնեք IDE «Գործիքներ» ցանկի «Գրադարանների կառավարում …» ընտրացանկում):

github.com/felis/USB_Host_Shield_2.0

github.com/tyrkelko/sn76489

Օգտագործեք հետևյալ github նախագծի ծածկագիրը.

github.com/tyrkelko/usb_midi_tone

Ներբեռնեք usb_midi_tone.ino, կազմեք և վերբեռնեք ձեր Arduino nano- ում:

Քայլ 5. Միացրեք ուժեղացուցիչ և բարձրախոս, միացրեք ձեր USB Midi ստեղնաշարը և փորձարկեք

Հիմա ժամանակն է ստուգել, որ ամեն ինչ աշխատում է:

Դա անելու համար մեզ անհրաժեշտ է.

1. Ուժեղացուցիչ և բարձրախոս

2. USB midi ստեղնաշար

SN76489 կապ 7 -ը, ձայնը դուրս, միացրեք ուժեղացուցիչի ձայնին:

Միացրեք ուժեղացուցիչը, ապա միացրեք arduino nano- ն: Այժմ դուք պետք է լսեք հոսանքի ուժգնության թեստի ձայնը վայրկյանի պառակտման համար:

Միացրեք USB midi ստեղնաշարը և փորձարկեք:

Եթե ամեն ինչ ճիշտ է աշխատում, դուք պետք է կարողանաք միաժամանակ նվագարկել 3 տոննա, ինչպես նաև նվագել 8 տեսակի աղմուկ և նույնիսկ 24 EDO-Scale- ի որոշ քառորդ հնչերանգներ:

Եթե դա չի աշխատում, անցեք քայլերը `տեսնելու, թե ինչ կարող է սխալ լինել:

Եթե կարծում եք, որ այս արդյունքը անհասկանալի հրահանգներից է, խնդրում եմ ինձ գրառում թողեք, որպեսզի ես թարմացնեմ այն ուղղելու հրահանգները:

Քայլ 6. Շղթան լրացրեք 5 Վ լարման կարգավորիչով, 12 Վ միակցիչով, միացման/անջատման անջատիչով և հոսանքի LED- ով

Այս քայլում դուք պետք է կարողանաք փաթաթել շրջանը ՝ այն ճիշտ աշխատելուց հետո:

1. Ավելացրեք էներգիայի կարգավորիչ LM7805- ով և երկու 10uF կոնդենսատորներով և 0.1uF- ով: Այս մասին կան բազմաթիվ ձեռնարկներ, որոնց հասնելու համար կարող եք օգտագործել հետևյալ հրահանգները ՝

2. Ավելացրեք 12 Վ լարման միակցիչ Vcc- ի հետ, որն անցնում է միացման/անջատման անջատիչով

3. Ավելացրեք սահմանափակող ընթացիկ դիմադրիչով լուսադիոդ `նշելու, թե երբ է հոսանքը միացված:

Քայլ 7. Փակեք տուփի մեջ, ներկեք և վայելեք ձեր նոր սինթոնը

Երբ սխեման փորձարկվի և աշխատի ըստ ձեր ցանկության, շատ բան չի մնա անել, բացի գեղեցիկ պարիսպ կառուցելուց, ներկեք այն հիանալի գույներով և նվագեք երաժշտություն:

Հուսով եմ, որ ձեզ դուր եկավ այս ուսանելի ուսուցումը կարդալը, և դա ձեզ ոգեշնչեց կառուցել ձեր սեփական սինթետը կամ գնալ այլ նախագծի վրա, որի վրա աշխատում եք:

Խնդրում ենք մեկնաբանել ստորև ՝ ցանկացած հարցով, և եթե այս ձեռնարկի հիման վրա կառուցել եք որևէ նման բան, հիանալի կլիներ, եթե կիսվեիք այն ամենով, ինչ պատրաստել եք «Ես պատրաստեցի սա» բաժնում: տարածք կամ հետադարձ կապ բաժնում:

Խորհուրդ ենք տալիս: