Satura rādītājs:

PUBG motīvu dziesma+animācija ar Arduino !: 13 soļi (ar attēliem)
PUBG motīvu dziesma+animācija ar Arduino !: 13 soļi (ar attēliem)

Video: PUBG motīvu dziesma+animācija ar Arduino !: 13 soļi (ar attēliem)

Video: PUBG motīvu dziesma+animācija ar Arduino !: 13 soļi (ar attēliem)
Video: 🎶 НОВЫЙ БОСС СВИНКА ПЕППА EXE! ЭКЗЕ! ПРОТИВ БОЙФРЕНДА! 🎶 Friday Night Funkin' Peppa Pig exe 2024, Novembris
Anonim
Image
Image
Visu detaļu savākšana
Visu detaļu savākšana

Sveiki, un laipni lūdzam šajā jautrajā pamācībā! Es ceru, ka jums visiem ir labi un paliekat veseli. Šis mazais, bet pārsteidzošais projekts ir par PUBG motīvu dziesmas atskaņošanu un pat spēļu animāciju izveidi, izmantojot arduino.

Izmantotās sastāvdaļas ir ļoti viegli pieejamas un ļoti viegli saliekamas uz rīvdēļa. Es šajā pamācībā dalīšos ar visu veidošanas un kodēšanas procesu, turieties līdz galam!

Es ļoti ieteiktu jums noskatīties video, lai gūtu priekšstatu par projektu:) Ja jums tas patīk, tad atzīmējiet ar Patīk un dalieties ar to. Apsveriet iespēju abonēt manu kanālu, ja jums patīk mana būve. Paldies!

Tātad, bez turpmākas kavēšanās, sāksim darbu!

1. darbība: visu detaļu savākšana

Visu detaļu savākšana
Visu detaļu savākšana

Būvējums galvenokārt sastāv no Arduino Nano, kas ir šī projekta galvenais kodols. Varat izmantot citus Arduino variantus, piemēram, populāros Arduino Uno, Arduino Pro Mini, Arduino Mega uc Šis displejs var būt saskarne ar arduino ar I2C protokolu, kuram nepieciešami tikai divi vadi datiem un pulkstenim, tādējādi samazinot savienojumu skaitu un padarot projektu kompaktāku. PUBG motīva melodijas atskaņošanai es izmantoju 5 V skaņas signālu, no kura es savienoju pozitīvo tapu ar arinoino digitālo tapu 6 un zeme iet uz Arduino zemi.

Šis ir projektam nepieciešamo detaļu saraksts:

  1. Arduino Nano (vai jebkura cita jūsu izvēlēta arduino tāfele)
  2. 0,96 collu OLED displeja modulis
  3. 5V skaņas signāls
  4. Jumper vadi
  5. Maizes dēlis
  6. Arduino programmēšanas kabelis

2. darbība. OLED displeja pievienošana

OLED displeja pievienošana
OLED displeja pievienošana
OLED displeja pievienošana
OLED displeja pievienošana
OLED displeja pievienošana
OLED displeja pievienošana

Pavisam ir nepieciešami 4 savienojumi, lai OLED displejs tiktu savienots no arduino:

Vrd 5V no Arduino

Grd Gnd no Arduino

Arduino SDA A4

SCK A5 no Arduino

Arduino tapas A4 un A5 kalpo vairākiem analogo ieeju mērķiem, kā arī tapām I2C sakariem. Šeit mēs esam izmantojuši I2C protokola tapas saskarnei ar displeja moduli.

Šajā projektā izmantotā saite uz Adafruit bibliotēku:

3. darbība: skaņas signāla pievienošana

Signāla pievienošana
Signāla pievienošana
Signāla pievienošana
Signāla pievienošana

5V skaņas signālam ir pozitīvs un negatīvs barošanas terminālis.

Arduino pozitīvā tapa D6 (digitālā tapa 6) (varat izmantot jebkuru arduino digitālo tapu)

Arduino negatīvā tapa Gnd

Mēs izveidosim vēlamo signālu uz digitālās tapas D6, kurai skaņas signāls atskaņos melodiju.

4. darbība: visi aparatūras savienojumi ir pabeigti

Visi aparatūras savienojumi ir pabeigti
Visi aparatūras savienojumi ir pabeigti
Visi aparatūras savienojumi ir pabeigti
Visi aparatūras savienojumi ir pabeigti

Visi nepieciešamie OLED displeja un skaņas signāla savienojumi ir pabeigti. Tagad sāksim saprast projekta programmēšanas aspektu.

5. darbība: bibliotēkas iekļaušana un displeja protokolu inicializēšana

Ieskaitot bibliotēku un displeja protokolu inicializēšanu
Ieskaitot bibliotēku un displeja protokolu inicializēšanu

Visa programma ir sadalīta 3 komponentos:

  1. Galvenā programma, kas sastāv no attēla parādīšanas un melodijas inicializācijas un secībām
  2. "pitches.h" fails, kas sastāv no notu saraksta un ar to saistītās frekvences
  3. "images.h" fails, kas sastāv no parādāmo attēlu bitkartēm.

Turpmākajās darbībās tiek apspriests process, kā attēlu pārvērst par bitu karšu masīvu OLED displejam.

Es pievienošu arī visu kodu kopā ar šo pamācību, lai jūs varētu to izmantot:)

6. solis: motīvu dziesmas melodija

Tēmas dziesmas melodija
Tēmas dziesmas melodija
Tēmas dziesmas melodija
Tēmas dziesmas melodija

Es paskatījos internetā pamata piezīmes, kas ietver PUBG motīvu dziesmu, un pēc tam pievienoju tās melodiju masīvam.

Pavadot ievērojamu laiku atskaņošanai un melodiju secības atkārtošanai, es izveidoju laika ilguma masīvu, kas attiecas uz to, cik ilgi katra notis jāspēlē. Melodiju masīva un ilguma masīva kombinācija ietver visu informāciju dziesmas atskaņošanai.

7. darbība: dziesmas atskaņošana startēšanas laikā

Dziesmas atskaņošana startēšanas laikā
Dziesmas atskaņošana startēšanas laikā

Kopā ir 63 piezīmes, kuras es izmantoju, lai izveidotu melodiju secību. Izmantojot cilpu un atkārtojot piezīmju un ilguma masīvu ar iepriekš noteiktu pauzi starp katru noti, visa secība tiek atskaņota vienu reizi, jo šis koda gabals ir tukšuma iestatījumā (). Interesanti, ka neviens no šī projekta kodiem neizmanto arduino koda void loop (), jo es plānoju atskaņot un parādīt attēlus tikai vienu reizi. Protams, ja vēlaties atkārtot secību, tā ir jāiekļauj void loop () funkcijā.

8. darbība: attēlu pārveidošana par bitkartēm

Attēlu pārvēršana par bitkartēm
Attēlu pārvēršana par bitkartēm

Tagad interesanta projekta daļa ir process, lai attēlu pārvērstu par OLED displeja bitu karšu masīvu atbilstoši tā pikseļu blīvumam. Šim nolūkam es atradu prefekta tiešsaistes rīku, kas ļauj mums izveidot pielāgotas bitkartes.

Šīs tiešsaistes lietojumprogrammas saite ir:

Pateicoties pārsteidzošajiem šīs lietojumprogrammas veidotājiem, tas ievērojami atvieglo manu darbu.

Dodoties uz saiti, vispirms augšupielādējiet attēlu, kura bitkarti vēlaties izveidot. Šeit jāņem vērā viena lieta - mēģiniet atlasīt attēlus, kuros nav daudz krāsu kontrastu, un, lai iegūtu labākus rezultātus, mēģiniet pielīmēt attēlus ar dažām vienkrāsainām krāsām bez gradientiem

9. darbība. Izšķirtspējas pielāgošana atbilstoši jūsu displejam

Izšķirtspējas pielāgošana atbilstoši jūsu displejam
Izšķirtspējas pielāgošana atbilstoši jūsu displejam

Nākamajā solī mums ir jāmaina attēla izmērs atbilstoši displeja izšķirtspējai. Mūsu OLED displejam tas ir 28 pikseļi plats un 64 pikseļi augsts, ko esmu noregulējis, kā parādīts attēlā. Pielāgojiet spilgtuma slieksni, lai pārliecinātos, ka attēls ir ievērojami skaidrs (šeit parādās priekšrocība, izmantojot attēlus ar vienkrāsainām krāsām, jo vairāk krāsu gradienti, jo vienkrāsainā displeja attēla kvalitāte pasliktināsies, sajaucoties ar spilgtuma slieksni)).

Nākamais solis ir ievietot attēlu ekrānā, saglabājot neskartas proporcijas un pielāgojot simetriju, kurai opcijas jau ir pieejamas. Varat izpētīt šīs iespējas, lai iegūtu vēlamo attēla izvadi. Uzziņai jūs saņemat arī apbrīnojamo priekšskatījuma iespēju!

10. darbība: Bitkartes masīva ģenerēšana

Bitkartes masīva ģenerēšana
Bitkartes masīva ģenerēšana

Pēc attēla parametru pielāgošanas nākamajā solī vienkārši izvēlieties Arduino kodu kā izvades formātu un noklikšķiniet uz ģenerēt, lai iegūtu vēlamo bitkartes masīvu!

Tur! jūs esat veiksmīgi pārveidojis savu attēlu vēlamajā bitkaršu masīvā. Esmu veicis šo procesu kopumā 7 attēliem un tos saglabājis.

11. darbība. Attēlu parādīšana secībā

Attēlu parādīšana secībā
Attēlu parādīšana secībā
Attēlu parādīšana secībā
Attēlu parādīšana secībā
Attēlu parādīšana secībā
Attēlu parādīšana secībā

Attēlu parādīšanai esmu izmantojis funkciju Arduino millis (), lai izsauktu funkciju draw (), kas būtībā ir komandu kopa, lai notīrītu displeju, uzzīmētu bitkartes masīvu OLED un inicializētu displeju. Galvenā loģika ir tāda, ka ik pēc 3,5 sekundēm attēls tiek mainīts un tiek parādīts nākamais attēls. Nu, 3,5 sekundes nav unikāls skaitlis, es tikai sapratu, ka, sadalot visu melodijas ilgumu ar 7 attēliem, man ir aptuveni 3,5 sekundes katram displejam. Ja vēlaties, varat tam pievienot vairāk attēlu un samazināt katra attēla parādīšanas laiku.

Koda fragmenti izskaidro funkciju izsaukšanu, pamatojoties uz funkciju millis ().

Visi attēlu karšu masīvi tiek saglabāti failā "images.h"

12. darbība: viss kods:

Šeit es dalos ar visu kodu, lai jūs visi varētu spēlēties un eksperimentēt!

Kad viss šķiet kārtībā, ir pienācis laiks to augšupielādēt uz tāfeles:)

13. darbība. Rezultāti:

Rezultāti
Rezultāti
Rezultāti
Rezultāti
Rezultāti
Rezultāti
Rezultāti
Rezultāti

Kā redzat, attēli izrādījās lieliski! Un tā arī melodija! Es ceru, ka esat noskatījies video, kurā ir redzama visa demonstrācija.

Es ceru, ka šī Arduino PUBG versija ir aizraujošs projekts visiem spēļu un elektronikas entuziastiem.

Lūdzu, nekautrējieties dalīties ar atsauksmēm komentāros un dalīties ar ieteikumiem. Apsveriet iespēju abonēt manu kanālu, lai iegūtu vairāk šāda satura, jo šī ir daļa no OLED sērijas, pie kuras strādāju. Pastāstiet man, ja veidojat šo jautro projektu:)

Līdz nākamajai reizei.

Ieteicams: