Spisu treści:
- Krok 1: Odwaga
- Krok 2: Montaż PCB
- Krok 3: Czas na programowanie
- Krok 4: O samym programie
- Krok 5: Dostosowywanie swojego dzieła
Wideo: Wizytówka/konsola do gier: ATtiny85 i ekran OLED: 5 kroków (ze zdjęciami)
2024 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2024-01-30 11:31
Cześć wszystkim
Dzisiaj pokażę Ci, jak zbudować własną wizytówkę/konsolę do gier/cokolwiek sobie wyobrazisz, z podświetlanym wyświetlaczem I2C OLED i mikroprocesorem ATtiny85. W tym Instruktażu opowiem Ci, jak faktycznie działa zaprojektowana przeze mnie płytka PCB, jak ją zbudować i co możesz zrobić z tą funkcjonalnością. Jeśli masz już ekran I2C podłączony do ATtiny85, ten Instruktaż może być nadal pomocny, jeśli próbujesz wyświetlić obrazy lub chcesz tworzyć menu, grę i nie tylko.
Prawdopodobnie zastanawiasz się, co to właściwie jest. To tylko prosta płytka drukowana z wbudowaną baterią, ekranem, przyciskami, włącznikiem/wyłącznikiem i procesorem. Pomyśl o tym jak o małym Gameboyu, którego możesz łatwo zaprogramować do wykonywania różnych rzeczy. Naprzód!
Krok 1: Odwaga
Jeśli jeszcze tego nie zrobiłeś, gorąco polecam założenie konta na circuits.io. Umożliwi to dostosowanie mojego projektu do własnych potrzeb.
W tym kroku wyjaśnię, w jaki sposób możesz zdobyć jedną z tych płytek drukowanych (PCB). Zrobiłem swoją płytkę drukowaną w circuits.io, świetnym narzędziu online, którego można używać do tworzenia schematów obwodów i płytek drukowanych. Możesz zobaczyć projekt tutaj:
Jeśli jesteś zainteresowany zdobyciem PCB, możesz zamówić tyle, ile chcesz w OSH Park, korzystając z tego linku:
Zdobycie desek zajmuje trochę czasu (1-3 tygodnie), ale zaufaj mi. To jest tego warte! Do zbudowania własnej wielofunkcyjnej karty potrzebne będą następujące części:
- ATtiny85 w pakiecie SOIC-8. To mózg naszego projektu, który kontroluje WSZYSTKO.
- Ekran OLED I2C 128x64 pikseli:
- 2 rezystory 22 kΩ. To są rezystory pullup dla przycisków.
- Uchwyt CR2032 do montażu powierzchniowego:
- Bateria pastylkowa CR2032. Ta mała bateria może zasilać obwód przez dłuższy czas.
- Przełącznik suwakowy 3-pinowy. To jest wyłącznik zasilania!
- Kobiece nagłówki. Możesz ich użyć do zaprogramowania ATtiny85, gdy jest w obwodzie!
- Przyciski 6mm:
- Płytka drukowana (możesz ją zamówić, korzystając z powyższego linku)
Narzędzia:
- Lutownica (z cienką końcówką)
- Lutować
- strzyżenia ołowiu
Do programowania ATtiny85:
- 6 przewodów połączeniowych z męskiego na męskie
- Jeden kondensator 10 mikrofaradów
- Arduino Uno lub inny mikrokontroler oparty na ATmega
Krok 2: Montaż PCB
To naprawdę proste. Wystarczy przylutować wszystkie elementy do odpowiednich miejsc, jak zaznaczono na płytce. Niektóre z tych ekranów OLED są dostępne w różnych rozmiarach, więc jeśli twój jest za duży dla płyty, możesz zawiesić go na górze, jak na powyższym obrazku, i zgiąć nagłówki po drugiej stronie i przylutować je do otworów, w których mieli odejść. Zobacz drugi obraz, jeśli jesteś zdezorientowany.
Kilka pomocnych wskazówek:
- Mała kropka na ATtiny musi być zorientowana tak, aby była blisko przełącznika suwakowego, w przeciwnym razie piny będą w złej kolejności.
- Liczy się orientacja uchwytu baterii. Koniec uchwytu z wytrawionym plusem musi znajdować się na dolnej podkładce (w kierunku rezystora).
- Orientacja przełączników, przycisków, nagłówków i rezystorów nie ma znaczenia
Jeśli masz jakieś pytania, napisz do mnie na info[at]coniferapps.com
Krok 3: Czas na programowanie
Mój zestaw ATtiny / screen działa przy użyciu następującego Instructable: https://www.instructables.com/id/ATTiny85-connects-to-I2C-OLED-display-Great-Things/. W rzeczywistości używam nawet biblioteki, którą AndyB2 zmodyfikował we własnych szkicach.
Sposób, w jaki będziemy programować ATtiny, to Arduino Uno. Poniższa instrukcja pokazuje, jak to zrobić: https://www.instructables.com/id/Program-an-ATtiny-with-Arduino/. Jeśli jeszcze tego nie zauważyłeś, wszystkie wymagane piny są pomocne w wyłamaniu na płytce drukowanej z numerami pinów oznaczonymi z tyłu.
Jeśli chcesz zacząć od podstawowego przykładu, prześlij szkic połączony powyżej na swoją kartę. Upewnij się, że przełącznik zasilania jest przesunięty w prawo, zanim to zrobisz. Nie chcesz, aby bateria i Uno jednocześnie dostarczały napięcie! W tym folderze znajduje się kilka plików. Będę o tym mówił w następnym kroku, ale większość plików nagłówkowych zawiera szesnastkowe reprezentacje monochromatycznych obrazów bitmapowych. Pliki.bmp to te obrazy, o których właśnie wspomniałem - jak widać, są czarno-białe i mają dokładnie 128x64 piksele. Nie są one wgrywane do mikrokontrolera, ale pomyślałem, że dołączę je w celach informacyjnych.
Krok 4: O samym programie
Szkic, który przesłałem w poprzednim kroku, jest bardzo prostym przykładem tego, jak możesz zaimplementować menu. Kliknięcie każdego z lewego i prawego przycisku powoduje przełączenie licznika w programie. Następnie wywoływana jest funkcja, której ATtiny sprawdza stan tego licznika i na podstawie numeru licznika ATtiny rysuje na ekranie obraz aktualnie wybranej opcji menu. Każda z różnych wybranych komórek menu jest własnym obrazem. Jeśli naciśnięty zostanie górny przycisk, ATtiny ponownie sprawdza stan licznika, aby określić, jaki szczegółowy ekran wyświetlić. Podczas wyświetlania tych szczegółowych ekranów ATtiny stale sprawdza, czy został naciśnięty jakikolwiek przycisk. Po wykryciu naciśnięcia przycisku funkcja rysująca menu jest ponownie wywoływana, a aktualny stan menu jest rysowany na ekranie, zabierając nas z powrotem do menu. Brzmi to trochę zniechęcająco, jeśli dopiero zaczynasz programować, ale obiecuję, że gdy spojrzysz na kod, nabierze to większego sensu.
Każdy z ekranów szczegółowych jest również własnym obrazem.
Jeśli nie zauważyłeś, opcja zaskoczenia nic nie robi. Dojdziemy do tego w następnym kroku:).
Krok 5: Dostosowywanie swojego dzieła
Teraz, gdy już wiesz, co zrobiłem, nadszedł czas, abyś spersonalizował kartę własnymi informacjami. Ta biblioteka, którą dołączyłem, ma funkcję rysowania tekstu na ekranie, ale zdecydowanie polecam rozwiązanie oparte na obrazach, ponieważ wygląda ono DUŻO lepiej. Pierwotnie zamierzałem dodać zdjęcia do programu jako część tego instruktażu, ale jest to wystarczająco długie, aby zagwarantować jego własną instruktaż. Możesz go zobaczyć tutaj:
Teraz, gdy wiesz, jak dodawać zdjęcia, możesz zrobić wiele rzeczy, które możesz wykonać na karcie. Możesz użyć moich menu i ekranu pomocy, a także dodać własne informacje kontaktowe. Możesz nawet zrobić małą grę dla opcji „niespodzianka”. Dość proste byłoby przesuwanie bardzo małego duszka 10x10 po ekranie za pomocą przycisków i sprawdzanie, czy nie koliduje z innym duszkiem. Korzystając z tej samej koncepcji, możesz stworzyć klona flappy! Jeśli coś robisz, opublikuj zdjęcie/film/plik w komentarzach!
Jeszcze jeden mały punkt, o którym zapomniałem wspomnieć. Jeśli chodzi o pamięć masową, ATtiny85 nie ma jej zbyt wiele. W przypadku programów jest to około 8kb. Mój obecny szkic z 5 zdjęciami i biblioteką wyświetlaczy OLED zajmuje około 7 z tych 8kb. Każda gra, którą stworzysz, będzie musiała zmieścić się w tym stosunkowo niewielkim marginesie, więc będzie to zabawne wyzwanie:).
Dziękuję za wysłuchanie mnie, a jeśli masz jakieś pytania, nie wahaj się napisać do mnie na info[at]coniferapps.com (zastąp [at] @). Zagłosuj na mnie w konkursie Autodesk Circuits! Mam nadzieję, że wkrótce będziesz miał swoją własną wizytówkę/grę do pokazania!
Zalecana:
Przenośna konsola do gier DIY Raspberry Pi Zero: 6 kroków (ze zdjęciami)
Przenośna konsola do gier DIY Raspberry Pi Zero: W tym projekcie pokażę, jak użyłem Raspberry Pi Zero, akumulatorów NiMH, domowego obwodu zabezpieczającego przed nadmiernym rozładowaniem, tylnego wyświetlacza LCD i wzmacniacza audio, aby stworzyć przenośną konsolę do gier, która może grać gry retro. Zacznijmy
Przenośna konsola do gier ESP32: 21 kroków (ze zdjęciami)
Przenośna konsola do gier ESP32: Ta instrukcja pokazuje, jak używać ESP32 i ATtiny861 do zbudowania konsoli do gier NES
1963 Konsola do gier Pi Tourer: 9 kroków (ze zdjęciami)
Konsola do gier Pi Tourer z 1963 r.: Jest to radio samochodowe Sky Tourer z 1963 r., Które przerobiłem na poręczną przenośną konsolę do gier w stylu retro. Ma wbudowane Raspberry Pi 3, z 6 przyciskami arkadowymi i joystickiem kontrolującym te zabytkowe sprite RetroPie za pomocą płyty kontrolera Picade. Ten
Przenośna konsola do gier - Klon Arduboy: 6 kroków (ze zdjęciami)
Przenośna konsola do gier | Arduboy Clone: Kilka miesięcy temu natknąłem się na Arduboy, który według oficjalnej strony internetowej jest miniaturową 8-bitową platformą gier, która ułatwia naukę, udostępnianie i granie w gry online. Jest to platforma open source. Gry na Arduboy są tworzone przez użytkownika
Kieszonkowa konsola do gier Arduino + A-Maze - Gra Maze: 6 kroków (ze zdjęciami)
Kieszonkowa konsola do gier Arduino + A-Maze - Maze Game: Witam w mojej pierwszej instrukcji! Projekt, którym chcę się dzisiaj z wami podzielić, to gra Arduino Maze, która stała się konsolą kieszonkową tak samo wydajną jak Arduboy i podobne konsole oparte na Arduino. Może być flashowany z moimi (lub twoimi) przyszłymi grami dzięki expo