Мазмұны:
- Жабдықтар
- 1 -қадам: USB Mini хост қалқанын 5В Midi құрылғысын жүргізуге дайындау
- 2 -қадам: USB шағын қалқанын Arduino Nano көмегімен қосыңыз
- 3 -қадам: чиптер бар ма? SN76489 4 МГц жиілікпен қосылады. және 595 Shift Register
- 4 -қадам: Тек кодты қосыңыз - кітапханаларды қосу, кодты құрастыру және жүктеу
- 5 -қадам: Күшейткіш пен динамикті қосыңыз, USB Midi пернетақтасын қосыңыз және тексеріңіз
- 6 -қадам: 5В кернеу реттегіші, 12В қосқышы, қуатты қосу/өшіру қосқышы және қуат диодының көмегімен тізбекті аяқтаңыз
- 7 -қадам: қорапқа салыңыз, бояңыз және жаңа синтезден ләззат алыңыз
Бейне: Arduino Nano көмегімен SN76489 USB MIDI синтезін құрайық: 7 қадам
2024 Автор: John Day | [email protected]. Соңғы өзгертілген: 2024-01-30 10:24
Сіз 80-ші жылдардағы ескі чип-әуендерге негізделген өзіңіздің жеке синтезаторыңызды құрғыңыз келді ме? Бұл ескі Sega Master System және Megadrive бейне ойындары сияқты естілетін қарапайым полифониялық әуендерді ойнаңыз ба?
Менде ebay мен midi хост интерфейсінен бірнеше SN76489 чиптеріне тапсырыс бердім. Бұл мен үшін саябақта серуендеу емес еді, бірақ мен әр сәттен ләззат алдым.
Алдымен мен SN76489 -мен тікелей интерфейс жасауды және онымен шу шығаруды үйрендім. Мұның кейбір түсініксіз элементтері болды, бірақ The Oddbloke Geek Blog және басқа да бірнеше мысалдардың көмегімен чиптің спецификациялық құжатымен бірге мен қарапайым arduino кітапханасын құра алдым.
Әрі қарай, мен midi пернетақтаны USB шағын хост қалқанымен қалай байланыстыруды үйренуім керек болды. Бұл соншалықты қиын болған жоқ, өйткені кейбір құжаттар бар, және жақсы мысалдармен жақсы кітапханалар бар.
Мен чипті қалай басқаруға болатынын және USB midi пернетақтасын қалай байланыстыру керектігін түсінгеннен кейін, мұның бәрін біріктіретін және чипті басқару үшін пернетақтаны пайдалануға мүмкіндік беретін код жазу ғана қалды.
Жол бойында мен 0x2f midi ноталары үшін жасағым келетін жиіліктен төмен дыбыстар дұрыс емес екенін білдім, сондықтан мен 0x28 мен 0x2f аралығындағы кез келген midi ноталар үшін шу генераторына шу жіберуге мүмкіндік беру үшін қолдандым. сонымен қатар 0x28 midi -ден төмен кез келген нәрсеге шығыс араб тиіп ноталарды ойнауға рұқсат етіңіз.
Артқа қарасақ, салу өте қызықты және өте қызықты болды.
Сізге бұл мен сияқты қызықты және қызықты болады деп үміттенемін, егер сіз оны өзіңіз жасасаңыз, сіз оның суреттерімен бөлісе аласыз.
Егер сізге бұл жоба ұнаған болса, төменде дауыс беріңіз, ол қатысатын байқауда жеңіске жетіңіз
Жабдықтар
Мен осы жоба үшін сатып алуға болатын материалдардың сілтемелерін қостым, бірақ сіз ескі электроникадан алуға болатын көптеген қол жетімді заттарды таба аласыз.
Бұл сілтемелер серіктестік сілтемелер болып табылады, сондықтан, егер сіз оларды басқаннан кейін сатып алсаңыз, мен кішкене бөлікті аламын (сәттілік емес) және сіз осы жобаға сәйкес келетін өнімді аласыз. Оларды пайдалануда ешқандай ақы немесе қосымша ақы жоқ, дегенмен сіз оларды оңай алмастыратын кез келген ұқсас заттарды таба аласыз.
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 | 595
ebay.us/DSvTHO | 1 х 4 МГц кристалды осциллятор
ebay.us/XQeM0Q | 1 х 5В кернеу реттегіші 7805
ebay.us/6R6Fpf | Кернеу реттегіші үшін 1 рет жылу қабылдағыш
ebay.us/xkLbn4 | 3 x 10uF конденсаторлар
ebay.us/pnm2BH | сымдар
ebay.us/PMbUfY | Қуат үшін 1 x қызыл жарық диоды
ebay.us/zokHtc | Жарықдиодты ток ағымын шектеу үшін 1х 220 Ом резистор
ebay.us/qjbesJ | 12в қуат көзіне арналған 1 x қуат қосқышы
ebay.us/cS0wwv | 1 рет қосу/өшіру қосқышы
қолайлы қорап (мен өз қоймамда жылдар бойы демалып жатқан ескі тартпадан мина салдым)
1 -қадам: USB Mini хост қалқанын 5В Midi құрылғысын жүргізуге дайындау
USB шағын қалқаны 3.3В жұмыс істейтіндіктен және мен қолданатын USB midi пернетақталары 5В кернеуді қажет ететіндіктен, USB шығатын Vcc -ке өтетін 3.3В желісін кесу арқылы қалқанның шығыс кернеуін реттеу қажет, сондықтан оны кейін қосуға болады. 5В дейін.
Мұны қалай жасауға болатыны туралы көптеген оқулықтар бар және бұл өте қарапайым болып шықты:
2k2 резистор мен Vcc желісі арасындағы сызықты кесіңіз (жабық суретті қараңыз). Мен бұрандалы бұрағышты қолданып, бұл сызықты сызып тастадым және ол үзіліс өлшегішпен жұмыс істейтінін тексердім.
2 -қадам: USB шағын қалқанын Arduino Nano көмегімен қосыңыз
Бақытымызға орай, мұны қалай жасауға болатыны туралы көптеген ақпарат бар, сондықтан мен «Arduino Nano және шағын USB хост қалқаны» үшін googling арқылы осы тақырыпқа кірдім
Ол USB mini v2.0 қалқанын қалай қосу керектігін сипаттады және оны орындағаннан кейін мен USB midi мысалдарын тексеруге тура келдім.
Сымдар:
Arduino хост қалқаны
10--------------5
11--------------6
12--------------7
13--------------8
2----------------2
5В -------------- 1
3.3V ------------ 9
GND ----------- 3
RST ------------ 4
Бұл жіпте олар USB 3. VBUS -тан 5В алатындай етіп 3.3В сымдарын кесіп тастағаны айтылды.
Бұл сипаттама мен жабық суреттер осы жіптен алынған.
BTW, бұл тақтадағы басылымда қате бар, сондықтан бұл біршама түсініксіз болды, алайда, сіз менің бұл туралы пікірімді (тыркелко) және оны қайдан білгенімді көре аласыз.
3 -қадам: чиптер бар ма? SN76489 4 МГц жиілікпен қосылады. және 595 Shift Register
Енді бұл таңғажайып дыбысты шығаратын чипті қосу уақыты келді.
Мен осы чиппен arduino интерфейсіне арналған кітапхана әзірледім және тек менің нұсқауларымды орындауға тура келді.
Кітапхана GPLv3 астында github -да шығарылады (менің алғашқы ашық бастапқы нұсқам).
github.com/tyrkelko/sn76489
76489 мен 595 байланысы readme.txt кітапханасынан алынған суреттегідей болды.
76489 жылғы Жазуды қосу мүмкіндігі (NotWE) нано 3 -ші істікшеге қосылған және оны кодта өзгертуге болады.
#PIN_NotWE анықтаңыз 3
595 наноға келесі түрде қосылды және оны пин нөмірлерін өңдеу арқылы реттеуге болады:
PIN_SER 7 анықтаңыз
#PIN_LATCH анықтаңыз
#PIN_CLK анықтаңыз
Мен қолданған осциллятор 4 МГц кристалды осциллятор болды, 4 аяғы бар.
Ол кодта келесідей конфигурацияланған және оның мәнін 500 кГц пен 4 МГц арасындағы кез келген осциллятор жиілігіне реттеуге болады:
#жиілікті анықтау 4000000.0
Мен қолданған осцилляторды қосу келесідей болды:
PIN 1 - қосылмаған
түйреуіш 7 - жер
түйреуіш 8 - 76489 түйреуішіне 14 қосылған - сағаттық ос
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 наноға жүктеңіз.
5 -қадам: Күшейткіш пен динамикті қосыңыз, USB Midi пернетақтасын қосыңыз және тексеріңіз
Енді бәрі жұмыс істейтінін тексеру уақыты келді.
Ол үшін бізге қажет:
1. Күшейткіш пен динамик
2. USB midi пернетақтасы
SN76489 пин 7, дыбыс шығысы, күшейткіш дыбыс кірісіне қосыңыз.
Күшейткішті қосыңыз, содан кейін arduino наносын қосыңыз. Енді сіз бір секунд ішінде қосылатын тестілеу дыбысын естуіңіз керек.
USB midi пернетақтасын қосыңыз және тексеріңіз.
Егер бәрі дұрыс жұмыс жасаса, сіз бір мезгілде 3 тонды ойнай алуыңыз керек, сонымен қатар 8 EDO-Scale шудың 8 түрін, тіпті ширек тонды ойнай аласыз.
Егер ол жұмыс істемесе, нені қате жібергенін білу үшін қадамдарды өтіңіз.
Егер сіз түсініксіз нұсқаулардың нәтижесін сезсеңіз, маған ескерту қалдырыңыз, сондықтан мен оны түзету үшін нұсқауларды жаңартамын.
6 -қадам: 5В кернеу реттегіші, 12В қосқышы, қуатты қосу/өшіру қосқышы және қуат диодының көмегімен тізбекті аяқтаңыз
Бұл қадамда сіз тізбектің дұрыс жұмыс істеуін тексергеннен кейін оны орап алуыңыз керек.
1. LM7805 және екі 10uF конденсаторы мен 0,1uF бар қуат реттегішін қосыңыз. Бұл туралы көптеген оқулықтар бар, оларды орындау үшін келесі нұсқауларды қолдануға болады-https://www.instructables.com/id/7805-Regulator-5V…
2. Қосу/өшіру қосқышы арқылы өтетін Vcc бар 12В қуат қосқышын қосыңыз
3. Қуат қосылған кезде көрсететін шектеу ток резисторы бар жарық диодты қосыңыз.
7 -қадам: қорапқа салыңыз, бояңыз және жаңа синтезден ләззат алыңыз
Схема тексерілгеннен кейін және сіздің қалауыңыз бойынша жұмыс жасаса, жақсы қоршау салудан басқа ештеңе қалмайды, оны керемет түстермен бояп, музыка тыңдаңыз.
Сізге бұл нұсқаулықты оқу ұнады деп үміттенемін және бұл сізді өзіңіздің синтезіңізді құруға немесе сіз жұмыс істеп жатқан басқа жобамен жұмыс жасауға шабыттандырды.
Төменде кез келген сұрақтар бойынша түсініктеме беріңіз, егер сіз осы оқулыққа негізделген ұқсас нәрсені құрған болсаңыз, «Мен мұны жасадым!» аймақта немесе кері байланыс бөлімінде.
Ұсынылған:
Arduino көмегімен Led Strip көмегімен аналогтық сағат пен сандық сағатты қалай жасауға болады: 3 қадам
Arduino көмегімен Led Strip көмегімен аналогтық сағат пен сандық сағатты қалай жасауға болады: Бүгін біз аналогты сағатты жасайтын боламыз. Led Strip және MAX7219 нүктелік модулі бар Arduino цифрлық сағаты жергілікті уақыт белдеуімен уақытты түзетеді. Аналогтық сағат ұзағырақ жарықдиодты жолақты қолдана алады, сондықтан оны суретші болу үшін қабырғаға іліп қоюға болады
CO2 есептегіші, Arduino Mega көмегімен SCD30 сенсорының көмегімен: 5 қадам
CO2 өлшегіші, SCD30 датчигін Arduino Mega көмегімен қолданады: CO2, температура мен температура, SCD30 өзара әрекеттесулерді қажет етеді. теңізде жоқ
Құрайық (Аналогты синтез): 5 қадам
Құрайық (Аналогты синтез): Бұл серияда мен сізге аналогтық және цифрлық компоненттерді қолдана отырып, негізгі модульдік аналогтық синтезаторды қалай құруға болатынын көрсетемін. 1mZX4LyiJwXZLJ3R56SDxloMnk8z07IYJ
Arduino көмегімен 2.4Ghz NRF24L01 модулін қолданатын сымсыз қашықтан басқару пульті - Nrf24l01 4 каналы / 6 каналды Quadcopter үшін қабылдағыш - Rc тікұшағы - Arduino көмегімен Rc ұшағы: 5 қадам (суреттермен)
Arduino көмегімен 2.4Ghz NRF24L01 модулін қолданатын сымсыз қашықтан басқару пульті | Nrf24l01 4 арналы / квадрокоптер үшін 6 арналы таратқыш қабылдағыш | Rc тікұшағы | Arduino көмегімен Rc Plane: Rc машинасын басқару | Квадрокоптер | Дрон | RC жазықтығы | RC қайығы, бізге әрқашан қабылдағыш пен таратқыш қажет, RC QUADCOPTER үшін бізге 6 каналды таратқыш пен қабылдағыш қажет, және TX пен RX -тің бұл түрі тым қымбат, сондықтан біз оны өзімізде жасаймыз
Arduino көмегімен Arduino көмегімен CubeSat қалай құруға болады: 9 қадам
Arducam көмегімен Arduino көмегімен CubeSat қалай құруға болады: Бірінші суретте бізде Arduino бар және оны «Arduino Uno» деп атайды. Екінші суретте бізде Arducam бар, ол «Arducam OV2640» деп аталады 2MP шағын. &Quot; Екінші суреттен басқа сізге қажет материалдар бар