Spisu treści:
- Krok 1: Prototypowanie płyt chlebowych
- Krok 2: Potrzebne części
- Krok 3: Okablowanie/schemat płytki do krojenia chleba
- Krok 4: Kod źródłowy
- Krok 5: Zobacz to w akcji
- Krok 6: Przypadek i miniaturyzacja
Wideo: Kieszonkowa konsola do gier Arduino + A-Maze - Gra Maze: 6 kroków (ze zdjęciami)
2024 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2024-01-30 11:31
Witam na mojej pierwszej instrukcji
Projekt, którym chcę się dzisiaj z Wami podzielić, to gra w labirynt Arduino, która stała się konsolą kieszonkową równie wydajną jak Arduboy i podobne konsole oparte na Arduino. Może być flashowany z moimi (lub twoimi) przyszłymi grami dzięki odsłonięciu nagłówka ICSP.
Kilka miesięcy temu wpadłem na pomysł, aby zbudować grę w labirynty na Arduino, ale bez zakodowanego zestawu labiryntów. Powinien być w stanie wygenerować nowy labirynt dla każdego poziomu, na którym grasz, więc nigdy więcej nie zobaczysz tego samego labiryntu:)
Zakodowanie tego było pewnym wyzwaniem, ponieważ Arduino jest ograniczone w pamięci RAM, a potem znalazłem kilka przykładów, jak można to zrobić za pomocą prostego algorytmu Bo-Taoshi.
Kod, którego użyłem jako punkt wyjścia, wziąłem od SANUKI UDONA i jego projektu JAK ZROBIĆ GENERATOR LABIRYNTU ZA POMOCĄ ATTINY13A
Krok 1: Prototypowanie płyt chlebowych
Moim punktem wyjścia była mała płytka stykowa z tylko 4 przyciskami podłączonymi do poruszania się po labiryncie, ale później, kiedy zdecydowałem, że powinna to być konsola do gier, dodałem kilka dodatkowych przycisków. Na większej płytce prototypowej widać jeszcze 2 przyciski, a później dodałem trzeci, który będzie używany jako przycisk start/pauza/menu
Krok 2: Potrzebne części
- Układ Arduino pro mini / Arduino Uno / Atmega328P
- 28-pinowe gniazdo DIP (opcjonalnie)
- Wyświetlacz OLED SSD1306
- Głośnik piezoelektryczny
- Przyciski - 7 sztuk
- Uchwyty na baterie pastylkowe
- Przełącznik
- Przewody
- Płytka prototypowa (60x40mm)
Krok 3: Okablowanie/schemat płytki do krojenia chleba
Podłączanie komponentów jak pokazano na powyższym schemacie.
Guziki:
- Przycisk GÓRA: pin Arduino 7
- Przycisk DÓŁ: pin Arduino 6
- LEWY przycisk: pin Arduino 9
- PRAWY przycisk: pin Arduino 8
- Przycisk: pin Arduino 5
- Przycisk B: pin Arduino 4
- Przycisk START: pin Arduino 2
Ekran OLED SSD1306:
- SCL: pin Arduino A5
- SDA: pin Arduino A4
- VCC: Arduino VCC
- GND: Arduino GND
Brzęczyk:
- Sygnał brzęczyka: pin Arduino 3
- Masa brzęczyka: Arduino GND
Krok 4: Kod źródłowy
Kod źródłowy gry A-Maze można znaleźć tutaj:
Otwórz w Arduino IDE i wgraj na swoją płytkę lub użyj programatora ISP, aby zaprogramować swój układ.
Polecam używać USBTIny ISP, nigdy nie miałem z tym problemów:) ale możesz też użyć zwykłego Arduino do zaprogramowania swojego układu.
W moim przypadku nie użyłem zewnętrznego kryształu, więc mój układ Atmega328p działa na wewnętrznym oscylatorze, który jest 8MhZ.
Aby uzyskać więcej informacji, odwiedź ten link:
Krok 5: Zobacz to w akcji
Krok 6: Przypadek i miniaturyzacja
Jeśli chcesz, aby ten projekt był trwały, z ładnie wyglądającym etui, oto proste etui do druku 3D, które zaprojektowałem:
Na powyższych zdjęciach widać, jak wszystkie komponenty są rozłożone na prototypowej płytce drukowanej 4x6.
Większość okablowania przycisków przechodzi pod uchwytami baterii, postaraj się, aby było tak proste, jak to możliwe, aby uchwyty baterii mogły być stosunkowo wyrównane nad płytą z przewodami pomiędzy nimi.
Polecam też wykonać inne okablowanie pod ekranem, gdyż nóżki chipa Atmegi są przylutowane i wyeksponowane pod ekranem. Po zakończeniu lutowania umieść pod ekranem taśmę izolacyjną, aby zapobiec zwarciom itp.
Nagłówek ICSP jest opcjonalny, a jeśli zdecydujesz się go nie eksponować, znacznie ułatwi to montaż, 6 połączeń mniej do zrobienia, ale najpierw zaprogramuj układ przed wlutowaniem lub użyj 28-pinowego gniazda DIP, aby móc łatwo wyjmij chip do programowania.
Drugie miejsce w konkursie kieszonkowym
Zalecana:
DIY 37 Leds Arduino Roulette Game: 3 kroki (ze zdjęciami)
DIY 37 Leds Arduino Roulette Game: Ruletka to gra kasynowa nazwana na cześć francuskiego słowa oznaczającego małe koło
Kask ochronny Covid, część 1: wprowadzenie do obwodów Tinkercad!: 20 kroków (ze zdjęciami)
Kask ochronny Covid, część 1: wprowadzenie do obwodów Tinkercad!: Witaj, przyjacielu! W tej dwuczęściowej serii nauczymy się korzystać z obwodów Tinkercad - zabawnego, potężnego i edukacyjnego narzędzia do nauki działania obwodów! Jednym z najlepszych sposobów uczenia się jest robienie. Dlatego najpierw zaprojektujemy nasz własny projekt: th
Radio internetowe BOSEBerry Pi: 4 kroki (ze zdjęciami)
Radio internetowe BOSEBerry Pi: Uwielbiam słuchać radia! Używałem radia DAB w moim domu, ale okazało się, że odbiór był nieco nierówny, a dźwięk ciągle się załamywał, więc postanowiłem zbudować własne radio internetowe. Mam silny sygnał Wi-Fi w całym domu, a cyfrowy bro
Zegar lokalizacyjny „Weasley” z 4 wskazówkami: 11 kroków (ze zdjęciami)
Zegar lokalizacji „Weasley” z czterema wskazówkami: Tak więc, mając Raspberry Pi, które od jakiegoś czasu się bawiło, chciałem znaleźć fajny projekt, który pozwoli mi go jak najlepiej wykorzystać. Natknąłem się na ten wspaniały instruktażowy zegar lokalizacji Weasley'a autorstwa ppeters0502 i pomyślałem, że
Profesjonalna stacja pogodowa wykorzystująca ESP8266 i ESP32 DIY: 9 kroków (ze zdjęciami)
Profesjonalna stacja pogodowa przy użyciu ESP8266 i ESP32 DIY: LineaMeteoStazione to kompletna stacja pogodowa, która może być połączona z profesjonalnymi czujnikami firmy Sensirion, a także z niektórymi komponentami Davis Instrument (deszczomierz, anemometr) Projekt jest przeznaczony do samodzielnej stacji pogodowej, ale wymaga tylko