Innehållsförteckning:

HackerBox 0050: 8 steg
HackerBox 0050: 8 steg

Video: HackerBox 0050: 8 steg

Video: HackerBox 0050: 8 steg
Video: Projects - July 2016 2024, November
Anonim
HackerBox 0050
HackerBox 0050

Hälsningar till HackerBox Hackare runt om i världen! För HackerBox 0050 monterar och programmerar vi det inbyggda HB50 -processorkortet. HB50 stöder att experimentera med ESP32-mikrokontroller, inbäddad IoT WiFi, bit bang-ljud, RGB-lysdioder, TFT LCD-skärmar i full färg, pekskärmsingångar, Bluetooth med mera. HackerBox 0050 utforskar också en liten tangentbordslösning för alla inbäddade projekt, I2C -gränssnitt, energibudgeting och mobilautomater.

Den här guiden innehåller information om hur du kommer igång med HackerBox 0050, som kan köpas här så länge lagret räcker. Om du vill få en sån här HackerBox i din brevlåda varje månad, prenumerera på HackerBoxes.com och gå med i revolutionen!

HackerBoxes är den månatliga prenumerationstjänsten för hårdvaruhackare och entusiaster inom elektronik och datorteknik. Följ med oss och lev HACK LIFE.

Steg 1: Innehållslista för HackerBox 0050

  • Exklusivt kretskort i HB50
  • ESP-WROOM-32 Dual Core WiFi-modul
  • QVGA TFT LCD -färgskärm på 2,4 tum
  • Integrerad pekskärm med pekskärm
  • Sex WS2812B RGB -lysdioder
  • Sex ytmonterade tacile -knappar
  • Piezo -summer 12 mm SMD
  • AMS1117 3.3V Linjär regulator SOT223
  • Rätt vinkel 40pin Breakaway Header
  • Två 22uF Tantal -kondensatorer 1206 SMD
  • Två 10K Ohm -resistorer 0805 SMD
  • CardKB Mini Keyboard
  • Grove to Female DuPont Breakout Cable
  • CP2102 USB -seriemodul
  • DuPont Jumpers Female-Female 10cm
  • Hokusai Great Wave PCB -dekal
  • Exklusivt dekal för HackerBox WireHead
  • Exklusivt HackerBox 50 utmaningsmynt

Några andra saker som kommer att vara till hjälp:

  • Lödkolv, löd och grundläggande lödverktyg
  • Dator för att köra mjukvaruverktyg

Viktigast av allt, du behöver en känsla av äventyr, hackeranda, tålamod och nyfikenhet. Att bygga och experimentera med elektronik, samtidigt som det är mycket givande, kan vara svårt, utmanande och till och med frustrerande ibland. Målet är framsteg, inte perfektion. När du fortsätter och njuter av äventyret kan du få stor tillfredsställelse från denna hobby. Ta varje steg långsamt, tänk på detaljerna och var inte rädd för att be om hjälp.

Det finns en mängd information för nuvarande och potentiella medlemmar i HackerBoxes FAQ. Nästan alla icke-tekniska support-e-postmeddelanden som vi får besvaras redan där, så vi uppskattar verkligen att du tar några minuter att läsa vanliga frågor.

Steg 2: HB50 kretskort

HB50 kretskort
HB50 kretskort

För att fira HackerBox -nummer 0050 har vi snurrat en uppdaterad version av det mest populära HackerBox -kretskortet efter populär efterfrågan. HackerBox 0020 Summer Camp -märkesatsen sålde ut på DEF CON 25 på mindre än två timmar. PCB -filerna har sedan ofta efterfrågats. Styrelsen har skrivits ut minst ett par gånger av tredje part. Designen har inspirerat en handfull andra märken och inbäddade IoT -projekt som vi är medvetna om och förhoppningsvis flera fler som vi inte är medvetna om.

Uppdateringarna i det nya HB50-kretskortet inkluderar att byta ESP-32 DEVkitC till den mer kompakta ESP-WROOM-32-modulen. De fem kapacitiva touchknapparna har ersatts med mekaniska taktila knappar. De fem RGB WS2812 lysdioderna som fanns i vita förpackningar har ökats till sex och finns nu i svarta paket. Piezo -summern har ersatts med en mer kompakt ytmonterad version. Strömförsörjningen har förenklats. TFT -färgskärmen har ökats från 2,2 tum till 2,4 tum. Kretskortet är mer kompakt och har till och med några IO -nålar utbrutna för ditt hackingnöje. Sedan tiden för HackerBox 20 finns det många fler projekt, exempel och kod tillgängliga för ESP32, så låt oss göra oss redo att mullra …

Funktioner:

  • ESP32 Dual Core 160MHz -processor
  • 2,4 tums QVGA TFT LCD -skärm i färg
  • WiFi 802.11 b/g/n/d/e/i/k/r
  • Bluetooth LE 5.0
  • Fem taktila tryckknappar (+ en för återställning)
  • Sex RGB WS2812 lysdioder
  • Piezo summer
  • 3.3V linjär regulator
  • Expansionsrubrik

Som med sin föregångare kan HB50 bäras på en snodd, användas som en handenhet, monteras på en vägg eller placeras i stort sett var som helst i otaliga trådlösa och färgglada applikationer.

Steg 3: Ta fram HB50 -kortet

Ta fram HB50 -kortet
Ta fram HB50 -kortet

För att minimera, eller åtminstone isolera fel, föreslår vi att man börjar montera genom att bara fylla på det minsta antalet komponenter till HB50 -kretskortet som krävs för att programmera ESP32. Denna minsta livskraftiga metod beskrivs i dessa steg:

  1. Se den här videon om lödning av kastellerade moduler.
  2. Löd ESP-WROOM-32-modulen på kretskortet. Ta din tid. Oroa dig inte om den centrala markplattan under modulen. Det kan endast lödas genom återflöde och finns bara för extra termisk koppling.
  3. Använd en multimeter för att se till att det inte finns någon kort mellan 3V3 och GND. Om det finns en kort, måste den identifieras och avlägsnas innan du sätter på strömmen på brädan, annars kan rökmonstret komma ut.
  4. Löd de två 10K -motstånden strax ovanför EN- och IO0 -knapparna.
  5. Löd knapparna EN och IO0. De andra fyra knapparna kan stängas av tills vidare.
  6. Bryt av en 16 -stifts remsa. Sätt in den från CPU -sidan på kretskortet så att stiften pekar mot närmaste kant av kretskortet. Löd sedan rubriken på plats från knappsidan av kretskortet.
  7. Kontrollera igen att det inte finns några shorts mellan 3V3 och GND.
  8. Använd fyra DuPont -bygelkablar för att ansluta CP2102 -modulen enligt bilden. Observera att vi tillfälligt använder 3V3 -strömkällan eftersom den linjära regulatorn ännu inte är befolkad på kretskortet.
  9. Om din dator inte redan har Arduino IDE installerat, hämta den här.
  10. Konfigurera ESP32 -stöd i Arduino IDE med den här guiden.
  11. I IDE, ställ in verktyg> kort till "ESP32 Wrover Module".
  12. Anslut CP2102 -modulen till en USB -port på datorn.
  13. I IDE, ställ in verktyg> port på rätt USB -port för CP2102.
  14. Om en ny port inte visas när CP2102 -modulen är isatt installerar du en USB -drivrutin som krävs från Silicon Labs.
  15. Ta tag i knappen_demoskiss.
  16. Sammanställ och ladda upp skissen.
  17. När uppladdningen startar håller du ned både EN- och IO0 -knapparna. EN är i grunden en återställningsknapp och IO0 är spännstiftet för att tvinga omprogrammering av blixten.
  18. När prickar och streck visas i IDE, släpp upp EN -knappen (släpp återställning) men fortsätt att hålla IO0 -knappen intryckt tills blixtprogrammeringen börjar vara säker på att bandstiftet känns igen vid start.
  19. När programmeringen är klar, tryck på EN -knappen igen för att återställa och starta den nyblinkade koden.
  20. Öppna Arduino IDE Serial Monitor och ställ in den på 115200 baud.
  21. Ett tryck på IO0 -knappen ska generera ett meddelande i den seriella bildskärmen.

Steg 4: Knappar, summer och lysdioder, OH MY

Knappar, summer och lysdioder, OH MY!
Knappar, summer och lysdioder, OH MY!

MER KNAPPAR

När det första programmeringssteget har lyckats, stäng av HB50 -kortet och löd på de återstående fyra knapparna. Samma button_demo -skiss bör nu rapportera alla fem knapparna (IO0, A, B, C och D) till den seriella bildskärmen när de trycks ned.

SUMMER

Stäng av HB50 -kortet och löd summern på dess kuddar. Rikta in pricken på summern så att den ligger närmast "+" -plattan på HB50 -kortet. Programmera buzzer_demo -skissen och återställ (EN) tavlan för att låta den gå. Låter bra?

WS2812B RGB -lysdioder

Stäng av HB50 -kortet och löd de sex lysdioderna på deras plattor. Rikta det vitmarkerade hörnet på varje lysdiod så att det motsvarar det flikade hörnet som visas på PCB -silkscreen.

Från Arduino IDE -verktygen> Hantera bibliotek installerar du FastLED -biblioteket.

Öppna skissen: Arkiv> Exempel> FastLED> ColorPalette.

I skisskoden ändrar du LED_PIN till 13, NUM_LEDS till 6 och LED_TYPE till WS2812B.

Ladda upp skissen och återställ (EN) tavlan för att låta den gå. Njut av blinkande lampor i alla färger.

LINEAR POWER REGUALTOR

Med lysdioderna i spel (och särskilt när WiFi -sändaren är aktiverad) drar HB50 mycket ström från 3V3 -strömförsörjningen. Låt oss förbättra 3,3V effektkapacitet genom att löda AMS1117 (SOT 233 -paketet) Linear Regulator på plats. Fyll också i de två 22uF -filterkondensatorerna bredvid regulatorn. Observera att ena sidan av varje kondensator silkscreen är rektangulär och den andra sidan om åttkantig. Kondensatorerna bör orienteras så att den mörka skaftet på förpackningen är i linje med den åttkantiga silkscreen -sidan. Regulatorn kommer nu att göra en del av 5V -matningen till 3,3V och kan ge mycket mer ström än CP2102 -modulen i sig. För att nu strömförsörja HB50 via 5V -matningen, flytta BÅDE ENDEN på 3V3 DuPont -bygeln till 5V. Det vill säga källa 5V från CP2102 -modulen till en av 5V -ingångsstiften på HB50 -huvudet. Observera att 5V -stiftet faktiskt kan levereras med valfri spänning mellan 3,5V och 5V.

Steg 5: ILI9341 QVGA färg TFT LCD -skärm

ILI9341 QVGA TFT -färgskärm i färg
ILI9341 QVGA TFT -färgskärm i färg

MSP2402 Display (lcdwiki -sida) är en SPI -bussmodul baserad på ILI9341 -chipet. Chippet driver en 2,4 -tums färgskärm som stöder 65 000 färger och en upplösning på 320X240 pixlar (QVGA).

Modulen har också pekskärmsingång och en SD -kortplats.

FÖR-TEST-DISPLAY I/O-PINS

Om du har haft problem med ESP-WROOM-32-stiftslödning fram till denna punkt kan det vara en bra idé att testa bildskärmsmodulens I/O-stift innan du lödar skärmmodulen på plats. Som visas nedan och på det schematiska diagrammet för kretskortet är ESP32 IO: erna 19, 23, 18, 5, 22, 21 och 15. Observera att detta är IO -numren och inte stiftnumren. Stiften kan testas genom att skriva ett litet program som ställer in alla dessa IO: er som utgångar och sedan slingrar cykling genom IO: erna och slår på och av var och en med en eller två fördröjningar mellan. En enkel lysdiod med ett strömbegränsande motstånd kan anslutas kan användas som en sond för att se till att varje IO-stift som är mappad till bildskärmsrubrikerna (se schemat) är korrekt på och av och att ingen av dem är kopplade ihop.

När alla stiften har verifierats kan TFT -skärmen lödas på plats med både långa och korta rubriker.

INSTALLERA OCH KONFIGURERA TFT -BIBLIOTEKET

Från Arduino IDE: verktyg> Hantera bibliotek, installera TFT_eSPI -biblioteket

Gå till mappen Arduino Libraries. Öppna mappen TFT_eSPI och redigera filen User_Setup.h för att konfigurera moduldrivrutinschip, pixelupplösning och IO -stift. Gör detta genom att se till att definieringarna (av) kommenteras som visas nedan och ställer in värdena som visas. Du kan verifiera att dessa motsvarar anslutningarna i PCB -schemat.

// Sektion 1.

#define ILI9341_DRIVER #define TFT_WIDTH 240 #define TFT_HEIGHT 320 // Section 2. // For ESP32 Dev board #define TFT_MISO 19 #define TFT_MOSI 23 #define TFT_SCLK 18 #define TFT_CS 5 #define TFT_DC TFT_RST -1 // #definiera TFT_BL 32 #define TOUCH_CS 15

Öppna och ladda upp skissen:

Arkiv> Exempel> TFT_eSPI> 320 x 240> Cellular_Automata

Denna skiss är en cool visuell demonstration av Conways Game of Life.

Ett hackerflygplan kan utvecklas till existens … håll utkik!

DISPLAY HACKERBOX LOGO PÅ TFT LCD

Prova BitHeadDemo -skissen.

Steg 6: Pekskärm Användarinmatning

Pekskärm Användarinmatning
Pekskärm Användarinmatning

Följande skiss kan användas för att konfigurera och testa pekskärmens funktioner:

Arkiv> Exempel> TFT_eSPI> 320 x 240> Knappsats_240x320

"Skicka" -knappen sänder det inmatade numret till den seriella bildskärmen vid 9600 baud.

Steg 7: CardKB I2C -tangentbord

CardKB I2C -tangentbord
CardKB I2C -tangentbord

Detta lilla kort implementerar ett komplett QWERTY-tangentbord som kan användas med i stort sett alla dina mikrokontrollerprojekt. Tangentbordet kommunicerar med en GROVE A -port (I2C -gränssnitt) på adress 0x5F. Knappkombinationer (Sym+Key, Shift+Key, Fn+Key) stöds för att mata ut riktiga nyckelvärden.

Börja med det enkla exemplet CardKB_Serial sketch, som kommunicerar med tangentbordet över GROVE I2C och ekar tangenttryckningar till Serial Monitor. Skissen kan köras på ESP32 (som HB50), Arduino UNO, Arduino Nano eller någon plattform som stöder I2C.

Observera att det finns två olika Wire.begin -samtal för ESP32 och för UNO/Nano. Avmarkera den lämpliga raden för den värd du använder. Koppla upp de gula och vita GROVE -brytningstrådarna till stiften som anges på den kodraden. Anslut den röda GROVE -brytningstråden till 5V och den svarta GROVE -tråden till GND.

Tillverkarens dokumentationssida. Observera att även om den inbyggda CardKB-mikrokontrollern är förprogrammerad, är firmware-källan tillgänglig om du vill hacka tangentbordet.

Steg 8:

Bild
Bild

Vi hoppas att du njuter av månadens HackerBox -äventyr inom elektronik och datorteknik. Nå ut och dela din framgång i kommentarerna nedan eller på HackerBoxes Facebook Group. Kom också ihåg att du kan skicka e -post till [email protected] när som helst om du har en fråga eller behöver hjälp.

Vad kommer härnäst? Gå med i revolutionen. Lev HackLife. Få en cool låda med hackbar utrustning levererad direkt till din brevlåda varje månad. Surfa över till HackerBoxes.com och registrera dig för ditt månatliga HackerBox -abonnemang.

Rekommenderad: