Innholdsfortegnelse:

HackerBox 0050: 8 trinn
HackerBox 0050: 8 trinn

Video: HackerBox 0050: 8 trinn

Video: HackerBox 0050: 8 trinn
Video: Projects - July 2016 2024, Juli
Anonim
HackerBox 0050
HackerBox 0050

Hilsen HackerBox Hackere rundt om i verden! For HackerBox 0050 monterer og programmerer vi det innebygde prosessorkortet HB50. HB50 støtter eksperimentering med ESP32-mikrokontrollere, innebygd IoT WiFi, bit bang-lyd, RGB-lysdioder, TFT LCD-skjermer i full farge, berøringsskjerminnganger, Bluetooth og mer. HackerBox 0050 utforsker også en liten tastaturløsning for ethvert innebygd prosjekt, I2C -grensesnitt, strømbudsjettering og mobilautomater.

Denne guiden inneholder informasjon om hvordan du kommer i gang med HackerBox 0050, som kan kjøpes her så lenge lageret rekker. Hvis du ønsker å motta en HackerBox som denne rett i postkassen din hver måned, kan du abonnere på HackerBoxes.com og bli med i revolusjonen!

HackerBoxes er den månedlige abonnementstjenesten for maskinvarehackere og entusiaster innen elektronikk og datateknologi. Bli med oss for å leve HACK LIFE.

Trinn 1: Innholdsliste for HackerBox 0050

  • Eksklusivt HB50 kretskort
  • ESP-WROOM-32 Dual Core WiFi-modul
  • QVGA farge TFT LCD 2,4 tommers skjerm
  • Integrert pekeskjerm med pekepenn
  • Seks WS2812B RGB -lysdioder
  • Seks overflatemonterte knapper
  • Piezo summer 12 mm SMD
  • AMS1117 3.3V lineær regulator SOT223
  • Høyre vinkel 40pin Breakaway Header
  • To 22uF Tantal kondensatorer 1206 SMD
  • To 10K Ohm -motstander 0805 SMD
  • CardKB mini -tastatur
  • Grove til kvinnelig DuPont Breakout -kabel
  • CP2102 USB -seriemodul
  • DuPont Gensere Kvinne-Kvinne 10cm
  • Hokusai Great Wave PCB -dekal
  • Eksklusivt HackerBox WireHead -dekal
  • Eksklusiv HackerBox 50 Challenge Coin

Noen andre ting som vil være nyttige:

  • Loddejern, lodde og grunnleggende loddeverktøy
  • Datamaskin for kjøring av programvareverktøy

Viktigst av alt, trenger du en følelse av eventyr, hackerånd, tålmodighet og nysgjerrighet. Å bygge og eksperimentere med elektronikk, selv om det er veldig givende, kan være vanskelig, utfordrende og til og med frustrerende til tider. Målet er fremgang, ikke perfeksjon. Når du fortsetter og liker eventyret, kan du få mye tilfredshet fra denne hobbyen. Ta hvert trinn sakte, vær oppmerksom på detaljene, og ikke vær redd for å be om hjelp.

Det er et vell av informasjon for nåværende og potensielle medlemmer i HackerBoxes FAQ. Nesten alle de ikke-tekniske support-e-postene vi mottar, er allerede besvart der, så vi setter stor pris på at du tar deg noen minutter til å lese vanlige spørsmål.

Trinn 2: HB50 kretskort

HB50 kretskort
HB50 kretskort

For å feire HackerBox nummer 0050 har vi spunnet en oppdatert versjon av det mest populære HackerBox kretskortet etter populær etterspørsel. HackerBox 0020 Summer Camp -merkesettet ble utsolgt på DEF CON 25 på mindre enn to timer. PCB -filene har siden blitt ofte etterspurt. Styret har blitt trykt på nytt minst et par ganger av tredjeparter. Designet har inspirert en håndfull andre merker og innebygde IoT -prosjekter som vi er klar over og forhåpentligvis flere flere som vi ikke er klar over.

Oppdateringene i det nye HB50 PCB-settet inkluderer bytte av ESP-32 DEVkitC til den mer kompakte ESP-WROOM-32-modulen. De fem kapasitive berøringsknappene er erstattet med mekaniske taktile knapper. De fem RGB WS2812 lysdiodene som var i hvite pakker, er økt til seks og er nå i svarte pakker. Piezo -summeren er erstattet med en mer kompakt overflatemonteringsversjon. Strømforsyningen er forenklet. TFT -fargeskjermen er økt fra 2,2 tommer til 2,4 tommer. Kretskortet er mer kompakt og har til og med noen få IO -pinner brutt ut for din hackingglede. Siden tiden for HackerBox 20 er det mange flere prosjekter, eksempler og kode tilgjengelig for ESP32, så la oss gjøre oss klare til å rumle …

Funksjoner:

  • ESP32 Dual Core 160MHz prosessor
  • 2,4 tommers QVGA farge TFT LCD -skjerm
  • WiFi 802.11 b/g/n/d/e/i/k/r
  • Bluetooth LE 5.0
  • Fem taktile trykknapper (+ en for tilbakestilling)
  • Seks RGB WS2812 lysdioder
  • Piezo summer
  • 3.3V lineær regulator
  • Utvidelsesoverskrift

Som med forgjengeren kan HB50 bæres på en lanyard, brukes som en håndholdt, montert på en vegg eller settes ut stort sett hvor som helst i utallige trådløse og fargerike applikasjoner.

Trinn 3: Få frem HB50 -kortet

Få frem HB50 -brettet
Få frem HB50 -brettet

For å minimere eller i det minste isolere feil, foreslår vi at du starter montering ved å fylle ut et minimum av komponenter til HB50 -kretskortet som kreves for å programmere ESP32. Denne minimale levedyktige tilnærmingen er beskrevet i disse trinnene:

  1. Se denne videoen om lodding av kastellerte moduler.
  2. Lodd ESP-WROOM-32-modulen på kretskortet. Ta den tiden du trenger. Ikke bekymre deg for den sentrale bakken under modulen. Den kan bare loddes ved tilbakespyling og er bare der for ekstra termisk kobling.
  3. Bruk et multimeter for å sikre at det ikke er kort mellom 3V3 og GND. Hvis det er en kort, må den identifiseres og fjernes før du bruker strøm til brettet, eller røykmonsteret kan komme ut.
  4. Lodd de to 10K -motstandene like over EN- og IO0 -knappene.
  5. Lodd EN- og IO0 -knappene. De fire andre knappene kan slippes for nå.
  6. Bryt av en 16 -pinners stripe med topptekst. Sett den inn fra CPU -siden av kretskortet slik at pinnene peker mot nærmeste kant av kretskortet. Deretter loddes overskriften på plass fra knappsiden av kretskortet.
  7. Kontroller igjen at det ikke er shorts mellom 3V3 og GND.
  8. Bruk fire DuPont -jumperkabler for å koble CP2102 -modulen som vist. Vær oppmerksom på at vi midlertidig bruker 3V3 -strømkilden siden den lineære regulatoren ennå ikke er befolket på kretskortet.
  9. Hvis datamaskinen din ikke allerede har Arduino IDE installert, kan du få den her.
  10. Konfigurer ESP32 -støtte i Arduino IDE ved å bruke denne veiledningen.
  11. I IDE, sett verktøy> bord til "ESP32 Wrover Module".
  12. Koble CP2102 -modulen til en USB -port på datamaskinen.
  13. I IDE, sett verktøy> port til riktig USB -port for CP2102.
  14. Hvis en ny port ikke vises når CP2102 -modulen er satt inn, må du installere den nødvendige USB -driveren fra Silicon Labs.
  15. Ta tak i knappen_demo -skissen.
  16. Kompiler og last opp skissen.
  17. Når opplastingen starter, holder du inne både EN- og IO0 -knappene. EN er i utgangspunktet en tilbakestillingsknapp, og IO0 er stroppen for å tvinge omprogrammering av blitsen.
  18. Når prikkene og bindestrekene vises i IDE, slipper du EN -knappen (slipp tilbakestillingen), men fortsetter å holde IO0 -knappen inne til blitsprogrammeringen begynner å være sikker på at stroppen gjenkjennes ved oppstart.
  19. Når programmeringen er fullført, trykker du på EN -knappen igjen for å tilbakestille og starte den nylig blinkede koden.
  20. Åpne Arduino IDE Serial Monitor og sett den til 115200 baud.
  21. Hvis du trykker på IO0 -knappen, skal det genereres en melding i den serielle skjermen.

Trinn 4: Knapper, summer og lysdioder, OH MY

Knapper, summer og lysdioder, OH MY!
Knapper, summer og lysdioder, OH MY!

FLERE KNAPPER

Når det første programmeringstrinnet er vellykket, slår du av HB50 -kortet og lodder på de fire resterende knappene. Den samme button_demo -skissen skal nå rapportere alle fem knappene (IO0, A, B, C og D) til den serielle skjermen når de trykkes ned.

SUMMER

Slå av HB50 -kortet og lodd summeren på putene. Orienter prikken på summeren for å være nærmest "+" -puten på HB50 -kortet. Programmer buzzer_demo -skissen og tilbakestill (EN) brettet for å la det gå. Høres bra ut?

WS2812B RGB lysdioder

Slå av HB50 -kortet og lodd de seks lysdiodene på putene. Orienter det hvite merkede hjørnet på hver lysdiode slik at det svarer til hjørnet på fanen som vist på silketrykket på PCB.

Fra Arduino IDE -verktøyene> Administrer biblioteker, installer FastLED -biblioteket.

Åpne skissen: Fil> Eksempler> FastLED> ColorPalette.

I skissekoden endrer du LED_PIN til 13, NUM_LEDS til 6 og LED_TYPE til WS2812B.

Last opp skissen og tilbakestill (EN) brettet for å la det gå. Nyt blinkende lys i alle farger.

LINEAR POWER REGUALTOR

Med lysdiodene i spill (og spesielt når WiFi -senderen er aktivert) henter HB50 mye strøm fra 3V3 -forsyningen. La oss forbedre 3,3V strømkapasitet ved å lodde AMS1117 (SOT 233 -pakken) lineær regulator på plass. Fyll også ut de to 22uF filterkondensatorene ved siden av regulatoren. Vær oppmerksom på at den ene siden av hver kondensator silketrykk er rektangulær og den andre siden hvis den er åttekantet. Kondensatorene bør være orientert slik at den mørke stammen på pakken er på linje med den åttekantede silketrykket. Regulatoren vil nå gjøre noen av 5V -forsyningen til 3,3V og kan gi mye mer strøm enn CP2102 -modulen i seg selv. For å nå levere strøm til HB50 gjennom 5V -forsyningen, flytt BÅDE ENDENE på 3V3 DuPont -jumperen over til 5V. Det vil si kilde 5V fra CP2102 -modulen til en av 5V -inngangspinnene på HB50 -hodet. Vær oppmerksom på at 5V -pinnen faktisk kan leveres med en hvilken som helst spenning på mellom 3,5V og 5V.

Trinn 5: ILI9341 QVGA farge TFT LCD -skjerm

ILI9341 QVGA farge TFT LCD -skjerm
ILI9341 QVGA farge TFT LCD -skjerm

MSP2402 Display (lcdwiki -side) er en SPI -bussmodul basert på ILI9341 -brikken. Brikken driver en 2,4 tommers fargeskjerm som støtter 65 000 farger og en oppløsning på 320 x 240 piksler (QVGA).

Modulen har også berøringsskjerminngang og et SD -kortspor.

I/O-PINNER FOR FORTEST-DISPLAY

Hvis du har hatt problemer med ESP-WROOM-32-pinners lodding opp til dette punktet, kan det være lurt å forhåndsteste I/O-pinnene på skjermmodulen før du lodder skjermmodulen på plass. Som vist nedenfor og på skjematisk diagram av PCB, er ESP32 IOene i spill 19, 23, 18, 5, 22, 21 og 15. Legg merke til at dette er IO -tallene og ikke pin -tallene. Pinnene kan testes ved å skrive et lite program som setter alle disse IO -ene som utganger og deretter løkker sykling gjennom IO -ene og slår hver på og av etter tur med et eller to forsinkelser mellom. En enkel LED med en strømbegrensende motstand tilkoblet kan brukes som sonde for å sikre at hver IO-pinne som er kartlagt til skjermhodene (se skjematisk) er riktig slått på og av, og at ingen av dem er koblet sammen.

Når alle pinnene er bekreftet, kan TFT -skjermen loddes på plass ved hjelp av både lange og korte overskrifter.

INSTALLER OG KONFIGURER TFT LIBRARY

Fra Arduino IDE: verktøy> Administrer biblioteker, installer TFT_eSPI -biblioteket

Gå til mappen Arduino Libraries. Åpne TFT_eSPI -mappen og rediger filen User_Setup.h for å konfigurere moduldriverbrikken, pikseloppløsningen og IO -pinnene. Gjør dette ved å sørge for at definisjonene er (u) kommentert som vist nedenfor og satt til verdiene som vist. Du kan bekrefte at disse samsvarer med tilkoblingene i PCB -skjemaet.

// Seksjon 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 // #definere TFT_BL 32 #define TOUCH_CS 15

Åpne og last opp skissen:

Fil> Eksempler> TFT_eSPI> 320 x 240> Cellular_Automata

Denne skissen er en kul visuell demonstrasjon av Conways Game of Life.

En hackerglider kan utvikle seg til å eksistere … hold øye!

DISPLAY HACKERBOX LOGO PÅ TFT LCD

Prøv BitHeadDemo -skissen.

Trinn 6: Berøringsskjermbrukerinngang

Berøringsskjerm brukerinngang
Berøringsskjerm brukerinngang

Følgende skisse kan brukes til å konfigurere og teste funksjonen på berøringsskjermen:

Fil> Eksempler> TFT_eSPI> 320 x 240> Tastatur_240x320

"Send" -knappen overfører det angitte nummeret til den serielle skjermen på 9600 baud.

Trinn 7: CardKB I2C -tastatur

CardKB I2C -tastatur
CardKB I2C -tastatur

Dette lille kortet implementerer et fullverdig QWERTY-tastatur som kan brukes med stort sett alle dine mikrokontrollerprosjekter. Tastaturet kommuniserer ved hjelp av en GROVE A -port (I2C -grensesnitt) på adresse 0x5F. Knappekombinasjoner (Sym+Key, Shift+Key, Fn+Key) støttes for å skrive ut rike nøkkelverdier.

Start med det enkle eksempelet CardKB_Serial sketch, som kommuniserer med tastaturet over GROVE I2C og ekko tastetrykk til Serial Monitor. Skissen kan kjøres på ESP32 (for eksempel HB50), Arduino UNO, Arduino Nano eller hvilken som helst plattform som støtter I2C.

Vær oppmerksom på at det er to forskjellige Wire.begin -anrop for ESP32 og for UNO/Nano. Ikke kommenter den riktige linjen for verten du bruker. Koble de gule og hvite GROVE -brytningskablene til pinnene som er angitt på den kodelinjen. Koble den røde GROVE -utbruddstråden til 5V og den svarte GROVE -ledningen til GND.

Produsentens dokumentasjonsside. Vær oppmerksom på at selv om CardKB innebygde mikrokontroller kommer forhåndsprogrammert, er fastvarekilden tilgjengelig hvis du ønsker å hacke tastaturet.

Trinn 8:

Bilde
Bilde

Vi håper du nyter denne månedens HackerBox -eventyr innen elektronikk og datateknologi. Nå ut og del suksessen din i kommentarene nedenfor eller på HackerBoxes Facebook Group. Husk også at du når som helst kan sende en e -post til [email protected] hvis du har spørsmål eller trenger hjelp.

Hva blir det neste? Bli med på revolusjonen. Lev HackLife. Få en kul boks med hackbart utstyr levert rett i postkassen din hver måned. Surf over til HackerBoxes.com og registrer deg for ditt månedlige HackerBox -abonnement.

Anbefalt: