Sisällysluettelo:

HackerBox 0050: 8 vaihetta
HackerBox 0050: 8 vaihetta

Video: HackerBox 0050: 8 vaihetta

Video: HackerBox 0050: 8 vaihetta
Video: Opi ymmärtämään tutkimusmenetelmiä: Kvantitatiiviset aineistot ja menetelmät 2024, Heinäkuu
Anonim
HackerBox 0050
HackerBox 0050

Tervehdys HackerBox -hakkereille ympäri maailmaa! HackerBox 0050: lle kokoamme ja ohjelmoimme sulautetun HB50 -prosessorilevyn. HB50 tukee kokeiluja ESP32-mikrokontrollereilla, sulautetulla IoT-WiFi-yhteydellä, bittisuihkulla, RGB-LED-valoilla, värillisillä TFT-LCD-näytöillä, kosketusnäytön tuloilla, Bluetoothilla ja muilla. HackerBox 0050 tutkii myös pienen näppäimistöratkaisun mihin tahansa sulautettuun projektiin, I2C -rajapintoihin, virran budjetointiin ja solukkoautomaatteihin.

Tämä opas sisältää tietoja HackerBox 0050: n käytön aloittamisesta, jonka voit ostaa täältä niin kauan kuin tavaraa riittää. Jos haluat saada tällaisen HackerBoxin suoraan postilaatikkoosi joka kuukausi, tilaa HackerBoxes.com ja liity vallankumoukseen!

HackerBoxes on kuukausittainen tilauslaatikkopalvelu laitteistohakkereille ja elektroniikan ja tietotekniikan harrastajille. Tule mukaan elämään HACK LIFEa.

Vaihe 1: Sisältöluettelo HackerBox 0050: lle

  • Ainutlaatuinen HB50 -piirilevy
  • ESP-WROOM-32 Dual Core WiFi -moduuli
  • 2,4 tuuman QVGA -värillinen TFT LCD -näyttö
  • Integroitu kosketusnäyttö ja kynä
  • Kuusi WS2812B RGB -LEDiä
  • Kuusi Surface Mount Tacile -painiketta
  • Pietsosummeri 12 mm SMD
  • AMS1117 3.3V lineaarinen säädin SOT223
  • Suorakulmainen 40 -nastainen irrotettava otsikko
  • Kaksi 22uF tantaalikondensaattoria 1206 SMD
  • Kaksi 10K ohmin vastusta 0805 SMD
  • CardKB Mini -näppäimistö
  • Grove -naaras DuPont Breakout -kaapeli
  • CP2102 USB -sarjamoduuli
  • DuPont Puserot Naaras-Naaras 10cm
  • Hokusai Great Wave PCB -tarra
  • Ainutlaatuinen HackerBox WireHead -tarra
  • Ainutlaatuinen HackerBox 50 Challenge -kolikko

Muutamia muita asioita, joista on apua:

  • Juotosrauta, juote ja perusjuottotyökalut
  • Tietokone ohjelmistotyökalujen suorittamiseen

Mikä tärkeintä, tarvitset seikkailutunnetta, hakkerihenkeä, kärsivällisyyttä ja uteliaisuutta. Elektroniikan rakentaminen ja kokeileminen, vaikkakin erittäin palkitsevaa, voi olla hankalaa, haastavaa ja jopa turhauttavaa toisinaan. Tavoitteena on edistyminen, ei täydellisyys. Kun jatkat ja nautit seikkailusta, tästä harrastuksesta voi saada paljon tyydytystä. Ota jokainen askel hitaasti, muista yksityiskohdat ja älä pelkää pyytää apua.

HackerBoxesin usein kysytyissä kysymyksissä on runsaasti tietoa nykyisille ja tuleville jäsenille. Lähes kaikkiin saamiimme ei-teknisen tuen sähköpostiviesteihin on jo vastattu siellä, joten arvostamme todella, että käytät muutaman minuutin UKK: n lukemiseen.

Vaihe 2: HB50 -piirilevy

HB50 -piirilevy
HB50 -piirilevy

HackerBox -numeron 0050 muistoksi olemme kehitelleet päivitetyn version suosituimmasta HackerBox -piirilevystä suuren kysynnän mukaan. HackerBox 0020 Summer Camp -merkkisarja myytiin loppuun DEF CON 25: ssä alle kahdessa tunnissa. PCB -tiedostoja on sittemmin pyydetty usein. Kolmas osapuoli on painanut levyn uudelleen vähintään pari kertaa. Suunnittelu on inspiroinut kourallisen muita tunnuksia ja sulautettuja IoT -projekteja, joista olemme tietoisia, ja toivottavasti useita muita, joista emme ole tietoisia.

Uuden HB50-piirilevysarjan päivitykset sisältävät ESP-32 DEVkitC: n vaihtamisen kompaktimpaan ESP-WROOM-32-moduuliin. Viisi kapasitiivista kosketuspainiketta on korvattu mekaanisilla kosketuspainikkeilla. Valkoisissa pakkauksissa olevat viisi RGB WS2812 -LEDiä on korotettu kuuteen ja ovat nyt mustissa pakkauksissa. Pietsosummeri on korvattu tiiviimmällä pinta -asennettavalla versiolla. Virtalähdettä on yksinkertaistettu. Värillistä TFT -näyttöä on kasvatettu 2,2 tuumasta 2,4 tuumaan. Piirilevy on pienempi ja siinä on jopa muutama IO -nasta, jotka on murtautunut hakkeroinnin iloksi. HackerBox 20: n jälkeen ESP32: lle on saatavilla paljon enemmän projekteja, esimerkkejä ja koodia, joten valmistaudumme jyrinä…

Ominaisuudet:

  • ESP32 Dual Core 160MHz -suoritin
  • 2,4 tuuman QVGA -värillinen TFT LCD -näyttö
  • WiFi 802.11 b/g/n/d/e/i/k/r
  • Bluetooth LE 5.0
  • Viisi kosketuspainiketta (+ yksi nollaus)
  • Kuusi RGB WS2812 -LEDiä
  • Pietsosummeri
  • 3.3V lineaarinen säädin
  • Laajennusotsikko

Kuten edeltäjänsä, HB50: tä voidaan käyttää kaulanauhassa, käyttää kämmenlaitteena, asentaa seinälle tai käyttää melkein missä tahansa lukemattomissa langattomissa ja värikkäissä sovelluksissa.

Vaihe 3: Avaa HB50 -kortti

Avaa HB50 -kortti
Avaa HB50 -kortti

Virheiden minimoimiseksi tai ainakin eristämiseksi ehdotamme kokoonpanon aloittamista täyttämällä vain vähimmäismäärä komponentteja HB50 -piirilevylle, joita tarvitaan ESP32: n ohjelmointiin. Tämä vähimmäiskelpoinen lähestymistapa on kuvattu seuraavissa vaiheissa:

  1. Katso tämä video valettujen moduulien juottamisesta.
  2. Juotos ESP-WROOM-32-moduuli piirilevyyn. Ei kiirettä. Älä huolehdi moduulin alla olevasta keskimmäisestä maadoituslevystä. Se voidaan juottaa vain uudelleensyötön avulla ja se on tarkoitettu vain lämpöliitännän lisäämiseen.
  3. Varmista yleismittarilla, ettei 3V3: n ja GND: n välillä ole oikosulkua. Jos siinä on oikosulku, se on tunnistettava ja poistettava ennen virran kytkemistä laudalle tai savuhirviö saattaa tulla ulos.
  4. Juottaa kaksi 10K vastusta EN- ja IO0 -painikkeiden yläpuolelle.
  5. Juotos EN- ja IO0 -painikkeet. Muut neljä painiketta voidaan jättää pois.
  6. Katkaise 16 -nastainen otsikko. Aseta se piirilevyn CPU -puolelta siten, että nastat osoittavat piirilevyn lähimpään reunaan. Juotos sitten otsikko paikalleen piirilevyn painikkeen puolelta.
  7. Tarkista uudelleen, ettei 3V3: n ja GND: n välillä ole oikosulkuja.
  8. Käytä neljää DuPont -hyppyjohtoa CP2102 -moduulin liittämiseen kuvan mukaisesti. Huomaa, että käytämme väliaikaisesti 3V3 -virtalähdettä, koska lineaarista säädintä ei ole vielä asennettu piirilevylle.
  9. Jos tietokoneellesi ei ole vielä asennettu Arduino IDE, hanki se täältä.
  10. Määritä ESP32 -tuki Arduino IDE: ssä tämän oppaan avulla.
  11. Aseta IDE: ssä työkalut> kortti "ESP32 Wrover Module".
  12. Liitä CP2102 -moduuli tietokoneen USB -porttiin.
  13. Aseta työkalut> portti IDE: ssä oikeaan CP2102: n USB -porttiin.
  14. Jos uusi portti ei tule näkyviin, kun CP2102 -moduuli asetetaan paikalleen, asenna tarvittava USB -ohjain Silicon Labsista.
  15. Tartu button_demo -luonnokseen.
  16. Kokoa ja lähetä luonnos.
  17. Kun lataus alkaa, pidä painettuna sekä EN- että IO0 -painikkeita. FI on pohjimmiltaan nollauspainike ja IO0 on kiinnitystappi, joka pakottaa salaman uudelleen ohjelmoimaan.
  18. Kun pisteet ja viivat näkyvät IDE: ssä, päästä EN -painike ylös (vapauta nollaus), mutta jatka IO0 -painikkeen painamista, kunnes salaman ohjelmointi alkaa olla varma, että vannetappi tunnistetaan käynnistyksen yhteydessä.
  19. Kun ohjelmointi on valmis, paina EN -painiketta uudelleen nollataksesi ja käynnistääksesi vasta vilkkuneen koodin.
  20. Avaa Arduino IDE Serial Monitor ja aseta se 115200 baudiin.
  21. IO0 -painikkeen painaminen tuottaa viestin sarjamonitoriin.

Vaihe 4: Painikkeet, summerit ja LEDit, OH MY

Painikkeet, summerit ja LEDit, OH MY!
Painikkeet, summerit ja LEDit, OH MY!

LISÄÄ PAINIKKEITA

Kun ensimmäinen ohjelmointivaihe on onnistunut, sammuta HB50 -kortti ja juota loput neljä painiketta. Saman button_demo -luonnoksen pitäisi nyt raportoida kaikki viisi painiketta (IO0, A, B, C ja D) sarjamonitorille, kun niitä painetaan.

SUMMERI

Sammuta HB50 -levy ja juota summeri sen tyynyille. Suuntaa summerin piste lähimpään HB50 -kortin "+" -alustaan. Ohjelmoi buzzer_demo -luonnos ja nollaa (EN) levy, jotta se toimii. Kuulostaa hyvältä?

WS2812B RGB -LEDit

Sammuta HB50 -kortti ja juota kuusi LEDiä tyynyilleen. Suuntaa jokaisen LED -valon valkoisesti merkitty kulma vastaamaan välilehtien kulmaa, kuten PCB -silkkipaino osoittaa.

Asenna FastLED -kirjasto Arduino IDE -työkaluista> Hallitse kirjastoja.

Avaa luonnos: Tiedosto> Esimerkit> FastLED> ColorPalette.

Vaihda luonnoskoodissa LED_PIN -arvoksi 13, NUM_LEDS -arvoon 6 ja LED_TYPE -asetukseksi WS2812B.

Lataa luonnos ja nollaa (EN) levy, jotta se toimii. Nauti vilkkuvista valoista kaikissa väreissä.

LINEAARINEN VIRRANSÄÄTÖ

Kun LED -valot ovat käytössä (ja varsinkin kun WiFi -lähetin on otettu käyttöön), HB50 ottaa paljon virtaa 3V3 -virtalähteestä. Parannetaan 3,3 V: n tehoa juottamalla AMS1117 (SOT 233 -paketti) lineaarinen säädin paikalleen. Täytä myös kaksi 22uF suodatinkondensaattoria säätimen vieressä. Huomaa, että jokaisen kondensaattorin silkkipainan toinen puoli on suorakulmainen ja toinen puoli, jos se on kahdeksankulmainen. Kondensaattoreiden tulee olla suunnattu siten, että pakkauksen tumma jäykkä linja on kahdeksankulmaisen silkkipuolen puolella. Säädin muuttaa nyt osan 5 V: n jännitteestä 3,3 V: ksi ja voi tarjota paljon enemmän virtaa kuin CP2102 -moduuli yksinään. Jos haluat nyt syöttää virtaa HB50 -laitteeseen 5 V: n virtalähteen kautta, siirrä 3V3 DuPont -hyppylaitteen molemmat päät 5 V: n päälle. Toisin sanoen lähde 5V CP2102 -moduulista johonkin HB50 -otsikon 5 V: n tulonastaan. Huomaa, että 5 V: n nasta voidaan itse asiassa syöttää millä tahansa jännitteellä 3,5–5 V.

Vaihe 5: ILI9341 QVGA -värinen TFT -LCD -näyttö

ILI9341 QVGA -värillinen TFT -LCD -näyttö
ILI9341 QVGA -värillinen TFT -LCD -näyttö

MSP2402 -näyttö (lcdwiki -sivu) on SPI -väylämoduuli, joka perustuu ILI9341 -siruun. Siru käyttää 2,4 tuuman värinäyttöä, joka tukee 65 000 väriä ja resoluutio on 320 x 240 pikseliä (QVGA).

Moduulissa on myös kosketusnäyttö ja SD -korttipaikka.

ESITESITYSNÄYTÖN I/O-PINSIT

Jos sinulla on ollut ongelmia ESP-WROOM-32-nastan juottamisen kanssa tähän asti, saattaa olla hyvä idea testata näyttömoduulin I/O-nastat ennen näyttömoduulin juottamista paikalleen. Kuten alla ja piirilevyn kaaviossa on esitetty, ESP32 IO: t ovat 19, 23, 18, 5, 22, 21 ja 15. Huomaa, että nämä ovat IO -numeroita eivätkä nastanumeroita. Nastat voidaan testata kirjoittamalla pieni ohjelma, joka asettaa kaikki nämä IO: t ulostuloiksi ja sitten silmukat kiertävät IO: iden läpi kytkemällä kunkin päälle ja pois vuorotellen toisen tai kahden viiveen välillä. Yksinkertaista LED-valoa, johon on liitetty virranrajoitinvastus, voidaan käyttää anturina varmistaakseen, että jokainen näytön otsikoihin kartoitettu IO-nasta (katso kaavio) on kytketty päälle ja pois päältä ja ettei yksikään niistä ole kytketty yhteen.

Kun kaikki nastat on tarkistettu, TFT -näyttö voidaan juottaa paikalleen sekä pitkillä että lyhyillä otsikoilla.

ASENNA JA MÄÄRITÄ TFT -KIRJASTO

Asenna TFT_eSPI -kirjasto Arduino IDE: työkalut> Hallitse kirjastoja -kohdasta

Siirry Arduino Libraries -kansioon. Avaa TFT_eSPI -kansio ja muokkaa tiedostoa User_Setup.h, niin voit määrittää moduuliohjaimen sirun, pikselitarkkuuden ja IO -nastat. Tee tämä varmistamalla, että määritelmät on (ei) kommentoitu alla esitetyllä tavalla ja asetettu arvoihin kuvan mukaisesti. Voit tarkistaa, että ne vastaavat piirilevyn kaavion liitäntöjä.

// Osa 1.

#define ILI9341_DRIVER #define TFT_WIDTH 240 #define TFT_HEIGHT 320 // Osa 2. // ESP32 -kehityskortille #define TFT_MISO 19 #define TFT_MOSI 23 #define TFT_SCLK 18 #define TFT_CS 5 #define TFT_DC 22 #define TF TFT_RST -1 // #define TFT_BL 32 #define TOUCH_CS 15

Avaa ja lataa luonnos:

Tiedosto> Esimerkit> TFT_eSPI> 320 x 240> Cellular_Automata

Tämä luonnos on hieno visuaalinen esitys Conwayn Elämän pelistä.

Hakkeri -purjelentokone voi kehittyä olemassaoloksi … pidä silmällä!

NÄYTÄ HACKERBOX -LOGO TFT -LCD -NÄYTÖLLÄ

Kokeile BitHeadDemo -luonnosta.

Vaihe 6: Kosketusnäytön käyttäjän syöttö

Kosketusnäytön käyttäjän syöttö
Kosketusnäytön käyttäjän syöttö

Seuraavaa luonnosta voidaan käyttää kosketusnäytön toimivuuden määrittämiseen ja testaamiseen:

Tiedosto> Esimerkit> TFT_eSPI> 320 x 240> Näppäimistö_240x320

"Lähetä" -painike lähettää syötetyn numeron sarjamonitorille 9600 baudilla.

Vaihe 7: CardKB I2C -näppäimistö

CardKB I2C -näppäimistö
CardKB I2C -näppäimistö

Tämä pieni kortti toteuttaa monipuolisen QWERTY-näppäimistön, jota voidaan käyttää melkein minkä tahansa mikro-ohjainprojektisi kanssa. Näppäimistö kommunikoi käyttämällä GROVE A -porttia (I2C -liitäntä) osoitteessa 0x5F. Painikeyhdistelmiä (Sym+Näppäin, Vaihto+Näppäin, Fn+Näppäin) tuetaan Rich Key -arvojen tulostamiseen.

Aloita yksinkertaisella CardKB_Serial -luonnoksella, joka kommunikoi näppäimistön kanssa GROVE I2C: n kautta ja toistaa näppäinpainallukset sarjamonitoriin. Luonnos voidaan suorittaa ESP32: lla (kuten HB50), Arduino UNO: lla, Arduino Nanolla tai millä tahansa alustalla, joka tukee I2C: tä.

Huomaa, että on olemassa kaksi erilaista Wire.begin -kutsua ESP32: lle ja UNO/Nanoille. Poista kommentti käyttämästäsi isännästä. Kytke keltaiset ja valkoiset GROVE -katkaisukaapelit kyseisellä koodirivillä määritettyihin nastoihin. Kytke punainen GROVE -katkaisukaapeli 5 V: iin ja musta GROVE -johto GND: hen.

Valmistajan dokumentaatiosivu. Huomaa, että vaikka CardKB-sisäinen mikro-ohjain on esiohjelmoitu, laiteohjelmistolähde on käytettävissä, jos haluat hakata näppäimistöä.

Vaihe 8:

Kuva
Kuva

Toivomme, että nautit tämän kuukauden HackerBox -seikkailusta elektroniikan ja tietotekniikan parissa. Ota yhteyttä ja jaa menestyksesi alla olevissa kommenteissa tai HackerBoxes Facebook -ryhmässä. Muista myös, että voit lähettää sähköpostia osoitteeseen [email protected] milloin tahansa, jos sinulla on kysyttävää tai tarvitset apua.

Mitä seuraavaksi? Liity vallankumoukseen. Elää HackLife. Hanki viileä pakkauslaitteisto, joka toimitetaan suoraan postilaatikkoosi joka kuukausi. Selaa HackerBoxes.com -sivustoa ja tilaa kuukausittainen HackerBox -tilauksesi.

Suositeltava: