Spisu treści:
- Krok 1: Lista zawartości dla HackerBox 0050
- Krok 2: Płytka drukowana HB50
- Krok 3: Uruchom płytę HB50
- Krok 4: Przyciski, brzęczyki i diody LED, OH MY
- Krok 5: Kolorowy wyświetlacz TFT LCD ILI9341 QVGA
- Krok 6: Wejście użytkownika na ekranie dotykowym
- Krok 7: Klawiatura CardKB I2C
- Krok 8:
Wideo: HackerBox 0050: 8 kroków
2024 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2024-01-30 11:29
Pozdrowienia dla hakerów HackerBox na całym świecie! W przypadku HackerBox 0050 montujemy i programujemy płytkę procesora wbudowanego HB50. HB50 obsługuje eksperymenty z mikrokontrolerami ESP32, wbudowanym Wi-Fi IoT, dźwiękiem bit bang, diodami LED RGB, kolorowymi wyświetlaczami TFT LCD, wejściami ekranu dotykowego, Bluetooth i innymi. HackerBox 0050 bada również małe rozwiązanie klawiatury dla dowolnego wbudowanego projektu, interfejsów I2C, budżetowania mocy i automatów komórkowych.
Ten przewodnik zawiera informacje, jak zacząć korzystać z HackerBox 0050, który można kupić tutaj do wyczerpania zapasów. Jeśli chcesz otrzymywać co miesiąc taki HackerBox bezpośrednio do swojej skrzynki pocztowej, zasubskrybuj na HackerBoxes.com i dołącz do rewolucji!
HackerBoxes to miesięczny abonament dla hakerów sprzętowych oraz entuzjastów elektroniki i technologii komputerowych. Dołącz do nas w życiu HACK LIFE.
Krok 1: Lista zawartości dla HackerBox 0050
- Ekskluzywna płytka drukowana HB50
- Dwurdzeniowy moduł WiFi ESP-WROOM-32
- Kolorowy wyświetlacz TFT LCD QVGA o przekątnej 2,4 cala
- Zintegrowany ekran dotykowy z rysikiem
- Sześć diod LED RGB WS2812B
- Sześć dotykowych przycisków do montażu powierzchniowego
- Brzęczyk piezoelektryczny 12mm SMD
- Regulator liniowy AMS1117 3.3V SOT223
- Kątowy 40-pinowy nagłówek odrywający
- Dwa kondensatory tantalowe 22uF 1206 SMD
- Dwa rezystory 10K Ohm 0805 SMD
- Mini klawiatura CardKB
- Kabel Grove do żeńskiego DuPont Breakout
- Moduł szeregowy USB CP2102
- DuPont bluzy damskie-damskie 10cm
- Naklejka na płytkę drukowaną Hokusai Great Wave
- Ekskluzywna naklejka HackerBox WireHead
- Ekskluzywna moneta wyzwania HackerBox 50
Kilka innych rzeczy, które będą pomocne:
- Lutownica, lut i podstawowe narzędzia lutownicze
- Komputer do uruchamiania narzędzi programowych
Co najważniejsze, będziesz potrzebować poczucia przygody, ducha hakera, cierpliwości i ciekawości. Budowanie i eksperymentowanie z elektroniką, choć bardzo satysfakcjonujące, może być trudne, trudne, a czasem nawet frustrujące. Celem jest postęp, a nie doskonałość. Kiedy wytrwasz i cieszysz się przygodą, to hobby może przynieść wiele satysfakcji. Zrób każdy krok powoli, pamiętaj o szczegółach i nie bój się prosić o pomoc.
W FAQ HackerBoxes znajduje się mnóstwo informacji dla obecnych i przyszłych członków. Odpowiedzi na prawie wszystkie nietechniczne e-maile, które otrzymujemy, są już tam udzielane, więc naprawdę dziękujemy za poświęcenie kilku minut na przeczytanie FAQ.
Krok 2: Płytka drukowana HB50
Aby upamiętnić numer HackerBox 0050, stworzyliśmy zaktualizowaną wersję najpopularniejszej płytki drukowanej HackerBox zgodnie z popularnym zapotrzebowaniem. Zestaw odznak HackerBox 0020 Summer Camp wyprzedał się na DEF CON 25 w mniej niż dwie godziny. Pliki PCB są od tego czasu często wymagane. Plansza była co najmniej kilkakrotnie przedrukowywana przez osoby trzecie. Projekt zainspirował kilka innych odznak i osadzonych projektów IoT, o których wiemy, i miejmy nadzieję, że kilka innych, o których nie wiemy.
Aktualizacje znalezione w nowym zestawie PCB HB50 obejmują zamianę ESP-32 DEVkitC na bardziej kompaktowy moduł ESP-WROOM-32. Pięć pojemnościowych przycisków dotykowych zostało zastąpionych mechanicznymi przyciskami dotykowymi. Pięć diod LED RGB WS2812, które były w białych opakowaniach, zostało zwiększonych do sześciu i są teraz w czarnych opakowaniach. Brzęczyk piezoelektryczny został zastąpiony bardziej kompaktową wersją do montażu powierzchniowego. Zasilacz został uproszczony. Kolorowy wyświetlacz TFT został zwiększony z 2,2 cala do 2,4 cala. Płytka drukowana jest bardziej kompaktowa i ma nawet kilka wyprowadzonych pinów IO dla przyjemności hakowania. Od czasów HackerBox 20 dostępnych jest o wiele więcej projektów, przykładów i kodu dla ESP32, więc przygotujmy się na awanturę…
Cechy:
- Dwurdzeniowy procesor ESP32 160 MHz
- Kolorowy wyświetlacz TFT LCD o przekątnej 2,4 cala QVGA
- Wi-Fi 802.11 b/g/n/d/e/i/k/r
- Bluetooth LE 5.0
- Pięć przycisków dotykowych (+ jeden do resetowania)
- Sześć diod LED RGB WS2812
- Brzęczyk piezoelektryczny
- Regulator liniowy 3.3V
- Nagłówek rozszerzenia
Podobnie jak jego poprzednik, HB50 może być noszony na smyczy, używany jako podręczny, montowany na ścianie lub rozmieszczony praktycznie w dowolnym miejscu w niezliczonych bezprzewodowych i kolorowych zastosowaniach.
Krok 3: Uruchom płytę HB50
Aby zminimalizować lub przynajmniej wyizolować błędy, sugerujemy rozpoczęcie montażu od wypełnienia płytki PCB HB50 tylko minimum elementów, które są wymagane do zaprogramowania ESP32. To minimalne opłacalne podejście jest opisane w następujących krokach:
- Obejrzyj ten film na temat lutowania modułów kasetonowych.
- Przylutuj moduł ESP-WROOM-32 do płytki drukowanej. Nie spiesz się. Nie martw się o centralną podkładkę uziemiającą pod modułem. Może być lutowany tylko przez rozpływ i służy tylko do dodatkowego sprzężenia termicznego.
- Użyj multimetru, aby upewnić się, że nie ma zwarcia między 3V3 a GND. Jeśli jest zwarcie, musi zostać zidentyfikowane i usunięte przed podłączeniem zasilania do planszy, w przeciwnym razie dymny potwór może wyjść.
- Przylutuj dwa rezystory 10K tuż nad przyciskami EN i IO0.
- Przylutuj przyciski EN i IO0. Pozostałe cztery przyciski można na razie pominąć.
- Oderwij 16-stykowy pasek nagłówka. Włóż go od strony procesora PCB tak, aby styki były skierowane do najbliższej krawędzi PCB. Następnie przylutuj główkę na miejsce od strony przycisku do PCB.
- Sprawdź ponownie, czy nie ma zwarć między 3V3 a GND.
- Użyj czterech przewodów połączeniowych DuPont, aby podłączyć moduł CP2102, jak pokazano. Zauważ, że tymczasowo używamy źródła zasilania 3V3, ponieważ regulator liniowy nie jest jeszcze umieszczony na płytce drukowanej.
- Jeśli Twój komputer nie ma jeszcze zainstalowanego Arduino IDE, pobierz je tutaj.
- Skonfiguruj obsługę ESP32 w środowisku Arduino IDE, korzystając z tego przewodnika.
- W IDE ustaw narzędzia > płyta na "ESP32 Wrover Module".
- Podłącz moduł CP2102 do portu USB w komputerze.
- W środowisku IDE ustaw narzędzia > port na odpowiedni port USB dla CP2102.
- Jeśli nowy port nie pojawia się po włożeniu modułu CP2102, zainstaluj wymagany sterownik USB z Silicon Labs.
- Chwyć szkic button_demo.
- Skompiluj i prześlij szkic.
- Po rozpoczęciu przesyłania przytrzymaj wciśnięte przyciski EN i IO0. EN to w zasadzie przycisk resetowania, a IO0 to szpilka do wymuszania przeprogramowania lampy błyskowej.
- Gdy kropki i kreski pojawią się w IDE, zwolnij przycisk EN (zwolnij reset), ale nadal przytrzymuj przycisk IO0, aż programowanie flasha zacznie się mieć pewność, że szpilka została rozpoznana po uruchomieniu.
- Po zakończeniu programowania naciśnij ponownie przycisk EN, aby zresetować i uruchomić nowo migający kod.
- Otwórz monitor szeregowy Arduino IDE i ustaw go na 115200 bodów.
- Naciśnięcie przycisku IO0 powinno wygenerować komunikat na monitorze szeregowym.
Krok 4: Przyciski, brzęczyki i diody LED, OH MY
WIĘCEJ PRZYCISKÓW
Po pomyślnym zakończeniu wstępnego etapu programowania wyłącz płytę HB50 i przylutuj pozostałe cztery przyciski. Ten sam szkic button_demo powinien teraz zgłaszać wszystkie pięć przycisków (IO0, A, B, C i D) do monitora szeregowego po ich naciśnięciu.
BRZĘCZYK
Wyłącz płytkę HB50 i przylutuj brzęczyk do jej padów. Ustaw kropkę na sygnalizatorze tak, aby była jak najbliżej pola „+” na płycie HB50. Zaprogramuj szkic buzzer_demo i zresetuj (EN) płytkę, aby mogła działać. Brzmi dobrze?
Diody LED RGB WS2812B
Wyłącz płytkę HB50 i przylutuj sześć diod LED do ich padów. Ustaw biały zaznaczony róg każdej diody LED, aby odpowiadał narożnikowi z zakładkami, jak pokazano na sitodruku PCB.
Z narzędzi Arduino IDE > Zarządzaj bibliotekami zainstaluj bibliotekę FastLED.
Otwórz szkic: Plik > Przykłady > FastLED > ColorPalette.
W kodzie szkicu zmień LED_PIN na 13, NUM_LEDS na 6 i LED_TYPE na WS2812B.
Prześlij szkic i zresetuj (EN) płytkę, aby mogła działać. Ciesz się migającymi światłami w każdym kolorze.
LINIOWY REGULATOR MOCY
Przy włączonych diodach LED (a zwłaszcza po włączeniu nadajnika WiFi) HB50 pobiera dużo prądu z zasilania 3V3. Poprawmy moc zasilania 3,3 V przez przylutowanie regulatora liniowego AMS1117 (pakiet SOT 233) na miejsce. Wypełnij również dwa kondensatory filtrujące 22uF obok regulatora. Zauważ, że jedna strona każdego kondensatora jest prostokątna, a druga ośmiokątna. Kondensatory powinny być zorientowane tak, aby ciemny pasek na opakowaniu był wyrównany z ośmiokątną stroną sitodruku. Regulator zmieni teraz część zasilania 5 V na 3,3 V i może dostarczyć znacznie więcej prądu niż sam moduł CP2102. Aby teraz zasilać HB50 przez zasilanie 5V, przesuń OBA KOŃCE zworki 3V3 DuPont na 5V. Oznacza to, że źródło 5 V z modułu CP2102 do jednego z pinów wejściowych 5 V na złączu HB50. Zauważ, że pin 5 V może być zasilany dowolnym napięciem od 3,5 V do 5 V.
Krok 5: Kolorowy wyświetlacz TFT LCD ILI9341 QVGA
Wyświetlacz MSP2402 (strona lcdwiki) to moduł magistrali SPI oparty na układzie ILI9341. Układ napędza kolorowy ekran o przekątnej 2,4 cala, obsługujący 65 000 kolorów i rozdzielczość 320x240 pikseli (QVGA).
Moduł posiada również wejście ekranu dotykowego oraz gniazdo kart SD.
WSTĘPNE TESTOWE STYKI WE/WY WYŚWIETLACZA
Jeśli do tego momentu masz problemy z lutowaniem pinów ESP-WROOM-32, dobrym pomysłem może być wstępne przetestowanie pinów I/O modułu wyświetlacza przed wlutowaniem modułu wyświetlacza na miejsce. Jak pokazano poniżej i na schematycznym schemacie PCB, IO ESP32 w grze to 19, 23, 18, 5, 22, 21 i 15. Zauważ, że są to numery IO, a nie numery pinów. Piny można przetestować, pisząc mały program, który ustawia wszystkie te IO jako wyjścia, a następnie pętle przechodzą przez IO, włączając i wyłączając każdy z nich po kolei z drugim lub dwoma opóźnieniami między nimi. Prosta dioda LED z dołączonym rezystorem ograniczającym prąd może być użyta jako sonda, aby upewnić się, że każdy pin IO zmapowany do nagłówków wyświetlacza (patrz schemat) jest prawidłowo włączany i wyłączany oraz że żaden z nich nie jest ze sobą sprzężony.
Po sprawdzeniu wszystkich pinów wyświetlacz TFT można przylutować na miejscu za pomocą zarówno długich, jak i krótkich nagłówków.
ZAINSTALUJ I KONFIGURUJ BIBLIOTEKĘ TFT
Z Arduino IDE: narzędzia > Zarządzaj bibliotekami, zainstaluj bibliotekę TFT_eSPI
Przejdź do folderu Biblioteki Arduino. Otwórz folder TFT_eSPI i edytuj plik User_Setup.h, aby skonfigurować układ sterownika modułu, rozdzielczość w pikselach i piny IO. Zrób to, upewniając się, że definicje są (nie)komentowane, jak pokazano poniżej, i ustawione na wartości, jak pokazano. Możesz sprawdzić, czy odpowiadają one połączeniom na schemacie PCB.
// Sekcja 1.
#define ILI9341_DRIVER #define TFT_WIDTH 240 #define TFT_HEIGHT 320 // Sekcja 2. // Dla płyty rozwojowej ESP32 #define TFT_MISO 19 #define TFT_MOSI 23 #define TFT_SCLK 18 #define TFT_CS 5 #define TFT_DC 22 #define TFT_RST 21 // TFT_RST -1 //#define TFT_BL 32 #define TOUCH_CS 15
Otwórz i prześlij szkic:
Plik > Przykłady > TFT_eSPI > 320 x 240 > Automaty_komórkowe
Ten szkic jest fajną wizualną demonstracją gry w życie Conwaya.
Szybowiec hakerski może wyewoluować do istnienia… miej oko na siebie!
WYŚWIETL LOGO HACKERBOX NA TFT LCD
Wypróbuj szkic BitHeadDemo.
Krok 6: Wejście użytkownika na ekranie dotykowym
Poniższy szkic może być użyty do skonfigurowania i przetestowania funkcjonalności ekranu dotykowego:
Plik > Przykłady > TFT_eSPI > 320 x 240 > Klawiatura_240x320
Przycisk „wyślij” przesyła wprowadzony numer do monitora szeregowego z prędkością 9600 bodów.
Krok 7: Klawiatura CardKB I2C
Ta niewielka płytka zawiera w pełni funkcjonalną klawiaturę QWERTY, która może być używana z prawie każdym projektem mikrokontrolera. Klawiatura komunikuje się za pomocą portu GROVE A (interfejs I2C) na adresie 0x5F. Kombinacje przycisków (Sym+Klawisz, Shift+Klawisz, Fn+Klawisz) są obsługiwane w celu wyprowadzania bogatych wartości klawiszy.
Zacznij od prostego przykładu szkicu CardKB_Serial, który komunikuje się z klawiaturą przez GROVE I2C i powtarza naciśnięcia klawiszy do monitora szeregowego. Szkic można uruchomić na ESP32 (np. HB50), Arduino UNO, Arduino Nano lub dowolnej platformie obsługującej I2C.
Zauważ, że istnieją dwa różne wywołania Wire.begin dla ESP32 i UNO/Nano. Odkomentuj odpowiednią jedną z tych linii dla używanego hosta. Podłącz żółty i biały przewód GROVE breakout do pinów określonych w tym wierszu kodu. Podłącz czerwony przewód GROVE breakout do 5 V, a czarny przewód GROVE do GND.
Strona dokumentacji producenta. Zwróć uwagę, że chociaż wbudowany mikrokontroler CardKB jest wstępnie zaprogramowany, źródło oprogramowania układowego jest dostępne, jeśli chcesz zhakować klawiaturę.
Krok 8:
Mamy nadzieję, że spodobała Ci się przygoda HackerBox w tym miesiącu w elektronikę i technologię komputerową. Sięgnij i podziel się swoim sukcesem w komentarzach poniżej lub na grupie Facebook HackerBoxes. Pamiętaj też, że możesz w każdej chwili wysłać e-mail na adres [email protected], jeśli masz pytanie lub potrzebujesz pomocy.
Co dalej? Dołącz do rewolucji. Żyj HackLife. Zdobądź fajne pudełko hakowalnego sprzętu dostarczanego co miesiąc prosto do Twojej skrzynki pocztowej. Przejdź do HackerBoxes.com i zarejestruj się, aby otrzymać miesięczną subskrypcję HackerBox.
Zalecana:
HackerBox 0060: Plac zabaw: 11 kroków
HackerBox 0060: Plac zabaw: Pozdrowienia dla hakerów HackerBox z całego świata!Dzięki HackerBox 0060 będziesz eksperymentować z Adafruit Circuit Playground Bluefruit wyposażonym w potężny mikrokontroler Nordic Semiconductor nRF52840 ARM Cortex M4. Poznaj wbudowane programowanie z
HackerBox 0041: CircuitPython: 8 kroków
HackerBox 0041: CircuitPython: Pozdrowienia dla hakerów HackerBox na całym świecie. HackerBox 0041 oferuje CircuitPython, MakeCode Arcade, konsolę Atari Punk i wiele innych. Ta instrukcja zawiera informacje dotyczące rozpoczęcia pracy z HackerBox 0041, które można kupić h
HackerBox 0058: Kodowanie: 7 kroków
HackerBox 0058: Kodowanie: Pozdrowienia dla hakerów HackerBox na całym świecie! Dzięki HackerBox 0058 będziemy badać kodowanie informacji, kody kreskowe, kody QR, programowanie Arduino Pro Micro, wbudowane wyświetlacze LCD, integrowanie generowania kodów kreskowych w projektach Arduino, inp
HackerBox 0057: Tryb awaryjny: 9 kroków
HackerBox 0057: Tryb awaryjny: Pozdrowienia dla hakerów HackerBox na całym świecie! HackerBox 0057 przenosi wioskę Internetu Rzeczy, sieci bezprzewodowych, otwierania zamków i oczywiście hakowania sprzętu bezpośrednio do Twojego domowego laboratorium. Będziemy badać programowanie mikrokontrolerów, exploity IoT Wi-Fi, Bluetooth int
HackerBox 0034: SubGHz: 15 kroków
HackerBox 0034: SubGHz: W tym miesiącu hakerzy HackerBox badają radio programowe (SDR) i komunikację radiową na częstotliwościach poniżej 1 GHz. Ta instrukcja zawiera informacje dotyczące rozpoczęcia pracy z HackerBox # 0034, które można kupić tutaj, podczas gdy materiały