Obsah:

Vizitka/herní konzole: ATtiny85 a OLED obrazovka: 5 kroků (s obrázky)
Vizitka/herní konzole: ATtiny85 a OLED obrazovka: 5 kroků (s obrázky)
Anonim
Image
Image
Vnitřnosti
Vnitřnosti

Ahoj všichni

Dnes vám ukážu, jak si můžete vytvořit vlastní vizitku/herní konzoli/cokoli si jen dokážete představit, že má podsvícený OLED displej I2C a mikroprocesor ATtiny85. V tomto Instructable vám řeknu, jak vlastně funguje PCB, který jsem navrhl, jak jej můžete postavit a co můžete s touto funkcí dělat. Pokud již máte obrazovku I2C připojenou k ATtiny85, tento Instructable může být stále užitečný, pokud se pokoušíte zobrazovat obrázky nebo chcete vytvářet nabídky, hry a další.

Pravděpodobně si říkáte, co to vlastně je. Je to jen jednoduchá deska s plošnými spoji s integrovanou baterií, obrazovkou, tlačítky, vypínačem a procesorovou jednotkou. Přemýšlejte o tom jako o malém Gameboyovi, který můžete snadno naprogramovat tak, aby dělal různé věci. Kupředu!

Krok 1: Vnitřnosti

Vnitřnosti
Vnitřnosti
Vnitřnosti
Vnitřnosti

Pokud jste to ještě neudělali, vřele doporučuji, abyste si vytvořili účet na obvodech.io. To vám umožní přizpůsobit můj design tak, aby vyhovoval vašim potřebám.

V tomto kroku vysvětlím, jak se vlastně můžete dostat do rukou jedné z těchto desek s plošnými spoji (PCB). Vytvořil jsem svou desku plošných spojů v obvodech.io, skvělý online nástroj, který můžete použít k vytváření schémat obvodů a desek plošných spojů. Design si můžete prohlédnout zde:

Pokud máte zájem získat desku plošných spojů, můžete si z OSH Park objednat tolik, kolik chcete, pomocí tohoto odkazu:

Získání desek chvíli trvá (1–3 týdny), ale věřte mi. Stojí to za to! K sestavení vlastní multifunkční karty budete potřebovat následující součásti:

  • ATtiny85 v balíčku SOIC-8. To je mozek našeho projektu, který řídí VŠECHNO.
  • Obrazovka OLED I2C 128x64 pixelů:
  • 2 22k ohmové odpory. Jedná se o vytahovací odpory pro tlačítka.
  • Povrchový držák CR2032:
  • Kruhová baterie CR2032. Tato malá baterie může napájet obvod poměrně dlouho.
  • 3pólový posuvný přepínač. Toto je vypínač!
  • Ženské hlavičky. Můžete je použít k programování ATtiny85, když je v obvodu!
  • 6mm tlačítka:
  • Deska s plošnými spoji (můžete si ji objednat pomocí výše uvedeného odkazu

Nástroje:

  • Páječka (s jemným hrotem)
  • Pájka
  • Ořezávače olova

Pro programování ATtiny85:

  • 6 propojovacích kabelů od muže k muži
  • Jeden 10 mikrofaradový kondenzátor
  • Arduino Uno nebo jiný mikrokontrolér na bázi ATmega

Krok 2: Sestavení DPS

Sestavení DPS
Sestavení DPS
Sestavení DPS
Sestavení DPS

To je opravdu docela snadné. Vše, co musíte udělat, je pájet všechny součásti na jejich příslušná místa, jak je uvedeno na desce. Některé z těchto OLED obrazovek se dodávají v různých velikostech, takže pokud je ta vaše na desku příliš velká, můžete ji nechat viset přes vrchol jako na obrázku výše a ohnout se nad záhlavími na druhé straně a pájet je do otvorů, kde měli jít. Pokud jste zmatení, podívejte se na druhý obrázek.

Několik užitečných rad:

  • Drobná tečka na ATtiny musí být orientována tak, aby byla blízko posuvného přepínače, jinak budete mít kolíky ve špatném pořadí.
  • Orientace držáku baterie je důležitá. Konec držáku s vyleptaným plusem musí být na spodní podložce (směřující k rezistoru).
  • Na orientaci přepínačů, tlačítek, záhlaví a rezistorů nezáleží

Pokud máte nějaké dotazy, napište mi na info [at] coniferapps.com

Krok 3: Čas začít programovat

Kombinace ATtiny/obrazovky jsem začala používat pomocí následujícího Instructable: https://www.instructables.com/id/ATTiny85-connects-to-I2C-OLED-display-Great-Things/. Vlastně dokonce používám knihovnu, kterou AndyB2 upravil ve svých vlastních skicách.

Programovat ATtiny budeme přes Arduino Uno. Následující instruktáž vám ukáže, jak to udělat: https://www.instructables.com/id/Program-an-ATtiny-with-Arduino/. Pokud jste si toho ještě nevšimli, všechny požadované piny jsou nápomocně vylomeny na desce plošných spojů s čísly pinů označenými na zadní straně.

Pokud chcete začít se základním příkladem, nahrajte na svou kartu odkaz propojený výše. Než to uděláte, ujistěte se, že je vypínač přesunut doprava. Nechcete, aby baterie a Uno dodávaly současně napětí! V této složce je spousta souborů. V příštím kroku o tom budu mluvit více, ale většina souborů záhlaví obsahuje hexadecimální reprezentace monochromatických bitmapových obrázků. Soubory.bmp jsou tyto obrázky, které jsem právě zmínil - jak vidíte, jsou černobílé a přesně 128 x 64 pixelů. Ty nejsou nahrány do mikrokontroléru, ale myslel jsem si, že je zahrnu pro referenci.

Krok 4: O samotném programu

Skica, kterou jsem vám nahrál v předchozím kroku, je velmi základním příkladem toho, jak byste mohli implementovat nabídku. Když kliknete na každé levé a pravé tlačítko, přepne se čítač v programu. Potom se zavolá funkce, která má ATtiny zkontrolovat stav tohoto čítače, a na základě čísla čítače ATtiny nakreslí obrázek aktuálně vybrané možnosti nabídky na obrazovce. Každá z různých vybraných buněk nabídky je svůj vlastní obrázek. Pokud je stisknuto horní tlačítko, ATtiny znovu zkontroluje stav čítače a určí, jakou obrazovku podrobností zobrazit. Zatímco se zobrazují tyto podrobné obrazovky, ATtiny neustále kontroluje, zda není stisknuto nějaké tlačítko. Jakmile detekuje stisknutí tlačítka, funkce, která vykreslí nabídky, se znovu vyvolá a na obrazovce se vykreslí aktuální stav nabídky, čímž se vrátíme zpět do nabídky. Zní to poněkud skličujícím způsobem, pokud jste v programování nováčci, ale slibuji vám, že jakmile se podíváte na kód, bude to dávat větší smysl.

Každá z podrobných obrazovek je také svým vlastním obrázkem.

Pokud jste si nevšimli, možnost překvapení nic nedělá. K tomu se dostaneme v dalším kroku:).

Krok 5: Přizpůsobení vaší tvorby

Nyní, když jste viděli, co jsem udělal, je načase, abyste si kartu přizpůsobili svými vlastními informacemi. Tato knihovna, kterou jsem zahrnoval, má funkci kreslení textu na obrazovku, ale vřele doporučuji použít řešení založené výhradně na obrázcích, protože vypadá mnohem lépe. Původně jsem chtěl přidat fotografie do programové části tohoto instruktážního programu, ale je dostatečně dlouhý, aby zaručil jeho vlastní instruktážní program. Můžete si jej prohlédnout zde:

Nyní, když víte, jak přidat fotografie, existuje spousta věcí, které můžete na kartě udělat. Můžete použít mé nabídky a obrazovku nápovědy a jednoduše přidat své vlastní kontaktní informace. Dalo by se dokonce udělat malou hru pro možnost „překvapení“. Bylo by docela jednoduché přesunout velmi malý sprite 10x10 po obrazovce pomocí tlačítek a zkontrolovat, zda koliduje s jiným sprite. Pomocí stejného konceptu byste mohli vytvořit klapkový ptačí klon! Pokud něco děláte, pošlete prosím jeho fotografii/video/soubor do komentářů!

Ještě jeden malý bod, který jsem zapomněl zmínit. Pokud jde o úložiště, ATtiny85 toho moc nemá. U programů je to asi 8 kB. Moje aktuální skica s 5 obrázky a knihovnou OLED displejů zabírá asi 7 z těchto 8 kB. Každá hra, kterou uděláte, se bude muset vejít do tohoto relativně malého rozpětí, takže to bude zábavná výzva:).

Děkuji, že jste mě vyslechli a pokud máte nějaké dotazy, neváhejte mi poslat e -mail na adresu info [at] coniferapps.com ([at] nahraďte @). Hlasujte prosím pro mě v soutěži Autodesk Circuits! Naštěstí se brzy budete moci pochlubit vlastní vizitkou/hrou!

Doporučuje: