Obsah:

Had na Breadboarde: 3 kroky (s obrázkami)
Had na Breadboarde: 3 kroky (s obrázkami)

Video: Had na Breadboarde: 3 kroky (s obrázkami)

Video: Had na Breadboarde: 3 kroky (s obrázkami)
Video: НЕ ВЗДУМАЙ снимать аккумулятор с машины. Делай это ПРАВИЛЬНО ! 2024, Júl
Anonim
Had na Breadboarde
Had na Breadboarde
Had na Breadboarde
Had na Breadboarde
Had na Breadboarde
Had na Breadboarde

„Máte v telefóne nejaké hry?“

"Nie práve."

Úvod:

Jednoduché ovládanie, jednoduché programovanie a zvečnenie telefónom Nokia 6110 sa Snake stal obľúbeným projektom medzi inžiniermi. Bol implementovaný v čomkoľvek, od LED matíc, LCD, osvetlenie poličiek a dokonca aj okien celých budov. Implementujeme Snake na malú dosku a OLED obrazovku. Ľudia určite vyrobili tenšie prehrávače hadov, ale toto konkrétne používa prkénko, čím sa eliminuje potreba navrhovať DPS alebo spájku.

(V telefóne môžete vytvoriť aplikáciu, ale nerobíme veci, pretože sú jednoduché.)

Predpoklady:

Základné porozumenie obvodov, ako na doske, a solídny prehľad o programovaní v Arduine.

Zásoby

  • Arduino Nano
  • 2 primerane vysoké odpory (1 kOhm)
  • Drobný chlebík
  • 2 tlačidlá
  • 22 AWG drôt s pevným jadrom
  • 128 x 64 OLED

Toto sú odkazy na pobočky spoločnosti Amazon, takže pri každom predaji zarábam malú províziu. Ak tieto zásoby ešte nemáte a chcete podporiť budúce moje projekty, kliknite na tieto odkazy!:)

Krok 1: Breadboard

Breadboard
Breadboard
Breadboard
Breadboard
Breadboard
Breadboard

Aby bol náš konečný produkt jasný, musíme samozrejme zostaviť hardvér, aby sme mohli naprogramovať a otestovať náš projekt. Systémový diagram tohto projektu je pomerne jednoduchý, pretože obsahuje iba 4 komponenty.

1. Rozložte to:

Vezmite svoje súčasti a položte ich na dosku a uistite sa, že všetko sedí. Vizualizujte si, aké drôty a kolíky budete používať a na aké účely. Uistite sa, že sa vaše očakávané vodiče nekrížia, pretože to spôsobí, že bude chaotickejší doska. Napíšte, aké body budete potrebovať na pripojenie! Aj keď je to jednoduchý breadboard, výrazne vám to uľahčí život počas zapojenia a všeobecne. Vzhľadom na to, aký malý je náš pracovný priestor, je to neuveriteľne dôležitý krok.

Poznámky:

Pretože OLED používa zbernicu I2C, musia byť použité kolíky A4 a A5. Veľkosť dosky nepripúšťa napájaciu a uzemňovaciu lištu, takže som použil niekoľko trikov, aby všetko fungovalo. Kladné napätie pre tlačidlá je dodávané pomocou pinov D13 a A2. Zistil som, že kolíky Arduino môžu nielen napájať, ale aj prúdovať, a preto som použil A3 ako uzemnenie pre pravé tlačidlo. Aby som maximalizoval priestor na doske, zavesil som polovicu Nano mimo dosky a podoprel ľavé bočné čapy kúskom peny.

2. Pripojte ho:

S párom odizolovačov a poriadnym množstvom 22 AWG drôtu s pevným jadrom úhľadne prepojte svoje súčasti k sebe. Použitie pevného jadra na výrobu semi-trvalých projektov breadboard je kľúčové, pretože ich môžete na rozdiel od prepojovacích káblov skrátiť na dĺžku. Uistite sa, že nenecháte na kábloch veľa prebytočnej dĺžky, bude to znamenať neporiadok na doske. Orežte vodiče sťahovacích rezistorov tak, aby lícovali s doskou.

(Môžete sa tiež riadiť tým, čo som urobil vyššie.)

Krok 2: Program a test

Program a test
Program a test

Aby ste si neskôr ušetrili bolesť hlavy, zaistite základné testovacie programy, aby OLED a tlačidlá fungovali tak, ako majú.

1. Plánujte, plánujte, plánujte:

Skok priamo do kódu nie je múdry postup. Ver mi, skúsil som to! Preto by ste mali načrtnúť, ako bude váš program fungovať. Vývojový diagram programu je celkom solídny spôsob, ako naplánovať, čo musí váš kód urobiť, a určite vás udrží v obraze. Vezmite si napríklad ten môj (vyššie)

2. Kód, kód, kód:

Úprimne povedané, tento projekt je väčším cvičením ako hardvérom. Jedinou knižnicou, ktorú som použil, bola knižnica OLED spoločnosti Adafruit, nepočítajúc podporné knižnice GFX a Wire.

Nainštalujte si OLED knižnicu Adafruit prostredníctvom správcu knižnice Arduino IDE.

Nemôžem zdokumentovať každý riadok kódu, ktorý som napísal, ale tu je niekoľko tipov:

Tipy:

Komentáre:

- V prvom rade píšte úhľadné a užitočné komentáre počas kódovania. Budúci vy a ostatní, ktorí čítate váš kód, vám určite poďakujú.

Pamäť:

- S komplexnejšími projektmi, ako sú tieto, sa SRAM stáva veľmi horúcou komoditou. V knižnici Adafruit zaberá 128 x 64 OLED buffer 1 kB samotného, čo je asi polovica pamäte v ATMega328p. Preto je inteligentná správa pamäte dôležitejšia ako kedykoľvek predtým.

- Pri veľkých dátových štruktúrach sa budú uložené údaje hromadiť a zaberajú veľa miesta. Aby som znížil pamäťovú stopu svojich premenných, používal som, keď som mohol, menšie dátové typy (ako krátke a bajtové).

- Reťazce sú zvyčajne uložené v SRAM, ale pomocou funkcie F () ich namiesto toho vloží do PROGMEM, čím sa ušetrí drahocenná pamäť.

Millis:

- Aby ste dosiahli presnejšie načasovanie herných cyklov, použite funkciu millis (). Na internete je veľa dobrých návodov a príkladov.

Preddefinujte:

- Použite direktívu #define preprocesor ako jednoduchý spôsob nastavenia trvalých hodnôt v kóde.

Test:

- Otestujte si svoj kód za pochodu. Odstránenie chýb bude oveľa jednoduchšie.

Krok 3: Užite si to

Bavte sa s novou hrou s hadmi!

(Viem, že som vo videu vyššie vyhral s 20 bodmi, podmienku výhry môžete nastaviť vyššie v mojom kóde.)

Veci na rozšírenie:

  • Batéria pre prenosnosť
  • Bezpečnejšie tlačidlá
  • Ešte menšia hadia hra
  • Ešte viac hier?

Odporúča: