Përmbajtje:
- Hapi 1: Lista e Pjesëve
- Hapi 2: Ndërtimi
- Hapi 3: Softuer
- Hapi 4: Lidhjet
- Hapi 5: Shtojca 1 Programimi i ATMega1284P
- Hapi 6: Shtojca 2 Arduino Uno PedalSHIELD Variacioni
Video: Pedal për kitarë dhe efekte muzikore ATMega1284P: 6 hapa (me fotografi)
2024 Autor: John Day | [email protected]. E modifikuara e fundit: 2024-01-30 12:27
Unë kam portuar Arduino Uno ATMega328 Pedalshield (e zhvilluar nga Electrosmash dhe pjesërisht e bazuar në punën në Open Music Lab) në ATMega1284P e cila ka tetë herë më shumë RAM se Uno (16kB kundrejt 2kB). Një përfitim shtesë i papritur është se ndërtimi Mega1284 ka një përbërës shumë më të ulët të zhurmës - në atë masë që kur krahasoj Uno dhe Mega1284 duke përdorur të njëjtin qark mbështetës, nuk është e paarsyeshme të përshkruhet Uno si "i zhurmshëm" dhe Mega1284 si " i qetë ". RAM -i më i madh do të thotë që mund të merret një efekt shumë më i gjatë vonesë - dhe kjo demonstrohet nga shembulli i skicës Arduino që kam përfshirë. Zhurma e frymëmarrjes në sfond kur përdorni efektin Tremelo gjithashtu (pothuajse) mungon me ATMega1284.
Një krahasim i tre mikroprocesorëve Atmel AVR, përkatësisht 328P që është Uno, 2560P që është Mega2560, dhe Mega1284 tregon se ky i fundit ka RAM -in më të madh nga të tre:
Aspekt 328P 1284P 2560P RAM 2k 16k 8k Flash 32k 128k 256k EEPROM 1k 4k 4k UART 1 2 4 Kunja IO 23 32 86 Ndërprerje 2 3 8 Analog Në 6 8 16
Fillova me hipjen në bukë të pedalit SHIELD me bazë Uno si në specifikimet e Electrosmash, por nuk kisha të njëjtën RRO OpAmp siç ishte specifikuar. Si rezultat përfundova me një qark të cilin e konsiderova se jepte rezultate të pranueshme. Detajet e këtij versioni Uno janë dhënë në shtojcën 2.
Ky qark i njëjtë u transferua më pas në ATMega1284 - çuditërisht përveç ndryshimeve jo thelbësore siç është caktimi i çelsave dhe LED në një port të ndryshëm dhe ndarja e 12, 000 kB në vend të 2, 000 kB RAM për tamponin e vonesës, vetëm një ndryshim thelbësor duhej bërë në kodin burimor, përkatësisht ndryshimin e daljeve të Timer1/PWM OC1A dhe OC1B nga Porti B në Uno në Portin D (PD5 dhe PD4) në ATMega1284.
Më vonë zbulova modifikimet e shkëlqyera të qarkut elektrosmash nga Paul Gallagher dhe pas testimit, ky është qarku që do të paraqes këtu - por më pas edhe me modifikime: zëvendësimi i Uno me Mega1284, duke përdorur një Texas Instruments TLC2272 si OpAmp, dhe për shkak të performancës së shkëlqyer të zhurmës së Mega1284, unë gjithashtu mund të ngre nivelin e frekuencës së filtrit me kalim të ulët.
Importantshtë e rëndësishme të theksohet se megjithëse bordet e zhvillimit për ATMega1284 janë në dispozicion (Github: MCUdude MightyCore), është një ushtrim i lehtë për të blerë një çip të zhveshur (pa ngarkues) (blini versionin PDIP i cili është bordi i bukës dhe shiriti miqësore), pastaj ngarkoni pirunin Mark Pendrith të bootloader Maniacbug Mighty-1284p Core Optiboot ose MCUdude Mightycore, duke përdorur një Uno si programues ISP, dhe pastaj duke ngarkuar skica përsëri përmes Uno në AtMega1284. Detajet dhe lidhjet për këtë proces janë dhënë në shtojcën 1.
Unë do të doja të pranoja tre burimet më të rëndësishme nga të cilat mund të merren informacione të mëtejshme dhe do të japin lidhje me faqet e tyre të internetit dhe fundin e këtij artikulli: Electrosmash, Open Music Labs dhe Tardate/Paul Gallagher
Hapi 1: Lista e Pjesëve
ATMega1284P (Versioni i paketës PDIP 40 pin) Arduino Uno R3 (përdoret si një ISP për të transferuar ngarkuesin e nisjes dhe skicat në ATMega1284) OpAmp TLC2272 (ose RRIO të ngjashme (Hyrja dhe Dalja në Hekurudhë në Hekurudhë) OpAmp si MCP6002, LMC6482, TL Kondensatorë LED të kuq 16 MHz kristal 2 x 27 pF Kondensatorë 5 x 6n8 kondensatorë 270 pF 4 kondensatorë x 100n 2 x 10uF 16v kondensatorë elektrolitikë 6 x 4k7 rezistorë 100k rezistencë 2 x 1M rezistorë 470 ohm rezistencë 1M2 rezistencë 100k Potenciometër 3 x Çelësa të butonit (një prej tyre duhet të zëvendësohen me një ndërprerës këmbësh 3-polësh me 2 drejtime nëse kutia e efekteve do të përdoret për punë të drejtpërdrejta)
Hapi 2: Ndërtimi
Skema 1 jep qarkun e përdorur dhe Breadboard 1 është përfaqësimi i tij fizik (Fritzing 1) me Foto 1 qarkun aktual të bordit të bukës në funksionim. Mund të jetë e favorshme të kesh një potenciometër si një mikser për sinjalin e thatë (i barabartë me hyrjen) dhe të lagësht (pas përpunimit nga MCU), dhe Skematika 2, Breadboard 2 dhe Foto 2 (të listuara në Shtojcën 2), jep detajet e qarkut të një qarku të ndërtuar më parë i cili përfshin një hyrje të tillë në mikserin dalës. Shikoni gjithashtu Open Music Labs StompBox për një zbatim tjetër të mikserit duke përdorur katër OpAmps.
Fazat e hyrjes dhe daljes së OpAmp: isshtë e rëndësishme që të përdoret një RRO ose mundësisht një RRIO OpAmp për shkak të luhatjes së tensionit të madh të kërkuar në daljen e OpAmp në ADC të ATMega1284. Lista e pjesëve përmban një numër të llojeve alternative të OpAmp. Potenciometri 100k përdoret për të rregulluar fitimin e hyrjes në një nivel pak nën çdo shtrembërim, dhe gjithashtu mund të përdoret për të rregulluar ndjeshmërinë e hyrjes për një burim hyrës të ndryshëm nga një kitarë, siç është një muzikant. Faza e daljes OpAmp ka një filtër RC të rendit më të lartë për të hequr zhurmën e gjeneruar digjitale të MCU nga rryma audio.
Faza ADC: ADC është konfiguruar të lexojë përmes një ndërprerjeje gjatë gjithë kohës. Vini re se një kondensator 100nF duhet të lidhet midis kunjit AREF të ATMega1284 dhe tokëzimit për të zvogëluar zhurmën pasi një burim i brendshëm Vcc përdoret si një tension referimi - MOS e lidhni pinin AREF në +5 volt drejtpërdrejt!
Faza DAC PWM: Meqenëse ATMega1284 nuk ka DAC -në e vet, format valore audio dalëse gjenerohen duke përdorur një modulim të gjerësisë së pulsit të një filtri RC. Dy daljet PWM në PD4 dhe PD5 janë vendosur si byte të larta dhe të ulëta të daljes audio dhe përzihen me dy rezistorët (4k7 dhe 1M2) në një raport 1: 256 (bajt i ulët dhe bajt i lartë) - i cili gjeneron daljen audio Me Mund të jetë e vlefshme të eksperimentosh me çifte të tjera rezistence siç është çifti 3k9 1M ohm i përdorur nga Open Music Labs në StompBox -in e tyre.
Hapi 3: Softuer
Softueri bazohet në skicat elektrosmash, dhe shembulli i përfshirë (pedalshield1284delay.ino), është përshtatur nga skica e tyre e vonesës Uno. Disa nga çelsat dhe LED ishin zhvendosur në portet e tjera larg atyre të përdorura nga programuesi i ISP -së (SCLK, MISO, MOSI dhe Reset), tamponi i vonesës është rritur nga 2000 bytes në 12000 bytes, dhe PortD është vendosur si dalje për dy sinjale PWM. Edhe me rritjen e tamponit të vonesës, skica ende përdor vetëm rreth 70% të RAM -it të disponueshëm 1284.
Shembuj të tjerë të tillë si oktavatori ose tremolo nga uebfaqja e electrosmash për pedalin SHIELD Uno mund të përshtaten për përdorim nga Mega1284 duke ndryshuar tre seksione në kod:
(1) Ndrysho DDRB | = ((PWM_QTY << 1) | 0x02); në DDRD | = 0x30; // Ndryshimi i mësipërm është vetëm ndryshimi thelbësor i kodit // kur transferoni nga AtMega328 në ATMega1284
(2) Ndrysho #define LED 13 #define FOOTSWITCH 12 #define TOGGLE 2 #define PUSHBUTTON_1 A5 #define PUSHBUTTON_2 A4
te
#define LED PB0 #define FOOTSWITCH PB1 #define PUSHBUTTON_1 A5 #define PUSHBUTTON_2 A4
(3) Ndrysho pinMode (FOOTSWITCH, INPUT_PULLUP); pinMode (TOGGLE, INPUT_PULLUP); pinMode (PUSHBUTTON_1, INPUT_PULLUP); pinMode (PUSHBUTTON_2, INPUT_PULLUP); pinMode (LED, OUTPUT)
te
pinMode (FOOTSWITCH, INPUT_PULLUP); pinMode (PUSHBUTTON_1, INPUT_PULLUP); pinMode (PUSHBUTTON_2, INPUT_PULLUP); pinMode (LED, OUTPUT);
Butonat 1 dhe 2 përdoren në disa skica për të rritur ose zvogëluar një efekt. Në shembullin e vonesës rritet ose zvogëlohet koha e vonesës. Kur skica është ngarkuar për herë të parë fillon me efektin maksimal të vonesës. shtypni butonin poshtë - duhen rreth 20 sekonda për të numëruar deri në pozicionin e vonesës - dhe pastaj shtypni dhe mbani butonin lart. Dëgjoni se si efekti i fshirjes së mbajtjes në buton ndryshon efektin në atë të një faza, refreni dhe flangimi, si dhe vonesën kur lëshohet butoni.
Për të ndryshuar vonesën në një efekt jehonë (shtoni përsëritje) ndryshoni linjën:
DelayBuffer [DelayCounter] = ADC_high;
te
DelayBuffer [DelayCounter] = (ADC_high + (DelayBuffer [DelayCounter])) >> 1;
Ndërprerësi i këmbës duhet të jetë një ndërprerës trepalësh me dy drejtime dhe duhet të jetë i lidhur siç përshkruhet në faqen e internetit të electrosmash.
Hapi 4: Lidhjet
(1) Elektrosmash:
(2) Hapni Laboratorët e Muzikës:
(3) Paul Gallagher:
(4) Ngarkuesi 1284 1284:
(5) Mikrokontrolluesi ATmega1284 8bit AVR:
ElectrosmashOpenlabs MusicPaul Gallagher1284 Bootloader 11284 Bootloader 2ATmega1284 8bit AVR Mikrokontrollues
Hapi 5: Shtojca 1 Programimi i ATMega1284P
Ka disa faqe në internet që japin një shpjegim të mirë se si të programoni çipin e zhveshur ATMega1284 për t’u përdorur me Arduino IDE. Procesi është në thelb si më poshtë: (1) Instaloni pirunin Mark Pendrith të bootloader Maniacbug Mighty-1284p Core Optiboot në Arduino IDE. (2) Lidhni ATMega1284 në një tabelë me konfigurimin e tij minimal që është një kristal 16 MHz, 2 x 22 pF kondensatorë që bazojnë dy skajet e kristalit, Lidhni dy kunjat e tokëzimit së bashku (kunjat 11 dhe 31), dhe më pas në tokën Arduino Uno, lidhni Vcc dhe AVcc së bashku (kunjat 10 dhe 30), dhe më pas në Uno +5v, pastaj lidhni kunjin e rivendosjes 9 në kunjin Uno D10, kunjin MISO 7 në UNO D12, The MOSI kunja 8 tek Uno D11, dhe kunja SCLK 7 tek kunja Uno D13. (3) Lidhni Uno me Arduino IDE dhe ngarkoni shembullin e skicës Arduino si ISP në Uno. (4) Tani zgjidhni tabelën e fuqishme optiboot 1284 "maniak" dhe zgjidhni opsionin Burn bootloader. (5) Pastaj zgjidhni skicën e vonesës 1284 të dhënë këtu si shembull dhe ngarkojeni duke përdorur opsionin Uno si programues në menunë e skicave.
Lidhjet që shpjegojnë procesin në mënyrë më të detajuar janë:
Përdorimi i ATmega1284 me Arduino IDEArduino Mightycore për AVR -të të mëdha miqësore me bukë Ndërtimi i një prototipi ATMega1284p Arduino ATmega1284p bootloader
Hapi 6: Shtojca 2 Arduino Uno PedalSHIELD Variacioni
Schematic3, Breadboard3 dhe Photo3 jep detaje të qarkut me bazë Uno që i parapriu ndërtimit AtMega1284.
Mund të jetë e dobishme të kesh një potenciometër si një mikser për sinjalin e thatë (të barabartë me hyrjen) dhe të lagësht (pas përpunimit nga MCU), dhe Skematika 2, Breadboard 2 dhe Foto 2 jep detajet e qarkut të një qarku të ndërtuar më parë i cili inkorporon një hyrje të tillë në përzierësin dalës. Shikoni gjithashtu Open Music Labs StompBox për një zbatim tjetër të mikserit duke përdorur katër OpAmps
Recommended:
Një karikues i vjetër? Jo, është një amplifikues dhe pedal i kufjeve me kitarë RealTube18: 8 hapa (me fotografi)
Një karikues i vjetër? Jo, është një amplifikator dhe pedal i kufjeve të kitares RealTube18: PVERRMBLEDHJE: Çfarë duhet të bëni gjatë një pandemie, me një karikues të vjetëruar të baterisë nikel-kadmium dhe tuba radio vakumi të vjetëruara 60+ vjeçare të makinave të ulura përreth që kanë nevojë të riciklohen? Po në lidhje me projektimin dhe ndërtimin e një baterie të zakonshme të mjeteve të tensionit të ulët, vetëm me tub
Kitarë Kitarë-amp: 6 hapa
Guitar Guitar-amp: Ndërsa shikoja vëllain tim për të hedhur një kitarë të vjetër të rrahur që kishte pasur për muaj, nuk mund ta ndihmoja por ta ndaloja. Të gjithë e kemi dëgjuar thënien, "plehrat e një njeriu janë thesar i një tjetri." Kështu që e kapa para se të godiste mbushjen e tokës. Kjo
Lightsaber i bazuar në Arduino me efekte të lehta dhe të shëndosha: 14 hapa (me fotografi)
Lightsaber i bazuar në Arduino me efekte të lehta dhe të shëndosha: Përshëndetje jedi! Ky udhëzues ka të bëjë me bërjen e një saberi, që duket, tingëllon dhe performon si ai në film! Dallimi i vetëm - nuk mund të presë metal: (Kjo pajisje bazohet në platformën Arduino, dhe unë i jap asaj shumë karakteristika dhe funksione, ajo
Kitarë Hero Kitarë Me altoparlant të integruar: 8 hapa
Guitar Hero Guitar Me Altoparlant të integruar: Në thelb, unë hapa një kontrollues të Guitar Hero dhe pyesja veten se çfarë mund të vendosja brenda. Duket e lehtë, kështu që kuptova se kishte shumë vend. Sigurisht, kishte shumë. Fillimisht kam planifikuar të vendos një iPod Shuffle në qafën e kitarës dhe
Laser-synthitar Nga një kitarë lodër e ngjashme me një kitarë: 6 hapa
Laser-synthitar Nga një kitarë lodër e ngjashme me një kitarë: Unë u frymëzova shumë nga të gjitha videot e harpave me lazer në youtube, por i gjeta të gjitha shumë të mëdha për t'i sjellë me vete për një seancë bllokimi ose ata kishin nevojë për një konfigurim të ndërlikuar dhe një kompjuter etj. Mendova për një kitarë me lazer në vend të telave. Pastaj gjeta një thyerje