Spisu treści:

Gra 3D4x: 3D 4x4x4 kółko i krzyżyk: 5 kroków (ze zdjęciami)
Gra 3D4x: 3D 4x4x4 kółko i krzyżyk: 5 kroków (ze zdjęciami)

Wideo: Gra 3D4x: 3D 4x4x4 kółko i krzyżyk: 5 kroków (ze zdjęciami)

Wideo: Gra 3D4x: 3D 4x4x4 kółko i krzyżyk: 5 kroków (ze zdjęciami)
Wideo: Qubic: tic-tac-toe 4x4x4 By Yuri Romanov - video hint by Helena Romanova 2024, Lipiec
Anonim
Image
Image
Gra 3D4x: kółko i krzyżyk 3D 4x4x4
Gra 3D4x: kółko i krzyżyk 3D 4x4x4
Gra 3D4x: kółko i krzyżyk 3D 4x4x4
Gra 3D4x: kółko i krzyżyk 3D 4x4x4
Gra 3D4x: kółko i krzyżyk 3D 4x4x4
Gra 3D4x: kółko i krzyżyk 3D 4x4x4

Masz dość grania w tę samą, starą, nudną, dwuwymiarową grę w kółko i krzyżyk? Cóż, mamy dla Ciebie rozwiązanie! Kółko i krzyżyk w 3 wymiarach!!! Dla 2 graczy, w tej kostce 4x4x4, zdobądź 4 diody LED z rzędu (w dowolnym kierunku) i wygrywasz! Zrobiłeś to. Grasz.

Krok 1: Zbierz komponenty i narzędzia

Zbierz komponenty i narzędzia
Zbierz komponenty i narzędzia

Najważniejszym elementem tego 3D Tic-Tac-Toe jest dioda LED. Wybraliśmy PL9823, który ma już zintegrowany kontroler w środku. Posiada cztery piny (wejście danych, zasilanie napięciowe, uziemienie, wyjście danych) i umożliwia łatwe adresowanie i sterowanie kolorem diody LED. Siatkę można zbudować na wiele różnych sposobów, ale dla nas była to najtańsza, najsolidniejsza i najbardziej estetyczna opcja.

Lista komponentów:

  • Arduino (użyliśmy Uno)
  • Diody LED PL9823 (co najmniej 64)
  • Drewniane patyczki do szaszłyków (długość 24cm)
  • Okablowanie (wykorzystaliśmy wnętrze starego kabla Ethernet)
  • Przyciski (stan chwilowy)
  • 7 rezystorów (220 omów)
  • Płytki prototypowe (1 do przycisków i odtwarzania, 1 do łatwego podłączenia panelu do Arduino)
  • Płyta styropianowa (~2x30x30cm do wykonania paneli)
  • Blok styropianowy (~7x25x25cm jako podstawa całej siatki)

Lista narzędzi:

  • Lutownica
  • Cyna lutownicza
  • Klej
  • Liniał z linijką
  • Szczypce
  • Narzędzia do ściągania izolacji
  • Nożyce do drutu
  • Nożyce
  • Znacznik
  • Długopis
  • Pinceta

Krok 2: Utwórz siatkę

Image
Image
Utwórz siatkę
Utwórz siatkę
Utwórz siatkę
Utwórz siatkę

4 panele 4x4 LED wykonujemy indywidualnie.

  • 00: Zdobądź styropian do wykonania układu panelu. Narysuj wzór. W tym przypadku zastosowaliśmy 6cm odstęp między diodami z 2cm na końcach.
  • 01: Włóż kołki LED do styropianu. Ważny! Upewnij się, że wstawiasz wszystkie diody LED w tej samej orientacji. W naszym przypadku wybraliśmy pin wyjściowy po lewej stronie.
  • 02: Teraz umieść drewniane patyczki do szaszłyków po obu stronach diod LED w rzędach, upewniając się, że wszystkie punkty są skierowane w tym samym kierunku. Przyklej sztyft do boków żarówek LED i pozostaw do wyschnięcia.
  • 03: Zrób to samo dla kolumn drewnianych patyczków do szaszłyków po obu stronach diod LED, upewniając się, że wszystkie punkty są skierowane w tym samym kierunku. Przyklej i pozostaw do wyschnięcia.
  • 04: Delikatnie usuń, poluzowując diody LED dookoła. Wyjmij panel i odwróć. Przyklej tył, aby był bezpieczniejszy.
  • 05: Gdy wszystko wyschnie, wygnij szpilki, aby ułatwić lutowanie i uniknąć skrzyżowania linii elektrycznych. Używamy pęsety i zginamy szpilkę blisko podstawy.
  • 06: Teraz przygotuj przewody. Użyliśmy starego kabla ethernetowego, który ma wewnątrz 4-skrętne przewody. Usuń izolację, uważając, aby nie przeciąć małych przewodów. Następnie odkręć, wybierz kolory odpowiadające różnym liniom i przytnij do odpowiedniej długości między diodami LED. Następnie zdejmij trochę izolacji z końcówek. Wybraliśmy uziemienie=zielony, Vdc=niebieski, wejście/wyjście danych=biały.
  • 07: Przylutuj! Jest dużo połączeń (64x4), więc uważaj, aby poprawnie lutować.
  • 08: Zdejmij panel i umieść na podstawie z pianki!

Krok 3: Stwórz Joystick

Stwórz Joystick
Stwórz Joystick
Stwórz Joystick
Stwórz Joystick

Wykorzystaliśmy tablicę prototypową, aby stworzyć joystick do nawigacji po siatce i dokonywania wyboru. Umieściliśmy zworki, rezystory i przyciski tworząc obwód (patrz schemat) definiujący kontroler kierunku (6 przycisków, po 1 dla każdego kierunku) oraz przycisk wyboru (wprowadza ruch gracza). 5V i masa są podłączone do odpowiednich portów w Arduino. Jako piny wejść analogowych i cyfrowych wybraliśmy odpowiednio porty Arduino A5 i 2.

Przycisk wyboru ma podstawowy schemat z rezystorem zapobiegającym sklejaniu. Polecenie kierunku opiera się na drabince rezystorowej, która pracuje jako układ dzielnika napięcia: napięcie na wejście analogowe zależy od wciśniętego przycisku i jest interpretowane przez Arduino jako jeden kierunek polecenia.

Krok 4: Napisz kod

Napisz kod
Napisz kod

Przesłaliśmy nasz kod do użycia:) Najpierw wykonaj połączenia elektryczne z Arduino. Obok Arduino umieściliśmy mini płytkę stykową, aby było trochę łatwiej. Podłączyliśmy Arduino „GND” i „5V” do 2 linii płytki chlebowej, gdzie następnie podłączyliśmy odpowiednie uziemienie i Vdc z każdego panelu. Dla wejścia i wyjścia danych wybraliśmy 4 różne piny Arduino, 13, 10, 7 i 4 dla każdego z paneli. Diody LED PL9823 mogą być indywidualnie adresowane przez kolejność numeryczną diod LED w szeregu. Na przykład, jeśli chcesz ustawić pierwszą diodę LED na określony kolor, zaadresuj diodę LED[0]. Dla 16. diody LED adres diody LED[15]. Teraz jesteś gotowy do kodowania i zabawy z pięknymi światłami! Poniżej znajduje się ogólne wyjaśnienie kodu gry 3D w kółko i krzyżyk.

Kodeks gry 3D4x

Korzystamy z biblioteki fastled.h, która pozwala nam zarządzać mikrokontrolowanymi diodami LED.

Kostka jest zapamiętywana wirtualnie w tablicy 3D Integer „TTTMap”, gdzie każdy element może być w 1 z 5 stanów zgodnie z odpowiednim światłem jest własnością: 0= brak gracza, 1= gracz 1, 2= gracz 2, 3= gracz 1 w zwycięskiej kombinacji, a 3 = gracz 2 w zwycięskiej kombinacji. W celu odwzorowania elementów wirtualnego sześcianu w TTTMap na rzeczywiste diody LED, wykorzystywane są tablice liczb całkowitych LEDMap0, LEDMap1, LEDMap2, LEDMap3.

Funkcja „setup” inicjuje porty Arduino podłączone do panelu, inicjuje wszystkie diody LED na „czarny” i inicjuje elementy tablicy TTTMap na 0.

Funkcja „pętla” uruchamia funkcje „ReadButtonInput()”, „SendLED()” oraz, w przypadku wygranej jednego gracza, funkcję „VictoryAnimation()”. Pierwsza funkcja odczytuje wejście analogowe polecenia kierunku i wejście cyfrowe przycisku wyboru. Zmienne logiczne „ButtonPushed” i „SelectPushed” są używane w celu uniknięcia powtarzania ruchu z prędkością pętli, gdy przycisk jest przytrzymywany. Funkcja „SendLED()” odświeża stany diod LED poprzez wysłanie szeregowego sygnału sterującego zgodnie z danymi w TTTMap. Podstawową funkcją jest „CheckVictory()”, która jest wywoływana przez „ReadButtonInput()” za każdym razem, gdy naciskany jest przycisk wyboru. Ta funkcja sprawdza, czy wybrany punkt w przestrzeni tworzy zwycięską kombinację z otaczającymi go szpilkami. W przypadku zwycięskiej kombinacji punkty w TTTMap są podpisane cyfrą 3 lub 4, w zależności od gracza, który wygrywa, i działa ekscytująca „VictoryAnimation()”!

Aby zagrać ponownie, po prostu naciśnij przycisk resetowania na Arduino:)

Krok 5: Graj ze znajomymi

Graj ze znajomymi!
Graj ze znajomymi!
Graj ze znajomymi!
Graj ze znajomymi!
Graj ze znajomymi!
Graj ze znajomymi!

Żadne wyjaśnienie nie jest potrzebne… CIESZ SIĘ!

Zalecana: