Kazalo:

Tematska pesem PUBG+animacija z Arduinom!: 13 korakov (s slikami)
Tematska pesem PUBG+animacija z Arduinom!: 13 korakov (s slikami)

Video: Tematska pesem PUBG+animacija z Arduinom!: 13 korakov (s slikami)

Video: Tematska pesem PUBG+animacija z Arduinom!: 13 korakov (s slikami)
Video: 😱КАК PUBG СТАЛ ИЗВЕСТНЫМ 2013-2019 , ТЫ ОФИГЕЕШЬ !!! 2024, November
Anonim
Image
Image
Zbiranje vseh delov.
Zbiranje vseh delov.

Pozdravljeni in dobrodošli v tem zabavnem pouku! Upam, da ste vsi zdravi in zdravi. Ta majhen, a neverjeten projekt govori o predvajanju tematske pesmi PUBG in celo ustvarjanju nekaterih animacij iger z uporabo arduina.

Uporabljene komponente so zelo lahko dostopne in jih je enostavno sestaviti na kos mize. V tem navodilu bom delil celoten postopek gradnje in kodiranja, držite se do konca!

Predlagam, da si ogledate video, da dobite predstavo o projektu:) Če vam je všeč, ga všečkajte in delite video. Če uživate v moji zgradbi, se naročite na moj kanal. Hvala!

Torej, brez nadaljnjega odlašanja, začnimo!

Korak: Zberite vse dele.

Zbiranje vseh delov.
Zbiranje vseh delov.

Zgradba je v glavnem sestavljena iz Arduino Nano, ki je glavno jedro tega projekta. Uporabite lahko katero koli drugo različico Arduino, kot so priljubljeni Arduino Uno, Arduino Pro Mini, Arduino Mega itd. Za prikaz animacij in slik sem se odločil za 0,96 -palčni OLED zaslon z ločljivostjo 128 x 64 slikovnih pik. Ta zaslon je lahko vmesnik z arduinom s protokolom I2C, ki zahteva le dve žici za podatke in uro, s čimer se zmanjša število povezav in projekt postane bolj kompakten. Za predvajanje melodije teme PUBG sem uporabil zvočnik 5V, od katerega sem pozitivni pin povezal z digitalnim zatičem 6 arduina in ozemljitev gre na tla Arduina.

To je seznam delov, ki so potrebni za projekt:

  1. Arduino Nano (ali katera koli druga arduino plošča po vaši izbiri)
  2. 0,96 -palčni prikazovalni modul OLED
  3. Brenčalo 5V
  4. Mostične žice
  5. Ogledna plošča
  6. Kabel za programiranje Arduino

2. korak: Priključite zaslon OLED

Priključitev zaslona OLED
Priključitev zaslona OLED
Priključitev zaslona OLED
Priključitev zaslona OLED
Priključitev zaslona OLED
Priključitev zaslona OLED

Za povezavo zaslona OLED z arduinom potrebujete skupaj 4 povezave:

Vcc 5V Arduino

Gnd Gnd iz Arduina

SDA A4 iz Arduina

SCK A5 iz Arduina

Zatiči A4 in A5 arduina služijo večnamenskim analognim vhodom kot tudi zatiči za I2C komunikacijo. Tu smo za vmesnik z zaslonskim modulom uporabili zatiče za protokol I2C.

Povezava do knjižnice Adafruit, uporabljene v tem projektu:

3. korak: Povežite zvočni signal

Priključitev zvočnika
Priključitev zvočnika
Priključitev zvočnika
Priključitev zvočnika

Zvočnik 5V ima pozitiven in negativen napajalni priključek.

Pozitivni pin D6 Arduina (digitalni pin 6) (lahko uporabite kateri koli digitalni pin arduina)

Negativni pin Gnd iz Arduina

Na digitalnem zatiču D6 bomo ustvarili želeni ton, na katerega bo zvonec predvajal melodijo.

4. korak: Vse povezave strojne opreme so dokončane

Vse povezave strojne opreme so končane.
Vse povezave strojne opreme so končane.
Vse povezave strojne opreme so končane.
Vse povezave strojne opreme so končane.

Vse potrebne povezave zaslona OLED in zvočnika so popolne. Zdaj pa pojdimo na razumevanje programskega vidika projekta.

5. korak: Vključitev knjižnice in inicializacija protokolov prikaza

Vključno s knjižnico in inicializacijo protokolov prikaza
Vključno s knjižnico in inicializacijo protokolov prikaza

Celoten program je razdeljen na 3 komponente:

  1. Glavni program, ki zajema inicializacijo in zaporedje prikaza slike in melodije
  2. Datoteka "pitches.h", sestavljena iz seznama glasbenih not in s tem povezane frekvence
  3. Datoteka "pictures.h", sestavljena iz bitnih slik za prikaz.

Postopek, kako sliko pretvoriti v matrično sliko za prikaz OLED, je obravnavan v naslednjih korakih.

Priložil bom tudi celotno kodo skupaj s tem navodilom za uporabo:)

6. korak: Melodija tematske pesmi

Melodija tematske pesmi.
Melodija tematske pesmi.
Melodija tematske pesmi.
Melodija tematske pesmi.

Na internetu sem poiskal osnovne note, ki vsebujejo temo pesmi PUBG, in jih nato dodal v niz melodij.

Ker sem porabil veliko časa za igranje in predvajanje zaporedja melodij, sem nato ustvaril niz časovnega trajanja, ki se nanaša na to, kako dolgo je treba predvajati vsako noto. Kombinacija melodičnega niza in nizov trajanja vsebuje popolne informacije za predvajanje pesmi.

7. korak: Predvajanje pesmi med zagonom.

Predvajanje pesmi med zagonom.
Predvajanje pesmi med zagonom.

Skupaj imam 63 not, ki sem jih uporabil za sestavo melodije. Z uporabo for zanke in ponavljanjem po notah in nizu trajanja z vnaprej določenim premorom med vsako noto se celotno zaporedje predvaja enkrat, saj ta koda leži v nastavitvi void (). Zanimivo je, da nobena od kod za ta projekt ne uporablja void loop () kode arduino, saj nameravam predvajati in prikazovati slike samo enkrat. Seveda, če želite ponavljajoče se zaporedje, ga je treba vnesti v funkcijo void loop ().

8. korak: Pretvorite slike v bitne slike

Pretvarjanje slik v bitne slike.
Pretvarjanje slik v bitne slike.

Zanimiv del projekta je postopek pretvorbe slike v matrično sliko za zaslon OLED glede na gostoto slikovnih pik. Za to sem našel spletno orodje za prefekte, ki nam omogoča ustvarjanje bitnih slik po meri.

Povezava do te spletne aplikacije je:

Zahvaljujoč neverjetnim ustvarjalcem te aplikacije mi to močno olajša delo.

Ko greste na povezavo, morate najprej naložiti sliko, za katero želite ustvariti slikovno sliko. Pri tem je treba opozoriti na to, da bi morali poskusiti izbrati slike, ki nimajo veliko barvnega kontrasta, poskušati se držati slik z nekaj trdnimi barvami, brez nagibov, da bi dobili boljše rezultate

9. korak: prilagodite ločljivost glede na vaš zaslon

Prilagajanje ločljivosti glede na vaš zaslon
Prilagajanje ločljivosti glede na vaš zaslon

V naslednjem koraku moramo spremeniti velikost slike glede na ločljivost zaslona. Za naš zaslon OLED je širok 28 slikovnih pik in visok 64 slikovnih pik, kar sem prilagodil, kot je prikazano na sliki. Prilagodite prag svetlosti, da se prepričate, da je slika precej jasna (tu nastopi prednost uporabe slik s trdnimi barvami, bolj ko se pojavijo barvni prelivi, se bo kakovost slike na enobarvnem zaslonu poslabšala, ko se pokvari s pragom svetlosti).).

Naslednji korak je, da sliko pritrdite na zaslon, pri čemer ohranite razmerja nedotaknjena in prilagodite simetrijo, za katero možnosti že obstajajo. Te možnosti lahko raziščete, da dobite želeno sliko. Za referenco dobite tudi neverjetno možnost predogleda!

10. korak: Ustvarjanje matrike bitnih slik.

Ustvarjanje bitne slike.
Ustvarjanje bitne slike.

Po prilagoditvi parametrov slike v naslednjem koraku samo izberite kodo Arduino kot izhodni format in kliknite ustvarjanje, da dobite želeno matriko bitnih slik!

Tam! ste uspešno pretvorili sliko v želeno matriko bitnih slik. Ta postopek sem izvedel za skupaj 7 slik in jih shranil.

11. korak: Prikaz slik kot zaporedja

Prikaz slik kot zaporedja
Prikaz slik kot zaporedja
Prikaz slik kot zaporedja
Prikaz slik kot zaporedja
Prikaz slik kot zaporedja
Prikaz slik kot zaporedja

Za prikaz slik sem s funkcijo Arduino millis () poklical funkcijo draw (), ki je v bistvu niz ukazov za brisanje zaslona, risanje matrike bitnih slik na OLED in inicializacijo prikaza. Glavna logika je, da se po vsakih 3,5 sekundah slika spremeni in prikaže naslednja slika. No, 3,5 sekunde niso edinstvena številka, pravkar sem ugotovil, da če celotno trajanje melodije razdelim na 7 slik, dobim približno 3,5 sekunde za vsak prikaz. Temu lahko dodate več slik in po želji skrajšate čas prikaza za vsako sliko.

Odlomki kode razlagajo, kako se funkcije kličejo na podlagi funkcije millis ().

Celotne slike bitnih slik so shranjene v datoteki "pictures.h"

12. korak: Celotna koda:

Tukaj delim celotno kodo, s katero se lahko igrate in eksperimentirate!

Ko se zdi, da je vse v redu, je čas, da to naložite na tablo:)

Korak: Rezultati:

Rezultati
Rezultati
Rezultati
Rezultati
Rezultati
Rezultati
Rezultati
Rezultati

Kot lahko vidite, so se slike izkazale za odlične! In tudi melodija! Upam, da ste gledali video, v katerem je prisotna celotna predstavitev.

Upam, da je ta Arduinova različica PUBG razburljiv projekt za vse ljubitelje iger in elektronike.

V komentarjih delite svoje povratne informacije in delite morebitne predloge. Prav tako se naročite na moj kanal za več takšnih vsebin, saj je to del serije OLED, na kateri delam. Sporočite mi, če gradite ta zabaven projekt:)

Do naslednjič.

Priporočena: