Sisukord:
- Samm: kõigi osade kogumine
- Samm: OLED -ekraani ühendamine
- 3. samm: sumisti ühendamine
- Samm: kõik riistvaraühendused on lõpule viidud
- Samm: kogu lisamine ja kuvaprotokollide initsialiseerimine
- 6. samm: teemalaulu meloodia
- Samm: laulu esitamine käivitamisel
- Samm: piltide teisendamine bitikaartideks
- 9. samm: eraldusvõime reguleerimine vastavalt teie ekraanile
- 10. samm: Bitmap -massiivi loomine
- 11. samm: piltide kuvamine järjestusena
- 12. samm: kogu kood:
- 13. samm: tulemused:
Video: PUBG teemalaul+animatsioon Arduinoga!: 13 sammu (piltidega)
2024 Autor: John Day | [email protected]. Viimati modifitseeritud: 2024-01-30 08:46
Tere ja tere tulemast sellesse lõbusasse juhendamisse! Loodan, et teil kõigil läheb hästi ja olete terved. See väike, kuid hämmastav projekt käsitleb PUBG tunnuslaulu mängimist ja isegi arduino abil mängu animatsioonide loomist.
Kasutatavad komponendid on väga hõlpsasti kättesaadavad ja neid on lihtne leivatükile kokku panna. Jagan kogu ehitamise ja kodeerimise protsessi selles juhendis, jääge lõpuni!
Soovitan soojalt videot vaadata, et projektist aimu saada:) Kui meeldib, siis likege ja jagage videot. Kaaluge minu kanali tellimist, kui teile meeldib minu ehitamine. Aitäh!
Niisiis, alustame viivitusteta!
Samm: kõigi osade kogumine
Ehitus koosneb peamiselt Arduino Nano -st, mis on selle projekti peamine tuum. Võite kasutada mis tahes muid Arduino variante, nagu populaarsed Arduino Uno, Arduino Pro Mini, Arduino Mega jne. Animatsioonide ja piltide kuvamiseks otsustasin kasutada 0,96 -tollist OLED -ekraani eraldusvõimega 128 x 64 pikslit. See ekraan võib olla liidesed arduino -ga I2C protokolliga, mis nõuab andmete ja kella jaoks vaid kahte juhtmestikku, vähendades seeläbi ühenduste arvu ja muutes projekti kompaktsemaks. PUBG -teemalise meloodia mängimiseks kasutasin 5 V suminat, millest ühendasin positiivse tihvti arduino digitaalse tihvtiga 6 ja maandus läheb Arduino maapinnale.
Siin on projekti jaoks vajalike osade loend:
- Arduino Nano (või mõni muu teie valitud arduino plaat)
- 0,96 -tolline OLED -ekraanimoodul
- 5V helisignaal
- Jumper juhtmed
- Leivalaud
- Arduino programmeerimiskaabel
Samm: OLED -ekraani ühendamine
OLED -ekraani ühendamiseks arduino kaudu on vaja kokku 4 ühendust:
Arduino Vcc 5V
Arduino Gnd Gnd
Arduino SDA A4
Arduino SCK A5
Arduino tihvtid A4 ja A5 teenivad mitut otstarvet analoogsisenditel ja ka tihvtidel I2C -side jaoks. Siin oleme kasutanud kuvarimooduliga liidestamiseks I2C protokolli tihvte.
Link selles projektis kasutatud Adafruit raamatukogule:
3. samm: sumisti ühendamine
5 V suminal on positiivne ja negatiivne toiteterminal.
Arduino positiivne tihvt D6 (digitaalne tihvt 6) (saate kasutada mis tahes arduino digitaalset tihvti)
Arduino negatiivne tihvt Gnd
Loome digitaalsele tihvtile D6 soovitud tooni, millele helisignaal meloodia mängib.
Samm: kõik riistvaraühendused on lõpule viidud
Kõik vajalikud OLED -ekraani ja helisignaali ühendused on valmis. Nüüd läheme edasi, et mõista projekti programmeerimise aspekti.
Samm: kogu lisamine ja kuvaprotokollide initsialiseerimine
Kogu programm on jagatud kolmeks osaks:
- Põhiprogramm, mis koosneb pildi kuvamise ja meloodia lähtestamisest ning järjestustest
- fail „pitches.h”, mis koosneb nootide loendist ja sellega seotud sagedusest
- "images.h" fail, mis koosneb kuvatavate piltide bitikaartidest.
Järgmistes sammudes käsitletakse protsessi, kuidas pilti OLED -ekraani jaoks bittkaardimassiiviks teisendada.
Lisan ka kogu koodi koos selle juhendiga, et saaksite seda kasutada:)
6. samm: teemalaulu meloodia
Otsisin Internetist üles põhilised noodid, mis sisaldavad PUBG -teemalist laulu, ja lisasin need siis meloodiamassiivi.
Kulutades märkimisväärse aja mängimisele ja meloodiajada kordamisele, lõin seejärel aja kestuse massiivi, mis puudutab seda, kui kaua iga nooti tuleb mängida. Meloodia- ja kestusmassiivi kombinatsioon sisaldab täielikku teavet laulu esitamiseks.
Samm: laulu esitamine käivitamisel
Kokku on meloodiajada koostamiseks 63 nooti. Kasutades tsüklit ja kordades nootide ja kestusmassiivi vahel etteantud pausiga iga noodi vahel, esitatakse kogu jada üks kord, kuna see kooditükk asub tühimike seadistuses (). Huvitav on see, et ükski selle projekti kood ei kasuta arduino koodi tühisilmus (), kuna kavatsen pilte esitada ja kuvada ainult üks kord. Muidugi, kui soovite korduvat jada, tuleb see sisestada funktsiooni void loop () funktsiooni.
Samm: piltide teisendamine bitikaartideks
Nüüd on projekti huvitav osa kujutise teisendamine OLED -ekraani bitikaardimassiiviks vastavalt selle pikslitihedusele. Selle jaoks leidsin prefekti veebitööriista, mis võimaldab meil luua kohandatud bitikaarte.
Selle veebirakenduse link on:
Tänu selle rakenduse hämmastavatele loojatele muudab see minu töö palju lihtsamaks.
Lingile minnes peate esmalt üles laadima pildi, mille bitikaardi soovite luua. Siinkohal tuleb märkida, et paremate tulemuste saamiseks peaksite proovima valida pilte, millel pole palju värvikontrasti, ja proovige jääda piltide juurde, millel on mõned ühevärvilised värvid, ilma gradientideta
9. samm: eraldusvõime reguleerimine vastavalt teie ekraanile
Järgmises etapis peame pildi suurust muutma vastavalt ekraani eraldusvõimele. Meie OLED -ekraani puhul on see 28 pikslit lai ja 64 pikslit kõrge, mida olen reguleerinud, nagu pildil näidatud. Reguleerige heledusläve, et veenduda, et pilt on märgatavalt selge (siin tuleb esile ühevärviliste piltide kasutamise eelis, mida rohkem värvigradiente, seda ühevärvilise ekraani pildikvaliteet halveneb, kuna see segab heledusläve).
Järgmine samm on pildi sobitamine ekraanile, hoides proportsioonid puutumatuna ja kohandades sümmeetriat, mille valikud on juba olemas. Soovitud pildiväljundi saamiseks saate neid valikuid uurida. Viitamiseks saate ka hämmastava eelvaate valiku!
10. samm: Bitmap -massiivi loomine
Pärast pildi parameetrite reguleerimist valige järgmises etapis lihtsalt Arduino kood väljundvorminguks ja klõpsake soovitud bitikaardimassiivi saamiseks nuppu Loo!
Seal! olete oma pildi edukalt teisendanud soovitud bitikaardimassiiviks. Olen seda protsessi teinud kokku 7 pildi jaoks ja need salvestanud.
11. samm: piltide kuvamine järjestusena
Piltide kuvamiseks olen kasutanud funktsiooni Arduino millis (), et helistada joonistusfunktsioonile (), mis on põhimõtteliselt käskude kogum ekraani tühjendamiseks, bitikaardimassiivi joonistamiseks OLED -ile ja ekraani lähtestamiseks. Peamine loogika on see, et iga 3,5 sekundi järel muudetakse pilti ja kuvatakse järgmine pilt. Noh, 3,5 sekundit pole ainulaadne number, ma lihtsalt mõistsin, et kui ma jagan kogu meloodia kestuse 7 pildiga, siis saan iga ekraani kohta umbes 3,5 sekundit. Soovi korral saate sellele lisada rohkem pilte ja lühendada iga pildi kuvamisaega.
Koodilõigud selgitavad, kuidas funktsioone millis () funktsiooni alusel kutsutakse.
Kõik piltide bitikaardimassiivid salvestatakse faili "images.h"
12. samm: kogu kood:
Siin jagan teile kogu koodi, et saaksite ringi mängida ja katsetada!
Kui kõik tundub korras, on aeg see tahvlile üles laadida:)
13. samm: tulemused:
Nagu näete, said pildid suurepärased! Ja nii tegi ka meloodia! Loodan, et olete vaadanud videot, kus kogu meeleavaldus on kohal.
Loodan, et see Arduino versioon PUBG -st on põnev projekt kõigile mängu- ja elektroonikahuvilistele.
Jagage julgelt oma tagasisidet kommentaarides ja jagage soovitusi. Kaaluge ka minu kanali tellimist, et saada rohkem sellist sisu, kuna see on osa OLED -seeriast, millega ma töötan. Andke mulle teada, kui te selle lõbusa projekti üles ehitate:)
Järgmise korrani.
Soovitan:
Bitmap animatsioon SSD1331 OLED -ekraanil (SPI) koos Visuinoga: 8 sammu
Bitinop animatsioon SSD1331 OLED -ekraanil (SPI) koos Visuinoga: selles õpetuses kuvame ja liigutame lihtsa animatsioonina bitikaardipilti SSD1331 OLED -ekraanil (SPI) koos Visuinoga. Vaadake videot
Mänguasja animatsioon: 4 sammu
Mänguasjade animatsioon: looge esmalt oma projekt Scratchiga. Selle ma lõin: mänguasja lugu
RIMOSA: Liivaseisaku animatsioon: 9 sammu
RIMOSA: Sand Stop Motion Animation: hankige oma tarvikud: a.) Seade, millele on alla laaditud stopp-animatsioonirakendus (kasutame I-pod'i ja kasutame tasuta allalaadimiseks StopMotion Studio'i.) B.) Statiiv koos seadmega manus c.) Erinevad harjasuurused (1/4 lamedast harjast ei sobi
Animatsioon 16x2 I2c LCD ekraanil STM32 Nucleo KASUTAMINE: 4 sammu
Animatsioon 16x2 I2c LCD ekraanil STM32 Nucleo KASUTAMINE: Tere sõbrad, see on õpetus, mis illustreerib kohandatud animatsiooni tegemist 16x2 i2c LCD ekraanil. Projekti jaoks on vaja väga vähe asju, nii et kui teil on juurdepääs koodile, saate selle lõpetada see 1 tunni jooksul. Pärast selle õpetuse järgimist saate abl
Arduino Uno: Bitmap animatsioon ILI9341 TFT puutetundliku ekraani ekraanil Visuinoga: 12 sammu (piltidega)
Arduino Uno: Bitmap animatsioon ILI9341 TFT puutetundliku ekraani ekraanil Visuinoga: ILI9341 põhinevad TFT puuteekraaniga ekraanikilbid on Arduino jaoks väga populaarsed odavad ekraanikilbid. Visuino on neid juba mõnda aega toetanud, kuid mul pole kunagi olnud võimalust kirjutada nende kasutamise õpetust. Hiljuti aga küsisid vähesed