Sisällysluettelo:
- Vaihe 1: Kerää kaikki osat
- Vaihe 2: OLED -näytön liittäminen
- Vaihe 3: summerin liittäminen
- Vaihe 4: Kaikki laitteistoyhteydet valmiit
- Vaihe 5: Kirjaston sisällyttäminen ja näyttöprotokollien alustaminen
- Vaihe 6: Theme Song Melody
- Vaihe 7: Kappaleen toistaminen käynnistyksen aikana
- Vaihe 8: Kuvien muuntaminen bittikarttoiksi
- Vaihe 9: Tarkkuuden säätäminen näytön mukaan
- Vaihe 10: Bittikarttajärjestelmän luominen
- Vaihe 11: Kuvien näyttäminen sarjana
- Vaihe 12: Koko koodi:
- Vaihe 13: Tulokset:
Video: PUBG -teemalaulu+animaatio Arduinolla!: 13 vaihetta (kuvilla)
2024 Kirjoittaja: John Day | [email protected]. Viimeksi muokattu: 2024-01-30 09:00
Hei ja tervetuloa tähän hauskaan opettavaiseen! Toivottavasti te kaikki voitte hyvin ja pysytte terveinä. Tässä pienessä mutta hämmästyttävässä projektissa on kyse PUBG -teemakappaleen soittamisesta ja jopa pelianimaatioiden luomisesta arduinoa käyttäen.
Käytetyt komponentit ovat erittäin helposti saatavilla ja erittäin helppo koota leipälevylle. Jaan koko rakennus- ja koodausprosessin tässä ohjeessa, pysy loppuun asti!
Suosittelen lämpimästi katsomaan videon saadaksesi käsityksen projektista:) Jos pidät siitä, tykkää ja jaa video. Harkitse kanavani tilaamista, jos pidät rakennuksestani. Kiitos!
Aloitetaan siis ilman viivytyksiä!
Vaihe 1: Kerää kaikki osat
Rakenne koostuu pääasiassa Arduino Nanosta, joka on tämän projektin pääydin. Voit käyttää mitä tahansa muita Arduino -vaihtoehtoja, kuten suosittuja Arduino Unoa, Arduino Pro Miniä, Arduino Megaa jne. Animaatioiden ja kuvien näyttämiseksi päätin käyttää 0,96 tuuman OLED -näyttöä, jonka resoluutio on 128 x 64 pikseliä. Tämä näyttö voidaan liittää arduinoon I2C -protokollalla, joka vaatii vain kaksi johtoa datalle ja kellolle, mikä vähentää yhteyksien määrää ja tekee projektista pienemmän. PUBG -teemamelodian toistamiseen käytin 5 V: n summeria, josta liitin positiivisen nastan arduinon digitaaliseen nastaan 6 ja maa menee Arduinon maahan.
Tässä on luettelo hankkeen tarvitsemista osista:
- Arduino Nano (tai mikä tahansa muu valitsemasi arduino -lauta)
- 0,96 tuuman OLED -näyttömoduuli
- 5V summeri
- Hyppyjohdot
- Leipälauta
- Arduino -ohjelmointikaapeli
Vaihe 2: OLED -näytön liittäminen
OLED -näytön yhdistämiseen arduinosta tarvitaan yhteensä 4 liitäntää:
Vcc 5V Arduinosta
Gnd Gnd Arduinosta
SDA A4 Arduinosta
SCK A5 Arduinosta
Arduino -nastat A4 ja A5 palvelevat monenlaisia analogisia tuloja sekä nastoja I2C -tiedonsiirtoa varten. Tässä olemme käyttäneet I2C -protokollan tappeja liitäntään näyttömoduulin kanssa.
Tässä projektissa käytetty linkki Adafruit -kirjastoon:
Vaihe 3: summerin liittäminen
5 V: n summerissa on positiivinen ja negatiivinen syöttöliitin.
Arduinon positiivinen nasta D6 (digitaalinen nasta 6) (voit käyttää mitä tahansa arduinon digitaalista tappia)
Arduinon negatiivinen nasta Gnd
Luomme halutun äänen digitaaliselle nastalle D6, jolle summeri soittaa melodian.
Vaihe 4: Kaikki laitteistoyhteydet valmiit
Kaikki tarvittavat OLED -näytön ja summerin liitännät ovat valmiit. Yritetään nyt ymmärtää projektin ohjelmointiaspekti.
Vaihe 5: Kirjaston sisällyttäminen ja näyttöprotokollien alustaminen
Koko ohjelma on jaettu kolmeen osaan:
- Pääohjelma, joka koostuu alustuksesta ja kuvanäytön ja melodian sekvensseistä
- "pitches.h" -tiedosto, joka sisältää nuotinluettelon ja siihen liittyvän taajuuden
- "images.h" -tiedosto, joka koostuu näytettävien kuvien bittikartoista.
Prosessi, jolla kuva muunnetaan bittikarttajärjestelmäksi OLED -näyttöä varten, käsitellään tulevissa vaiheissa.
Liitän myös koko koodin tämän ohjeen kanssa käytettäväksi:)
Vaihe 6: Theme Song Melody
Etsin Internetistä perusmuistioita, jotka sisältävät PUBG -teemakappaleen, ja lisäsin ne sitten melodialuetteloon.
Viettämällä huomattavan paljon aikaa soittamiseen ja melodiasekvenssin toistamiseen loin sitten ajan kestojoukon, joka koskee sitä, kuinka kauan kukin nuotti on toistettava. Melodia- ja kestotaulukon yhdistelmä sisältää kaikki kappaleen toistamiseen tarvittavat tiedot.
Vaihe 7: Kappaleen toistaminen käynnistyksen aikana
Melodiasekvenssin muodostamisessa on yhteensä 63 nuottia. Käyttämällä silmukkaa ja toistamalla nuotit ja kestotaulukko ennalta määrätyllä tauolla kunkin nuotin välillä, koko sekvenssi toistetaan kerran, koska tämä koodiosa on tyhjässä asennuksessa (). Mielenkiintoista on, että mikään tämän projektin koodista ei käytä arduino -koodin tyhjää silmukkaa (), koska aion toistaa ja näyttää kuvia vain kerran. Tietenkin, jos haluat toistuvan sekvenssin, se on laitettava void loop () -funktioon.
Vaihe 8: Kuvien muuntaminen bittikarttoiksi
Nyt projektin mielenkiintoinen osa on prosessi muuntaa kuva OLED -näytön bittikarttajärjestelmäksi sen pikselitiheyden mukaan. Tätä varten löysin prefektin online -työkalun, jonka avulla voimme luoda mukautettuja bittikarttoja.
Tämän online -sovelluksen linkki on:
Tämän sovelluksen uskomattomien luojaten ansiosta tämä helpottaa työtäni paljon.
Kun siirryt linkkiin, sinun on ensin ladattava kuva, jonka bittikartan haluat luoda. Tässä on huomioitava yksi asia: yritä valita kuvia, joissa ei ole paljon värikontrastia, ja yritä pysyä kiinni kuvissa, joissa on muutama yksivärinen väri ilman gradientteja parempien tulosten saamiseksi
Vaihe 9: Tarkkuuden säätäminen näytön mukaan
Seuraavassa vaiheessa meidän on muutettava kuvan kokoa näytön resoluution mukaan. OLED -näytössämme se on 28 pikseliä leveä ja 64 pikseliä korkea, ja olen säätänyt kuvan mukaisesti. Säädä kirkkauden kynnystä varmistaaksesi, että kuva on selvästi kirkas (tässä tulee esiin se etu, että kuvia käytetään kiinteillä väreillä, mitä enemmän värin kaltevuuksia, yksivärisen näytön kuvanlaatu heikkenee, kun se sekoittuu kirkkausrajaan)).
Seuraava askel on sovittaa kuva näytölle pitämällä mittasuhteet ennallaan ja säätämällä symmetriaa varten, jolle vaihtoehdot ovat jo olemassa. Voit tutkia näitä vaihtoehtoja saadaksesi halutun kuvan. Viitteenä saat myös hämmästyttävän esikatseluvaihtoehdon!
Vaihe 10: Bittikarttajärjestelmän luominen
Kun olet säätänyt kuvaparametreja, valitse seuraavassa vaiheessa vain Arduino -koodi tulostusmuodoksi ja napsauta Luo, niin saat halutun bittikarttajoukon!
Siellä! olet onnistuneesti muuttanut kuvan halutuksi bittikarttajoukkoksi. Olen tehnyt tämän prosessin yhteensä 7 kuvaa varten ja tallentanut ne.
Vaihe 11: Kuvien näyttäminen sarjana
Kuvien näyttämiseen olen käyttänyt Arduino millis () -toimintoa soittamaan draw () -toimintoa, joka on pohjimmiltaan joukko komentoja näytön tyhjentämiseksi, bittikarttajoukon piirtäminen OLED -näyttöön ja näytön alustaminen. Päälogiikka on, että kuva vaihdetaan 3,5 sekunnin välein ja seuraava kuva näytetään. No, 3,5 sekuntia ei ole ainutlaatuinen luku, tajusin juuri, että jos jaan koko melodian keston 7 kuvalla, sain noin 3,5 sekuntia jokaisesta näytöstä. Voit halutessasi lisätä tähän lisää kuvia ja lyhentää kunkin kuvan näyttöaikaa.
Koodinpätkät selittävät, miten funktioita kutsutaan millis () -funktion perusteella.
Kuvien koko bittikarttajärjestelmät tallennetaan "images.h" -tiedostoon
Vaihe 12: Koko koodi:
Tässä jaan koko koodin, jotta voitte leikkiä ja kokeilla!
Kun kaikki näyttää olevan kunnossa, on aika ladata se taululle:)
Vaihe 13: Tulokset:
Kuten näette, kuvista tuli hienoja! Ja niin teki melodia! Toivottavasti olet katsonut videon, jossa koko esittely on läsnä.
Toivon, että tämä Arduinon PUBG -versio on jännittävä projekti kaikille peli- ja elektroniikkaharrastajille.
Voit vapaasti jakaa palautteesi kommenteissa ja ehdotuksia. Harkitse myös kanavani tilaamista lisää tällaista sisältöä varten, koska tämä on osa OLED -sarjaa, jonka parissa työskentelen. Kerro minulle, jos rakennat tämän hauskan projektin:)
Ensi kertaan.
Suositeltava:
Bittikartta -animaatio SSD1331 OLED -näytöllä (SPI) ja Visuino: 8 vaihetta
Bittikartta -animaatio SSD1331 OLED -näytöllä (SPI) Visuinolla: Tässä opetusohjelmassa näytämme bittikarttakuvan ja liikumme sen ympärillä yksinkertaisessa animaatiossa SSD1331 OLED -näytöllä (SPI) Visuinon kanssa
Lelu -animaatio: 4 vaihetta
Leluanimaatio: Luo ensin projektisi Scratchilla. Tämän olen luonut: tarinan lelusta
RIMOSA: Sand Stop Motion Animaatio: 9 vaihetta
RIMOSA: Sand Stop Motion -animaatio: Hanki tarvikkeesi: a.) Laite, johon on ladattu stop motion -animaatiosovellus (Käytämme I-podia ja StopMotion Studiota ilmaisena latauksena.) B.) Jalusta laitteen kanssa lisälaite c.) Erilaiset harjakoot (1/4 litteässä harjassa on virheellinen
Animaatio 16x2 I2c -nestekidenäytöllä STM32 Nucleo -käyttöä käyttämällä: 4 vaihetta
Animaatio 16x2 I2c -nestekidenäytöllä STM32 Nucleon KÄYTTÄMINEN: Hei ystävät, tämä on opetusohjelma, joka havainnollistaa mukautetun animaation tekemistä 16x2 i2c -LCD -näytöllä. se 1 tunnissa. Tämän opetusohjelman jälkeen olet abl
Animaatio Spriten luominen TTGO T-Watchilla: 7 vaihetta
Animaatio Spriten luominen TTGO T-Watchilla: Demovideo