Kazalo:

Kača na deski: 3 koraki (s slikami)
Kača na deski: 3 koraki (s slikami)

Video: Kača na deski: 3 koraki (s slikami)

Video: Kača na deski: 3 koraki (s slikami)
Video: ЗАПРЕЩЁННЫЕ ТОВАРЫ с ALIEXPRESS 2023 ШТРАФ и ТЮРЬМА ЛЕГКО! 2024, Julij
Anonim
Kača na deski
Kača na deski
Kača na deski
Kača na deski
Kača na deski
Kača na deski

"Ali imaš v telefonu kakšne igre?"

"Ne ravno."

Uvod:

Enostaven za upravljanje, enostaven za programiranje in ovekovečen z Nokijo 6110 je postal Snake priljubljen projekt med inženirji. Uveljavljen je v kar koli, od LED matric, LCD -jev, razsvetljave na knjižnih policah in celo do oken celotnih stavb. Snake bomo izvajali na majhni ploščici in zaslonu OLED. Ljudje so zagotovo naredili drobnejše igralce kač, vendar to posebej uporablja načrt in odpravlja potrebo po oblikovanju tiskanih vezij ali spajkanja.

(Lahko bi samo naredili aplikacijo v telefonu, vendar stvari ne počnemo, ker so enostavne.)

Predpogoji:

Osnovno razumevanje vezij, načinov za načrtovanje in dobro razumevanje programiranja v Arduinu.

Zaloge

  • Arduino Nano
  • 2 razmeroma visoka upora (1 kOhm)
  • Drobna plošča
  • 2 tipki
  • 22 AWG polnovredna žica
  • 128 x 64 OLED

To so partnerske povezave Amazon, zato z vsako prodajo zaslužim malo provizije. Če teh zalog še nimate in želite podpreti moje prihodnje projekte, sledite tem povezavam!:)

1. korak: Ogledna plošča

Ogledna plošča
Ogledna plošča
Ogledna plošča
Ogledna plošča
Ogledna plošča
Ogledna plošča

Za izdelavo končnega izdelka moramo očitno sestaviti strojno opremo za programiranje in preizkušanje našega projekta. Sistemski diagram tega projekta je dokaj preprost, saj vključuje le 4 komponente.

1. Postavite ga:

Vzemite svoje sestavne dele in jih položite na ploščo ter se prepričajte, da se vse prilega. Predstavljajte si, katere žice in zatiče boste uporabljali in za kakšne namene. Prepričajte se, da se vaše pričakovane žice ne križajo, ker je to bolj zapletena plošča. Zapišite, katere točke morate povezati! Čeprav je to preprosta plošča, vam bo olajšala življenje med postopkom ožičenja in na splošno. Zaradi majhnosti našega delovnega prostora je to neverjetno pomemben korak.

Opombe:

Ker OLED uporablja vodilo I2C, je treba uporabiti nožici A4 in A5. Velikost matične plošče ne dopušča napajalne in talne tirnice, zato sem uporabil nekaj trikov, da je vse uspelo. Pozitivno napetost gumbov napajata nožici D13 in A2. Odkril sem, da zatiči Arduino ne morejo napajati le toka, ampak tudi potopni tok, zato sem A3 uporabil kot podlago za desni gumb. Za povečanje prostora na plošči sem polovico Nano obesil s plošče in leve stranske zatiče podprl s kosom pene.

2. Ožičite ga:

S parom odstranjevalcev žice in dostojno količino 22 AWG trdne žice sestavite svoje komponente skupaj. Uporaba trdnega jedra za izdelavo poltrajnih projektov je ključna, saj jih lahko za razliko od skakalnih žic obrežete po dolžini. Pazite, da na žicah ne pustite veliko odvečne dolžine, zato bo nastala neurejena plošča. Odrežite kable izvlečnih uporov, tako da se prilegajo ravni plošči.

(Lahko tudi samo sledite zgoraj navedenim.)

Korak: Program in preskus

Program in test
Program in test

Če si želite kasneje prihraniti glavobol, poskrbite, da OLED in gumbi delujejo tako, kot bi morali, z osnovnimi preskusnimi programi.

1. Načrt, načrt, načrt:

Samo skok naravnost v kodo ni pametna praksa. Verjemite mi, poskusil sem! Zato morate opisati, kako bo deloval vaš program. Diagram poteka programa je precej trden način za načrtovanje, kaj mora narediti vaša koda, in vas bo zagotovo spremljal. Vzemite za primer mojega (zgoraj)

2. Koda, koda, koda:

Odkrito povedano, ta projekt je večja programska vaja kot strojna. Edina knjižnica, ki sem jo uporabil, je bila Adafruitova OLED knjižnica, ne upoštevam podpornih knjižnic GFX in Wire.

Namestite Adafruitovo knjižnico OLED prek upravitelja knjižnice Arduino IDE.

Ne morem dokumentirati vsake vrstice kode, ki sem jo napisal, vendar je tukaj nekaj nasvetov:

Nasveti:

Komentarji:

- Med kodiranjem najprej pišite čiste in uporabne komentarje. Prihodnji vi in drugi, ki boste prebrali vašo kodo, se vam bodo zagotovo zahvalili.

Spomin:

- S kompleksnejšimi projekti, kot so ti, SRAM postane precej vroča dobrina. V knjižnici Adafruit vmesnik OLED 128 x 64 zavzame samo 1 kB, kar je približno polovica pomnilnika v ATMega328p. Zato je pametno upravljanje pomnilnika pomembnejše kot kdaj koli prej.

- Pri velikih podatkovnih strukturah se bodo shranjeni podatki nabrali in zavzeli veliko prostora. Da bi zmanjšali pomnilniški odtis svojih spremenljivk, sem po možnosti uporabil manjše vrste podatkov (na primer kratke in bajtne).

- Nizki so običajno shranjeni v SRAM -u, vendar jih bo funkcija F () namesto tega namestila v PROGMEM in prihranila dragocen pomnilnik.

Millis:

- Za natančnejše merjenje ciklov igre uporabite funkcijo millis (). Na spletu je veliko dobrih vaj in primerov.

Vnaprej določi:

- Uporabite direktivo #define predprocesorja kot enostaven način za nastavitev trajnih vrednosti v kodi.

Test:

- Preizkusite svojo kodo. Odpravljanje hroščev bo veliko lažje.

3. korak: Uživajte

Zabavajte se s svojo novo igro s kačami!

(Vem, da sem v zgornjem videoposnetku zmagal pri 20 točkah, v moji kodi lahko nastavite višji pogoj za zmago.)

Stvari za razširitev:

  • Baterija za prenosljivost
  • Bolj varni gumbi
  • Še manjša igra s kačami
  • Še več iger?

Priporočena: