Turinys:

Gyvatė ant duonos lentos: 3 žingsniai (su paveikslėliais)
Gyvatė ant duonos lentos: 3 žingsniai (su paveikslėliais)

Video: Gyvatė ant duonos lentos: 3 žingsniai (su paveikslėliais)

Video: Gyvatė ant duonos lentos: 3 žingsniai (su paveikslėliais)
Video: MANE UŽPUOLĖ PIKTAS ŠUO |VLOG #3 2024, Lapkritis
Anonim
Gyvatė ant duonos lentos
Gyvatė ant duonos lentos
Gyvatė ant duonos lentos
Gyvatė ant duonos lentos
Gyvatė ant duonos lentos
Gyvatė ant duonos lentos

- Ar telefone yra žaidimų?

"Ne visai."

Įvadas:

Paprasta valdyti, lengva programuoti ir įamžinta „Nokia 6110“, „Snake“tapo mėgstamu projektu tarp inžinierių. Jis buvo įdiegtas bet kur, pradedant LED matricomis, LCD ekranais, knygų lentynų apšvietimu ir net ištisų pastatų langais. Mes įdiegsime „Snake“ant mažos duonos lentos ir OLED ekrano. Žmonės tikrai sukūrė mažesnius gyvatės žaidėjus, tačiau tam specialiai naudojama duonos lenta, todėl nereikia kurti PCB ar lydmetalio.

(Galite tiesiog sukurti programą savo telefone, bet mes to nedarome, nes tai lengva.)

Būtinos sąlygos:

Pagrindinis supratimas apie grandines, kaip naudotis duona ir geras programavimo „Arduino“išmanymas.

Prekės

  • Arduino Nano
  • 2 pakankamai dideli rezistoriai (1 kOhm)
  • Maža duonos lentelė
  • 2 Mygtukai
  • 22 AWG kieto šerdies viela
  • 128 x 64 OLED

Tai yra „Amazon“filialų nuorodos, todėl už kiekvieną pardavimą uždirbu nedidelį komisinį. Jei dar neturite šių atsargų ir norite paremti būsimus mano projektus, sekite šias nuorodas!:)

1 žingsnis: „Breadboard“

Bandomoji Lenta
Bandomoji Lenta
Bandomoji Lenta
Bandomoji Lenta
Bandomoji Lenta
Bandomoji Lenta

Norėdami pagaminti galutinį produktą, akivaizdžiai turime surinkti aparatūrą, kad suprogramuotume ir išbandytume savo projektą. Šio projekto sistemos schema yra gana paprasta, nes ji apima tik 4 komponentus.

1. Išdėstykite:

Paimkite komponentus ir padėkite juos ant lentos, įsitikindami, kad viskas tinka. Įsivaizduokite, kokius laidus ir kaiščius naudosite ir kokiais tikslais. Įsitikinkite, kad numatomi laidai nesikerta, nes tai sukuria netvarkingesnę duonos lentą. Parašykite, kokius taškus reikės sujungti! Nors tai yra paprasta duonos lenta, tai palengvins jūsų gyvenimą laidų proceso metu ir apskritai. Kadangi mūsų darbo vieta yra maža, tai yra neįtikėtinai svarbus žingsnis.

Pastabos:

Kadangi OLED naudoja I2C magistralę, reikia naudoti A4 ir A5 kaiščius. Duonos lentos dydis neleidžia naudoti maitinimo ir antžeminio bėgelio, todėl panaudojau keletą gudrybių, kad viskas pavyktų. Teigiama mygtukų įtampa tiekiama iš kaiščių D13 ir A2. Aš atradau, kad „Arduino“kaiščiai gali ne tik tiekti srovę, bet ir srovę, todėl aš naudoju A3 kaip tinkamo mygtuko įžeminimą. Norėdami maksimaliai padidinti erdvę ant duonos lentos, pusę lentos „Nano“pakabinau nuo lentos ir kairės pusės kaiščius palaikiau putplasčio gabalėliu.

2. Prijunkite laidą:

Turėdami porą vielos nuėmiklių ir pakankamai 22 AWG kietos vielos laidų, tvarkingai sujunkite komponentus. Labai svarbu naudoti kietą šerdį pusiau nuolatiniams duonos lentų projektams, nes jūs galite juos nukirpti iki ilgio, skirtingai nei trumpieji laidai. Įsitikinkite, kad ant laidų nepaliekate daug perteklinio ilgio, tai padarys netvarkingą plokštę. Nupjaukite nuleidžiamų rezistorių laidus, kad jie atitiktų plokštę.

(Taip pat galite tiesiog sekti tai, ką padariau aukščiau.)

2 žingsnis: Programuokite ir išbandykite

Programa ir testas
Programa ir testas

Kad vėliau išvengtumėte galvos skausmo, sukurkite pagrindines testavimo programas, kad OLED ir mygtukai veiktų taip, kaip turėtų.

1. Planuok, planuok, planuok:

Tiesiog šokinėti tiesiai į kodą nėra protinga praktika. Patikėk, aš bandžiau! Štai kodėl turėtumėte apibūdinti, kaip veiks jūsų programa. Programos srauto diagrama yra gana tvirtas būdas suplanuoti, ką turi atlikti jūsų kodas, ir tikrai padės jums sekti kelią. Paimkite, pavyzdžiui, mano (aukščiau)

2. Kodas, kodas, kodas:

Atvirai kalbant, šis projektas yra didesnis programavimo pratimas nei aparatinės įrangos pratimas. Vienintelė biblioteka, kurią naudojau, buvo „Adafruit“OLED biblioteka, neskaitant palaikančių GFX ir „Wire“bibliotekų.

Įdiekite įdiegti „Adafruit“OLED biblioteką per „Arduino IDE“bibliotekos tvarkyklę.

Negaliu dokumentuoti kiekvienos parašytos kodo eilutės, bet čia yra keletas patarimų:

Patarimai:

Komentarai:

- Pirmiausia, koduodami rašykite tvarkingus ir naudingus komentarus. Ateityje jūs ir kiti, kurie skaitys jūsų kodą, tikrai jums padėkos.

Atmintis:

- Įgyvendinant tokius sudėtingesnius projektus, SRAM tampa gana karšta preke. „Adafruit“bibliotekoje 128 x 64 OLED buferis užima tik 1 kB, o tai yra maždaug pusė ATMega328p atminties. Todėl protingas atminties valdymas yra svarbesnis nei bet kada.

- Esant didelėms duomenų struktūroms, turimi duomenys kaupsis ir užims daug vietos. Norėdami sumažinti kintamųjų atminties pėdsaką, kai tik galėjau, naudojau mažesnius duomenų tipus (pvz., Trumpus ir baitus).

- Eilutės paprastai saugomos SRAM, tačiau naudojant funkciją F () jos bus įtrauktos į PROGMEM, taupant brangią atmintį.

Millis:

- Norėdami tiksliau nustatyti žaidimų ciklus, naudokite funkciją „millis“(). Internete yra daug gerų pamokų ir pavyzdžių.

Iš anksto apibrėžti:

- Naudokite direktyvą #define kaip paprastą būdą nustatyti nuolatines kodo vertes.

Bandymas:

- Išbandykite savo kodą eidami. Bus daug lengviau pašalinti klaidas.

3 žingsnis: Mėgaukitės

Linksminkitės su savo naujuoju gyvatės žaidimu!

(Žinau, kad aukščiau esančiame vaizdo įraše laimėjau 20 taškų, mano kode galite nustatyti didesnę laimėjimo sąlygą.)

Dalykai, kuriuos reikia išplėsti:

  • Akumuliatorius nešiojimui
  • Saugesni mygtukai
  • Dar mažesnis gyvatės žaidimas
  • Dar daugiau žaidimų?

Rekomenduojamas: