Obsah:
Video: Had na prkénku: 3 kroky (s obrázky)
2024 Autor: John Day | [email protected]. Naposledy změněno: 2024-01-30 08:20
„Máš v telefonu nějaké hry?“
"Nepřesně."
Intro:
Snadné ovládání, snadné programování a zvěčnění pomocí telefonu Nokia 6110 se Snake stal oblíbeným projektem mezi inženýry. Byl implementován do čehokoli od LED matic, LCD, osvětlení poliček a dokonce i oken celých budov. Implementujeme Snake na malém prkénku a OLED obrazovce. Lidé určitě vyrobili tenčí hráče hadů, ale toto konkrétně používá prkénko, čímž odpadá potřeba navrhovat desky plošných spojů nebo pájky.
(V telefonu můžete jednoduše vytvořit aplikaci, ale neděláme věci, protože jsou snadné.)
Předpoklady:
Základní znalosti obvodů, jak na prkénko a solidní znalost programování v Arduinu.
Zásoby
- Arduino Nano
- 2 přiměřeně vysoké odpory (1 kOhm)
- Drobné prkénko
- 2 tlačítka
- 22 AWG drát s plným jádrem
- 128 x 64 OLED
Toto jsou odkazy na pobočky Amazonu, takže při každém prodeji vydělávám malou provizi. Pokud tyto zásoby ještě nemáte a chcete podpořit budoucí mé projekty, použijte tyto odkazy!:)
Krok 1: Breadboard
Abychom získali konečný produkt, musíme samozřejmě sestavit hardware, abychom mohli naprogramovat a otestovat náš projekt. Systémový diagram pro tento projekt je poměrně jednoduchý, protože zahrnuje pouze celkem 4 komponenty.
1. Rozložte:
Vezměte své součásti a položte je na desku a ujistěte se, že vše sedí. Vizualizujte si, jaké dráty a kolíky budete používat a k jakým účelům. Zajistěte, aby se vaše očekávané dráty nepřekřížily, protože to vytváří nepohodlnější prkénko. Zapište si, jaké body budete potřebovat k připojení! Ačkoli se jedná o jednoduchý prkénko, výrazně vám usnadní život během zapojení a obecně. Vzhledem k tomu, jak malý je náš pracovní prostor, je to neuvěřitelně důležitý krok.
Poznámky:
Protože OLED používá sběrnici I2C, je nutné použít piny A4 a A5. Velikost prkénka neumožňuje napájecí a zemní lištu, takže jsem použil několik triků, aby vše fungovalo. Kladné napětí pro tlačítka je napájeno piny D13 a A2. Zjistil jsem, že kolíky Arduino mohou nejen dodávat proud, ale také proud klesat, a proto jsem použil A3 jako uzemnění pro pravé tlačítko. Abych maximalizoval prostor na prkénku, zavěsil jsem polovinu Nano z desky a podepřel levé postranní čepy kouskem pěny.
2. Zapojte:
S párem odizolovačů drátu a slušným množstvím 22 AWG drátu s pevným jádrem úhledně propojte své součásti dohromady. Použití pevného jádra pro výrobu semipermanentních projektů na desce je klíčové, protože je můžete na rozdíl od propojovacích vodičů zkrátit na délku. Ujistěte se, že na vodičích nezanecháte příliš mnoho délky, což způsobí nepořádek na desce. Ořízněte vývody stahovacích odporů tak, aby lícovaly s deskou.
(Můžete také sledovat, co jsem udělal výše.)
Krok 2: Program a test
Chcete -li si později ušetřit bolest hlavy, ujistěte se, že OLED a tlačítka fungují tak, jak mají, vytvořením základních testovacích programů.
1. Plánujte, plánujte, plánujte:
Pouhé skákání přímo do kódu není moudrý postup. Věř mi, zkusil jsem to! Proto byste měli nastínit, jak bude váš program fungovat. Vývojový diagram programu je docela solidní způsob, jak naplánovat, co váš kód potřebuje, a rozhodně vás udrží na správné cestě. Vezměte si například můj (výše)
2. Kód, kód, kód:
Upřímně řečeno, tento projekt je větší programovací cvičení než hardwarové cvičení. Jedinou knihovnou, kterou jsem použil, byla knihovna OLED společnosti Adafruit, nepočítaje podpůrné knihovny GFX a Wire.
Nainstalujte si OLED knihovnu Adafruit prostřednictvím správce knihoven Arduino IDE.
Nemohu dokumentovat každý řádek kódu, který jsem napsal, ale zde je několik tipů:
Tipy:
Komentáře:
- V první řadě pište úhledné a užitečné komentáře při kódování. Budoucí vy a ostatní, kteří čtou váš kód, vám určitě poděkují.
Paměť:
- S komplexnějšími projekty, jako jsou tyto, se SRAM stává docela žhavou komoditou. V knihovně Adafruit zabírá 128 x 64 OLED buffer 1 kB sám, což je asi polovina paměti v ATMega328p. Proto je inteligentní správa paměti důležitější než kdy dříve.
- U velkých datových struktur se uložená data hromadí a zabírají spoustu místa. Aby se zmenšila paměťová stopa mých proměnných, používal jsem menší datové typy (jako krátké a bajtové), když jsem mohl.
- Řetězce jsou obvykle uloženy v paměti SRAM, ale pomocí funkce F () je místo toho vloží do PROGMEM, čímž ušetří drahocennou paměť.
Millis:
- Abyste dosáhli přesnějšího načasování herních cyklů, použijte funkci millis (). Na internetu je spousta dobrých návodů a příkladů.
Předdefinujte:
- Směrnici preprocesoru #define použijte jako snadný způsob nastavení trvalých hodnot v kódu.
Test:
- Otestujte si svůj kód za pochodu. Odstranění chyb bude mnohem snazší.
Krok 3: Užijte si to
Bavte se s vaší novou hadí hrou!
(Vím, že jsem ve videu výše vyhrál 20 bodů, v mém kódu můžete nastavit podmínky výhry výše.)
Co je třeba rozšířit:
- Baterie pro přenositelnost
- Bezpečnější tlačítka
- Ještě menší hadí hra
- Ještě více her?
Doporučuje:
Fuzz akustické kytary na prkénku: 3 kroky
Fuzz akustické kytary na prkénku: Varování! Tento projekt byl navržen pro použití s akustickou kytarou, takže si všimněte, že nemusí být vhodný pro elektrickou kytaru. O projektu: Tento jednoduchý protoboardní projekt Fuzz se skládá ze skutečně jednoduchého, ale účinného obvodu. Je věnováno přidání, takže
Breakout Board přátelský k prkénku pro ESP8266-01 s regulátorem napětí: 6 kroků (s obrázky)
Breadboard Friendly Breakout Board pro ESP8266-01 s regulátorem napětí: Ahoj všichni! Doufám, že se máš dobře. V tomto tutoriálu ukážu, jak jsem vytvořil tento přizpůsobený adaptér vhodný pro prkénko pro modul ESP8266-01 se správnou regulací napětí a funkcemi, které umožňují režim blesku ESP. Tento režim jsem vytvořil
Přepnout-přizpůsobit hračky: Vejce dálkově ovládaný had zpřístupněn !: 7 kroků (s obrázky)
Switch-Adapt Toys: Vejce dálkově ovládaný had zpřístupněný !: Adaptace hraček otevírá nové cesty a přizpůsobená řešení, která umožňují dětem s omezenými pohybovými schopnostmi nebo vývojovými vadami samostatně komunikovat s hračkami. V mnoha případech děti, které vyžadují přizpůsobené hračky, nejsou schopny
Moje desítka nejužitečnějších rad a triků na prkénku: 9 kroků (s obrázky)
Moje desítka nejužitečnějších rad a triků na prkénku: Na zemi je 6 palců sněhu a vy jste zavřeni v domě. Na okamžik jste ztratili motivaci pracovat na laseru pro řezání kovů s GPS. Na vašem oblíbeném webu nebyly žádné nové projekty, které by vyvolaly váš int
Samostatný čip Arduino / ATMega na prkénku: 8 kroků (s obrázky)
Samostatný čip Arduino / ATMega na Breadboardu: Pokud jste na tom stejně jako já, poté, co jsem dostal své Arduino a provedl konečné programování na svém prvním čipu, jsem ho chtěl stáhnout ze svého Arduino Duemilanove a dát ho na svůj vlastní obvod. Tím by se také uvolnilo mé Arduino pro budoucí projekty. Problém