Turinys:
- 1 žingsnis: vaizdo įrašas
- 2 žingsnis: dalys ir medžiagos
- 3 žingsnis: laidai - SAA1099
- 4 žingsnis: laidai - TTL osciliatorius
- 5 žingsnis: laidai - „Iref“ir „Chip“sąsaja
- 6 žingsnis: laidų prijungimas - garso komponentai
- 7 žingsnis: laidai - garso lizdas
- 8 žingsnis: laidai - maitinimas prie „Breadboard“
- 9 žingsnis: laidų prijungimas - duomenų linijos
- 10 veiksmas: pasirenkami šviesos diodai
- 11 žingsnis: kodas
- 12 žingsnis: išbandykite
- 13 veiksmas: savo MIDI failų naudojimas - konvertavimo programa
- 14 veiksmas: MIDI failų konvertavimas
- 15 veiksmas: konvertuoto MIDI failo naudojimas
- 16 žingsnis: Baikite
Video: Retro garso lustas su „Arduino“- SAA1099: 16 žingsnių (su nuotraukomis)
2024 Autorius: John Day | [email protected]. Paskutinį kartą keistas: 2024-01-30 10:47
Šioje pamokoje aš jums parodysiu, kaip naudoti „Arduino Uno“su senovine garso sintezės mikroschema, norint atkurti midi failus kvadratiniu banguotu gerumu!
Jei norite tik trumpo šio projekto veikimo apžvalgos, žiūrėkite aukščiau pateiktą vaizdo įrašą. Priešingu atveju tęskite!
1 žingsnis: vaizdo įrašas
Jei jums labiau patinka visos instrukcijos aiškiuose, glaustais vaizdo įrašais, mes jums padėsime!
Likusiems mums galite tęsti, šiek tiek išsamiau ir rašytines instrukcijas.
2 žingsnis: dalys ir medžiagos
Tam jums reikės šių dalykų:
(Nuorodos skirtos „eBay“elementams)
- „Arduino“(„Uno“, „Nano“, „Leonardo“, jie visi turėtų veikti)
- Bent vidutinio dydžio kepimo lenta
- Stereo garso generatoriaus mikroschema SAA1099
- „Breadboard“jungiamieji laidai (Arba man patinka naudoti džemperius nuo moterų iki moterų, su 20 mm antgalių kaiščiais, įkištais į bet kurį galą- daug tvirtesni)
- 8Mhz TTL osciliatorius („AliExpress“nuoroda, pateikta „zweigelt“)
- Stereo (arba mono) garso lizdas
- 2 x 1K rezistoriai (100 partijų)
- 1 x 10K rezistorius (50 partijų)
- 2 x 100pF kondensatoriai
- (Neprivaloma) Kai kurie šviesos diodai, bent 1 (bet kokios spalvos, čia yra 100 įvairių spalvų už dolerį!)
Naudojant pateiktas nuorodas, bendra kaina yra 23,25 USD, įskaitant pristatymą. Žinoma, didžioji jo dalis atkeliauja iš pusės pasaulio, todėl pristatymas paprastai trunka apie mėnesį. Jei norite greitesnio pristatymo, tikriausiai turėsite sumokėti šiek tiek daugiau.
3 žingsnis: laidai - SAA1099
Jei schemos jums tinka, štai! Likę iš mūsų galime pereiti žingsnis po žingsnio arba žiūrėti vaizdo įrašą.
- Padėkite SAA1099 duonos lentos pabaigoje taip, kad įpjova ant lusto būtų nukreipta į galą.
- Dabar, valdžia. VDD (18 kaištis) SAA1099 eina į maitinimą, tada VSS kaištis (9 kaištis) įžeminamas.
- Tada įdėkite laidą tarp CS (2 kaiščio) ir žemės, kad jis būtų žemai ištrauktas
Taip pat rekomenduočiau pažvelgti į duomenų lapą, kurį pridėjau.
4 žingsnis: laidai - TTL osciliatorius
- Mes įdėsime TTL osciliatorių ant duonos lentos šalia duonos lentos, kad laikrodžio išvesties kaištis būtų arčiausiai SAA1099 laikrodžio įvesties (8 kaištis)
- Galite eiti į priekį ir prijungti maitinimą ir įžeminimą prie TTL generatoriaus. (Aš laukiau vėliau savo vaizdo įraše, todėl neturiu nuotraukos). Aukščiau esančiame paveikslėlyje parodyta, kurie kaiščiai yra.
5 žingsnis: laidai - „Iref“ir „Chip“sąsaja
- Prijunkite 10K rezistorių tarp „Iref“(6 kaištis) ir 5 V.
- Prijunkite skaitmeninį 8 kaištį prie WR (1 kaištis) SAA1099.
- Prijunkite skaitmeninį kaištį 9 prie A0 (3 kaištis) SAA1099.
6 žingsnis: laidų prijungimas - garso komponentai
- Prijunkite 100pF kondensatorių tarp OUTR (4 kaištis) ir GND
- Prijunkite 1K rezistorių tarp OUTR (4 kaištis) ir 5 V
- Tą patį padarysime ir su OUTL (5 kaištis)
- Prijunkite 100pF kondensatorių tarp OUTL (5 kaištis) ir GND
- Prijunkite 1K rezistorių tarp OUTL (5 kaištis) ir 5 V
Pastaba! Įsitikinkite, kad nė vienas iš rezistorių/kondensatorių laidų neliečia, kitaip daiktai neveiks ir (preliminariai) gali sprogti į veidą.
7 žingsnis: laidai - garso lizdas
- Prijunkite mažą trumpąjį laidą tarp 5 V ir tuščios eilės ant duonos lentos.
- Įdėkite garso lizdą taip, kad jungiklis nuo 5 V prijungtų prie garso lizdo „rankovės“kaiščio
- Prijunkite L ir R (arba garso kaištį, jei turite monofoninį lizdą) prie SAU1099 OUTL (5 kaištis) ir OUTR (4 kaištis) kaiščių.
Pastaba! Naudojant „Mono“garso lizdus, tikrai nesvarbu, kas nutiks, jei vienas kištukas bus prijungtas prie 5 V, o kitas - prie OUTL arba OUTR. Tai skambės puikiai. Jei taip nėra, tokiu atveju galbūt norėsite dar kartą patikrinti laidus.
8 žingsnis: laidai - maitinimas prie „Breadboard“
- Prijunkite abi „Breadboard“maitinimo magistralės puses viena prie kitos, naudodami trumpiklius.
- Prijunkite vieną pusę prie „Arduino“5V ir GND kaiščių, įsitikinkite, kad niekur nesumaišėte laidų. Jei tai padarysite, gali išeiti magiški dūmai.
9 žingsnis: laidų prijungimas - duomenų linijos
Tvarkingai prijunkite „D0“iki „D7“prie „Arduino“prie D0 (10 kaiščio) iki D7 (17 kaištis) SAA1099
Manau, kad „DuPont“jungiamieji laidai su moterimis ir moterimis, kurių abiejuose galuose yra 15-20 mm antgalių, veikia daug geriau nei vyriški ir vyriški dupontiniai laidai. Be to, galite juos naudoti kaip moterį-moterį arba vyrą-moterį. Abu jie lengvai randami „eBay“dideliais kiekiais, kad būtų galima šiek tiek pakeisti. Gera Kalėdų dovana trokštančiam „Arduino“narkomanui!
10 veiksmas: pasirenkami šviesos diodai
Aš nekalbėsiu žingsnis po žingsnio, kaip čia viską sukurti, tačiau yra keletas gerų vietų, kuriose galima pridėti šviesos diodų. Visų pirma, aš prijungiau 3 mm raudoną šviesos diodą tarp WR (1 kaištis) ir GND, kad parodytų kiekvieną kartą, kai „Arduino“siunčia komandą SAA1099.
Aš taip pat anksčiau prijungiau šviesos diodus prie duomenų linijų, todėl galite matyti faktinius dvejetainius duomenis kiekvienoje eilutėje. Aš naudoju šią sąranką savo vaizdo įraše „Arduino ir SAA1099 -„ Fireflies ““, taip pat dar 6 šviesos diodus ir papildomą kodą, kad užsidegčiau kiekvienas kiekvieno aktyvaus kanalo šviesos diodas.
Kuo daugiau šviesos diodų, tuo vėsiau atrodo!
11 žingsnis: kodas
Dabar, kai sukūrėte grandinę, dar kartą patikrinkite jungtis! Jūs nenorite susprogdinti savo brangaus arduino ir „Soundchip“! (Jei tai padarysite, gerai. Tai ne mano reikalas)
Darant prielaidą, kad esate sveikas ir viską patikrinote, galime pradėti jį programuoti.
- Biblioteka yra adresu
- Norėsite SAATunes.zip failo, todėl eikite į priekį ir atsisiųskite jį.
- Dabar atidarykite „Arduino IDE“.
- Skiltyje „Eskizas“, „Įtraukti biblioteką“spustelėkite „Pridėti.zip biblioteką“
- Eikite į bet kurią SAATunes bibliotekos atsisiuntimo vietą. (Man nesvarbu, ar tai buvo jūsų darbalaukis, atsisiuntimai, ar (įterpkite ką nors gėdingo) aplankas- tiesiog suraskite)
- Pasirinkite jį ir spustelėkite „Atidaryti“
- Tai turėtų pasakyti, kad jis pridėtas prie jūsų bibliotekų.
12 žingsnis: išbandykite
- Atidarykite SAATunes programos pavyzdį skiltyje „Failas“, „Pavyzdžiai“, „SAATunes“, „SAATunes-Uno“.
- Prijunkite „Arduino“prie kompiuterio ir į tam tikrą garsiakalbį.
- Įkelkite programą į „Arduino“.
Turėtumėte išgirsti akordą, tada Bethoveno pyktį dėl prarasto cento. Jei „Classical“nėra jūsų reikalas, nebijokite, nes netrukus sužinosime, kaip su juo naudoti pasirinktus MIDI failus.
Jei nieko negirdite, patikrinkite kelis dalykus: Pirma, ar įjungtas garsiakalbis? Pasukite jį iki galo. Tada arduino tikrai įjungtas? Ar programa įkelta teisingai? Patikrinkite visus laidus naudodami matematinį ir duomenų lapą, tada bandykite dar kartą.
13 veiksmas: savo MIDI failų naudojimas - konvertavimo programa
Pasiruošę išbandyti ką nors kitą, išskyrus Bethoveną? Labai gerai, štai.
Norėdami konvertuoti MIDI failus į „C ++ Bytestreams“, mums reikės Len Shustek programos. Jis yra bibliotekos, kurioje aš sukūriau kodą, kūrėjas, o mano biblioteka naudoja tą patį srauto formatą kaip ir jis.
- Programą rasite adresu
- Norima programa yra „miditones.exe“. Pirmyn ir atsisiųskite.
14 veiksmas: MIDI failų konvertavimas
Įspėjimas! Čia bus ascii drakonai! Jums gali būti lengviau žiūrėti vaizdo įrašą, kuriame galite tiksliai pamatyti, apie ką aš kalbu. Jei išdrįsite įeiti, tęskite!
Norėdami naudoti „MIDI to Bytestream“konvertavimo programą, turėsite atidaryti komandų eilutės langą. Atsiprašome, „Mac“ir „Linux“naudotojai, gali tekti rasti sprendimą.
- Atidarykite pradžios meniu ir įveskite „CMD“, tada paspauskite „Enter“.
- Dabar išmoksime šiek tiek MS-DOS magijos. Naudodamiesi komanda „CD“, eikite į vietą, į kurią atsisiuntėte „miditones.exe“failą. Daugeliu atvejų komandos bus „CD atsisiuntimai“.
- Paleiskite „miditones.exe“programą įvesdami „miditones“. Jame turėtų būti rodomas pagalbos sąrašas, rodantis dažniausiai pasitaikančias komandas.
Dabar mums reikia konvertuoti MIDI failą. Suraskite jį kažkur internetiniuose tinkluose, pageidautina be mušamųjų ir jokių specialiųjų efektų, išskyrus insturmentus/greitį. (Jei nežinote, kas tai yra, nesijaudinkite, viskas bus gerai)
- Atsisiųskite savo MIDI failą į tą pačią vietą, kurioje yra „miditones“programa.
- Dabar, naudodami komandų eilutės langą, įveskite „miditones -d -v [failo pavadinimas]“(pakeiskite [failo pavadinimą] bet kokiu jūsų MIDI failo pavadinimu).
- „miditones“sukurs. C failą su „C ++“srauto tame pačiame aplanke tokiu pačiu pavadinimu kaip ir MIDI failas.
15 veiksmas: konvertuoto MIDI failo naudojimas
Dabar, kai konvertavote MIDI failą, padėkime jį mažais baitais į arduino!
- Darant prielaidą, kad „SAATunes-Uno“pavyzdys jau atidarytas, eikime į priekį ir „išsaugokite kaip“kažką kito, kad galėtume jį redaguoti.
- Išsaugoję spustelėkite viršutiniame dešiniajame kampe esančią mažą „rodyklės žemyn“piktogramą.
- Spustelėkite „naujas skirtukas“ir pavadinkite jį „[vardas]. H“(pakeiskite [vardą] savo MIDI dainos pavadinimu arba bet kuo, ko norite)
- Dabar atidarykite. C failą, kurį anksčiau sukūrė viduriniai tonai. Norėdami atidaryti, galite naudoti užrašų knygelę.
- Norėdami pasirinkti viską, naudokite CNTRL/A, tada nukopijuokite.
- Įklijuokite jį į naują „[vardas].h“skirtuką „arduino“redaktoriuje.
Viskas čia gerai, tad grįžkime prie programos.
- Raskite, kur parašyta „#include„ RagePenny.h ““, ir nukopijuokite/įklijuokite ją į naują žemiau esančią eilutę.
- Pakeiskite „RagePenny.h“į tai, ką pavadinote savo nauju failu.
- Dabar pakomentuokite „#include“RagePenny.h ““, prieš jį pridėdami du brūkšnius į priekį (//).
- Įkelkite programą!
Jei viskas klostėsi gerai, tai turėtų paleisti savo MIDI failą. Jei ne, dar kartą patikrinkite, ar naujo skirtuko pavadinimai ir „#include“RagePenny.h “pakeistas pavadinimas sutampa. Patikrinkite kitus veiksmus ir įsitikinkite, kad viską padarėte teisingai. Kai kurie MIDI failai tiesiog neveikia, tačiau jie yra reti.
16 žingsnis: Baikite
Tikimės, kad viskas jums pavyko gerai, ir jūs trukdote naudoti MIDI failus senovinėje technologijoje, suteikiančioje naują gyvenimą!
Tačiau jei nesate, nepasiduokite! Siųskite komentarą, ir aš mielai jums padėsiu. Žinoma, nedvejodami pateikite man pasiūlymų komentaruose.
Laimingų melodijų!
Rekomenduojamas:
Automobilio garso signalas - pasirinktiniai garso efektai: 4 žingsniai (su nuotraukomis)
Automobilio garso signalas - pasirinktiniai garso efektai: Įrengiau savo automobilyje pasirinktinius garso signalų efektus, remdamasis „Mark Rober“„YouTube“vaizdo įrašais, ir man patinka daryti daiktus. Mano nuomone, pagrindiniam automobilio garso signalui reikia daugiau galimybių veiksmingam vairuotojų bendravimui. Ten, kur esu iš standartinio automobilio rago, yra
Garso/garso lygio indikatorius: 10 žingsnių
Garso/garso lygio indikatorius: Šiame projekte parodysiu, kaip sukurti paprastą garso lygio indikatorių naudojant operacinius stiprintuvus. Pastaba: norėdami užduoti klausimų, apsilankykite mano svetainėje adresu Klauskite eksperto. Naudingi papildomi vaizdo įrašai: imituotos grandinės nustatymas ant duonos lentos (protokolas
„Pasidaryk pats“„Bluetooth“laisvų rankų įranga (BK8000L lustas) 3D spausdinta: 6 žingsniai (su paveikslėliais)
„Pasidaryk pats“„Bluetooth“laisvų rankų įranga (BK8000L lustas) 3D spausdinta: Sveiki! Čia norėčiau parodyti, kaip patiems pasidaryti belaidę „Bluetooth“ausinę. Mano motyvacija atlikti šį projektą yra ta, kad neseniai nusipirkau daug blogų „Bluetooth“ausinių, todėl darydamas savo galiu patobulinti ir sukurti
7 juostų garso garso vizualizatorius: 4 žingsniai (su nuotraukomis)
7 juostų garso garso vizualizatorius: tai projektas, kuris priima nuolatinį analoginį signalą, paprastai muziką, ir naudoja jį 7 juostų LED vizualizatoriui įjungti. Jis naudoja MSGEQ7 mikroschemą muzikos signalui analizuoti, kad gautų dažnio dydžius ir susietų su LED juostomis. „Led“juostelės
Savarankiškas „Arduino“/ „ATMega“lustas ant duonos lentos: 8 žingsniai (su nuotraukomis)
Savarankiška „Arduino“/ „ATMega“mikroschema „Breadboard“: jei esate toks kaip aš, gavus „Arduino“ir galutinai užprogramavus pirmąjį lustą, norėjau jį ištraukti iš „Arduino Duemilanove“ir įdėti į savo grandinę. Tai taip pat atlaisvintų mano „Arduino“būsimiems projektams. Problema