Sisällysluettelo:

HackerBox 0051: MCU Lab: 10 vaihetta
HackerBox 0051: MCU Lab: 10 vaihetta

Video: HackerBox 0051: MCU Lab: 10 vaihetta

Video: HackerBox 0051: MCU Lab: 10 vaihetta
Video: MCU LAB Demo with Potentiometer and OLED Display 2024, Marraskuu
Anonim
HackerBox 0051: MCU Lab
HackerBox 0051: MCU Lab

Tervehdys HackerBox -hakkereille ympäri maailmaa! HackerBox 0051 esittelee HackerBox MCU Labin. MCU Lab on kehitysalusta, jolla voidaan testata, kehittää ja prototyyppejä mikro- ja mikro -ohjainmoduuleilla. Arduino Nano, ESP32 -moduuli ja SMT32 musta pilleri käytetään MCU Labin ominaisuuslohkojen tutkimiseen. MCU Lab -toimintolohkoihin kuuluvat kytkimet, painikkeet, LEDit, OLED -näyttö, summeri, potentiometri, RGB -pikseli, logiikan tasonsiirto, VGA -ulostulo, PS/2 -näppäimistötulo, USB -sarjaliitäntä ja kaksi juotonta prototyyppialuetta.

Tämä opas sisältää tietoja HackerBox 0051: n käytön aloittamisesta, ja sen voi 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 0051: lle

  • MCU -moduuli 1: Arduino Nano 5V, 16MHz
  • MCU -moduuli 2: WEMOS ESP32 Lite
  • MCU -moduuli 3: STM32F103C8T6 musta pilleri
  • Ainutlaatuinen MCU Lab -piirilevy
  • FT232RL USB -sarjasovitin
  • OLED 128x64 -näyttö I2C 0,96 tuumaa
  • Kaksisuuntainen 8-bittinen logiikan tasonvaihtaja
  • WS2812B RGB SMD LED
  • Neljä pinta -asennuksen kosketuspainiketta
  • Neljä punaista hajautettua 5 mm: n LEDiä
  • Pietsosummeri
  • HD15 VGA -liitin
  • Mini-DIN PS/2 -näppäimistöliitin
  • 100K ohmin potentiometri
  • 8 Aseta DIP -kytkin asentoon
  • AMS1117 3.3V lineaarinen säädin SOT223
  • Kaksi 22uF tantaalikondensaattoria 1206 SMD
  • Kymmenen 680 ohmin vastusta
  • Neljä liimautuvaa kumi -PCB -jalkaa
  • Kaksi 170 pisteen juotonta Mini -leipälevyä
  • Yksitoista 8 -napaista naarasliitinpistoketta
  • 40 -nastainen irrotettava otsikko
  • 65 miespuolisen hyppyjohtimen nippu
  • Korotettu nyrkki piirilevy tarra
  • Hack The Planet Smiley Pirate -tarra
  • Ainutlaatuinen HackerBox "Poista ennen lentoa" avaimenperä

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: HackerBoxes MCU Lab

HackerBoxes MCU Lab
HackerBoxes MCU Lab

MCU Lab on pienikokoinen, kiillotettu versio kehitysalustasta, jota käytämme prototyyppien ja testien suorittamiseen eri mikro -ohjaimiin (MCU) perustuvissa malleissa. Se on erittäin hyödyllinen käytettäessä MCU -moduuleja (kuten Arduino Nano, ESP32 DevKit jne.) Tai yksittäisiä MCU -laitepaketteja (kuten ATMEGA328, ATtiny85s, PIC, jne.). Kohde -MCU voidaan sijoittaa jompaankumpaan mini -juotetusta leipälevystä. Kaksi MCU: ta voidaan liittää yhteen käyttämällä molempia leipälevyjä tai yhtä leipälevyn tilaa voidaan käyttää muihin piireihin.

MCU Labin "ominaisuuslohkot" on jaettu naarasotsikoihin, jotka ovat samanlaisia kuin Arduino UNO: ssa. Naaraspäät ovat yhteensopivia urospuolisten hyppytappien kanssa.

Vaihe 3: Kokoa HackerBoxes MCU Lab

Kokoa HackerBoxes MCU Lab
Kokoa HackerBoxes MCU Lab

SMD -KOMPONENTIT HALLITUKSEN TAKAISIN

Aloita asentamalla AMS1117 (SOT 233 -paketti) lineaarinen säädin ja kaksi 22uF -suodatinkondensaattoria piirilevyn taakse. Huomaa, että jokaisen kondensaattorin silkkipainan toinen puoli on suorakulmainen ja toinen puoli kahdeksankulmainen. Kondensaattoreiden tulee olla suunnattu siten, että pakkauksen tumma jäykkä linja on kahdeksankulmaisen silkkipuolen puolella.

JATKA OSIEN KANSSA HALLITUKSEN ETUOSASSA

Juotos WS2812B RGB LED. Suuntaa jokaisen LED -valon valkoisesti merkitty kulma vastaamaan välilehtien kulmaa, kuten PCB -silkkipaino osoittaa.

Neljä kosketusnäppäintä SMD

Neljä punaista LEDiä neljällä vastuksella

Tasonsäädin, jossa VA -nasta lähimpänä 3V3 -merkintää ja VB -nasta lähimpänä 5V -merkintää. Level Shifter -moduuli voidaan asentaa suoraan piirilevyyn juottamalla otsikot moduuliin ja liu'uttamalla sitten mustat muoviset välikappaleet pois otsikoista ennen moduulin asentamista MCU Lab -piirilevyyn. Välikappaleiden jättäminen päälle on myös hyvä.

Kaksi otsikon liuskaa voidaan katkaista FT232 -moduulin liittämiseksi. Pienempää 4-nastaista otsikon osaa voidaan käyttää myös 5V/GND-otsikossa aivan FT232-moduulin vieressä.

Täytä toistaiseksi naaras VGA -otsikko, joka on lähimpänä HD15 VGA -liitintä ja näppäimistöliitäntää. ÄLÄ kuitenkaan aseta ylimääräistä otsikkoa yhden tai viiden vastuksen viereen näiden kahden otsikon väliin. Videosignaalin liitäntävaihtoehtoja käsitellään myöhemmin.

Täytä muut yhdeksän naarasotsikkoa.

Irrota liima molempien juottomien leipälevyjen takaa kiinnittääksesi ne MCU Lab -piirilevyyn.

Aseta liimattavat kumijalat MCU Lab -piirilevyn pohjaan suojataksesi työpöytäsi naarmuilta.

TEHOTULOJEN KÄSITTELY

On vähintään kaksi ja todennäköisimmin jopa neljä paikkaa, joissa virtaa voi tulla MCU -laboratorioon. Tämä voi aiheuttaa ongelmia, joten harkitse aina huolellisesti seuraavia ohjeita:

Kaikki 5V -otsikkopisteet on kytketty. 5V -kisko liitetään myös näppäimistön pistorasiaan, tasonsiirtimeen ja WS2812B RGB -LEDiin. Virta voidaan syöttää 5V -kiskoon kytkemällä FT232 USB -liitäntään, kytkemällä nelinapainen virtapistoke ulkoiseen virtalähteeseen tai kytkemällä hyppyjohdin PCB: n 5V -nastaisesta virtalähteeseen (yleensä USB -virtalähde)).

Samoin kaikki GND -nastat on kytketty. Ne muodostavat yhteyden FT232: n USB GND: hen (olettaen, että USB on liitetty FT232: een). Ne voidaan myös kytkeä maahan käyttämällä hyppyjohdinta toisen välissä ja virtamoduulia, kuten 5V -verkossa on neuvoteltu.

3V3 -kiskoa ohjaa piirilevyn takana oleva säädin. Se on vain lähde, ja (toisin kuin 5 V: n kisko) sitä ei pitäisi käyttää millään moduulilla tai muulla piirillä, koska sitä käytetään suoraan 5 V: n kiskon säätimestä.

Vaihe 4: Arduino Nano MCU -moduuli

Arduino Nano MCU -moduuli
Arduino Nano MCU -moduuli

Yksi nykyään yleisimmistä MCU -moduuleista on Arduino Nano. Mukana tulevassa Arduino Nano -kortissa on otsikkotapit, mutta niitä ei ole juotettu moduuliin. Jätä nastat toistaiseksi pois. Suorita nämä ensimmäiset testit Arduino Nano -moduulilla ennen juottamista otsikkotappeihin. Tarvitset vain microUSB -kaapelin ja Arduino Nano -kortin juuri sellaisena kuin se tulee pussista.

Arduino Nano on pinta-asennettava, leipälautaystävällinen, pienikokoinen Arduino-levy, jossa on integroitu USB. Se on hämmästyttävän monipuolinen ja helppo hakata.

Ominaisuudet:

  • Mikro -ohjain: Atmel ATmega328P
  • Jännite: 5V
  • Digitaaliset I/O -nastat: 14 (6 PWM)
  • Analogiset tulonastat: 8
  • DC -virta per I/O -nasta: 40 mA
  • Flash -muisti: 32 kt (2 kt käynnistyslataimelle)
  • SRAM: 2 kt
  • EEPROM: 1 kt
  • Kellotaajuus: 16 MHz
  • Mitat: 17 x 43 mm

Tämä Arduino Nanon muunnelma on musta Robotdyn Nano. Sisältää sisäisen MicroUSB-portin, joka on liitetty CH340G USB/Serial Bridge -siruun. Yksityiskohtaiset tiedot CH340: stä (ja tarvittaessa ohjaimista) löydät täältä.

Kun liität Arduino Nanon ensimmäisen kerran tietokoneen USB -porttiin, vihreän virran merkkivalon pitäisi syttyä ja pian sen jälkeen, kun sininen LED -valo alkaa vilkkua hitaasti. Tämä johtuu siitä, että Nano on esiladattu BLINK-ohjelmalla, joka toimii uudella Arduino Nanolla.

OHJELMISTO: Jos sinulla ei vielä ole Arduino IDE: tä asennettuna, voit ladata sen osoitteesta Arduino.cc

Liitä Nano MicroUSB -kaapeliin ja kaapelin toinen pää tietokoneen USB -porttiin. Käynnistä Arduino IDE -ohjelmisto. Valitse "Arduino Nano" IDE: ssä kohdasta Työkalut> kortti ja "ATmega328P (vanha käynnistyslatain)" kohdasta Työkalut> suoritin. Valitse sopiva USB -portti kohdasta Työkalut> portti (se on todennäköisesti nimi, jossa on "wchusb").

Lataa lopuksi esimerkikoodi: Tiedosto-> Esimerkit-> Perustiedot-> Vilkkuu

Blink on itse asiassa koodi, joka oli esiladattu nanolle ja jonka pitäisi toimia juuri nyt, jotta sininen LED vilkkuu hitaasti. Näin ollen, jos lataamme tämän esimerkkikoodin, mikään ei muutu. Muokataan sen sijaan koodia hieman.

Tarkasti katsottuna näet, että ohjelma kytkee LED -valon päälle, odottaa 1000 millisekuntia (yksi sekunti), sammuttaa LED -valon, odottaa toisen sekunnin ja tekee sitten kaiken uudelleen - ikuisesti.

Muokkaa koodia vaihtamalla molemmat "delay (1000)" -lausekkeet tilaan "delay (100)". Tämä muutos saa LED -valon vilkkumaan kymmenen kertaa nopeammin, eikö?

Ladataan muokattu koodi nanoon napsauttamalla UPLOAD -painiketta (nuolikuvake) juuri muokatun koodisi yläpuolella. Katso koodin alta tilatiedot: "kokoaminen" ja sitten "lataaminen". Lopulta IDE: n pitäisi osoittaa "Lataus valmis" ja LED -valon pitäisi vilkkua nopeammin.

Jos näin on, onnittelut! Olet juuri hakkeroinut ensimmäisen upotetun koodin.

Kun nopea vilkkuva versio on ladattu ja käynnissä, miksi et katso, voitko vaihtaa koodin uudelleen niin, että LED-valo vilkkuu nopeasti kahdesti ja odota sitten muutama sekunti ennen toistamista? Kokeile! Entä muut mallit? Kun olet onnistunut visualisoimaan halutun tuloksen, koodaamaan sen ja havaitsemaan sen toimivan suunnitellusti, olet ottanut valtavan askeleen kohti pätevää laitteistohakkeria.

Nyt kun olet vahvistanut Nano -moduulin toiminnan, jatka ja juota otsikkotapit siihen. Kun otsikot on kytketty, moduulia voidaan helposti käyttää yhdessä MCU Labin juottamattomista leipälevyistä. Tämä MCU -moduulin testausprosessi lataamalla yksinkertainen testikoodi, muokkaamalla ja lataamalla uudelleen on paras käytäntö aina, kun käytät uutta tai eri tyyppistä MCU -moduulia.

Jos haluat lisätietoa Arduinon ekosysteemissä työskentelystä, suosittelemme tutustumaan HackerBoxes Starter Workshopin oppaaseen, joka sisältää useita esimerkkejä ja linkin PDF -Arduino -oppikirjaan.

Vaihe 5: Tutustu MCU -laboratorioon Arduino Nanon avulla

Tutustu MCU -laboratorioon Arduino Nanon avulla
Tutustu MCU -laboratorioon Arduino Nanon avulla

POTENTIOMETRI

Liitä potentiometrin keskitappi Nano -nastaan A0.

Lataa ja suorita: Esimerkkejä> Analoginen> Analogitulo

Esimerkki on oletusarvoisesti nanon sisäinen LED. Muuta vilkkumisnopeutta kääntämällä potentiometriä.

Muuttaa:

Muuta koodissa LedPin = 13 - 4

Hyppääjä Nano Pin 4: stä (ja GND: stä) yhteen MCU Labin punaisista LEDeistä.

SUMMERI

Hyppääjä summerista Nano -nastaan 8. Varmista, että kortin GND on kytketty virtalähteenä toimivan Nanon GND: hen, koska summerin maadoitus on kiinteästi kytketty levyn GND -verkkoon.

Lataa ja suorita: Esimerkkejä> Digitaalinen> toneMelody

OLED -NÄYTTÖ

Asenna "ssd1306" Alexey Dynalta Arduino IDE: ssä kirjastonhallinnan avulla.

Liitä OLED: GND - GND, VCC - 5 V, SCL - nanon A5, SDA - nanon A4

Lataa ja suorita: Esimerkkejä> ssd1306> demot> ssd1306_demo

WS2812B RGB -LED

Asenna FastLED Arduino IDE: ssä kirjastonhallinnan avulla

Liitä WS2812: n nastatappi nanon nastaan 5.

Lataa: Esimerkkejä> FastLED> ColorPalette

Muuta NUM_LEDS arvoksi 1 ja LED_TYPE -asetukseksi WS2812B

Käännä ja suorita

KIRJOITA JOKA KOODI PAINIKKEIDEN JA KYTKIMIEN HARJOITTAMISEKSI

Muista käyttää pinMode -toimintoa (INPUT_PULLUP) painikkeen lukemiseen lisäämättä vastusta.

Yhdistä osa näistä esimerkeistä yhdessä

Voit esimerkiksi kiertää lähdöt jollakin mielenkiintoisella tavalla ja näyttää tilat tai syöttöarvot OLED- tai sarjamonitorissa.

Vaihe 6: WEMOS ESP32 Lite

WEMOS ESP32 Lite
WEMOS ESP32 Lite

ESP32-mikrokontrolleri (MCU) on edullinen, pienitehoinen järjestelmä sirulla (SOC), jossa on integroitu Wi-Fi ja kaksitilainen Bluetooth. ESP32 käyttää Tensilica Xtensa LX6 -ydintä ja sisältää sisäänrakennetut antennikytkimet, RF-balunin, tehovahvistimen, hiljaisen vastaanottovahvistimen, suodattimet ja virranhallintamoduulit. (wikipedia)

WEMOS ESP32 Lite -moduuli on pienempi kuin edellinen versio, mikä helpottaa käyttöä juottamattomalla leipälevyllä.

Tee ensimmäinen testi WEMOS ESP32 -moduulille ennen juotosnappien kiinnittämistä moduuliin.

Aseta ESP32 -tukipaketti Arduino IDE: hen.

Valitse Työkalut> taulu -kohdasta "WeMos LOLIN32"

Lataa esimerkkikoodi kohdasta Tiedostot> Esimerkit> Perusteet> Vilkku ja ohjelmoi se WeMos LOLIN32: een

Esimerkkiohjelman pitäisi saada moduulin LED vilkkua. Kokeile viiveparametrien muuttamista niin, että LED vilkkuu eri kuvioilla. Tämä on aina hyvä harjoitus rakentaa luottamusta uuden mikrokontrollerimoduulin ohjelmointiin.

Kun olet tyytyväinen moduulin toimintaan ja sen ohjelmointiin, juota varovasti kaksi riviä otsikkotappeja paikalleen ja testaa latausohjelmat uudelleen.

Vaihe 7: ESP32 -videon luominen

Image
Image

Tämä video esittelee ESP32 VGA -kirjastoa ja erittäin mukavaa, yksinkertaista opetusohjelmaa bitlunin laboratoriosta.

Esitetty 3-bittinen toteutus (8 väriä) käyttää suoria lankahyppyjä ESP32-moduulin ja VGA-liittimen välillä. Näiden liitäntöjen tekeminen MCU Labin VGA -otsikossa on melko helppoa, koska siihen ei liity muita komponentteja.

Käytettävästä MCU: sta, sen jännitetasosta, pikselin resoluutiosta ja halutusta värisyvyydestä riippuen MCU: n ja VGA-otsikon väliin voidaan sijoittaa erilaisia yhdistettyjä vastuksia ja vastusverkkoja. Jos päätät käyttää pysyvästi inline -vastuksia, ne voidaan juottaa MCU Lab -piirilevyyn. Jos haluat säilyttää joustavuuden ja etenkin jos haluat käyttää monimutkaisempia ratkaisuja, on suositeltavaa olla juottamatta mitään vastuksia paikalleen ja käyttää vain juotottomia levyjä ja VGA -otsikkoa tarvittavien vastuksien liittämiseen.

Esimerkiksi videon lopussa esitetyn bitunin 14-bittisen väritilan toteuttamiseksi ESP32-moduuli voidaan sijoittaa jollekin juottamattomalle mini-levylle ja toista juotonta levyä voidaan käyttää vastusportaiden liittämiseen.

Tässä muutamia muita esimerkkejä:

HackerBox 0047: ssä Arduino Nano käyttää yksinkertaista VGA -lähtöä, jossa on 4 vastusta.

VIC20 -emulaattori on toteutettu ESP32: ssa käyttäen FabGL: ää ja 6 vastusta.

Toteuta BASIC PC käyttämällä ESP32- ja 3 -vastuksia.

Pelaa Space Invadersia ESP32: lla FabGL: n ja 6 vastuksen avulla.

Luo VGA -lähtö STM32: lle 6 vastuksella.

Samanaikaiset teksti- ja grafiikkatasot STM32: ssa, jossa on videoesittely.

Vaihe 8: STM32F103C8T6 mustan pillerin MCU -moduuli

TXS0108E 8-bittinen logiikan tasonvaihtaja
TXS0108E 8-bittinen logiikan tasonvaihtaja

Musta pilleri on STM32-pohjainen MCU-moduuli. Se on parannettu muunnelma tavallisesta Blue Pillistä ja harvinaisemmasta Red Pillistä.

Musta pilleri sisältää STM32F103C8T6 32-bittisen ARM M3 -mikro-ohjaimen (tietolomake), nelinapaisen ST-Link-otsikon, MicroUSB-portin ja PB12: n käyttäjän LED-valon. PA12: n oikea vetovastus on asennettu, jotta USB-portti toimii oikein. Tämä vetäminen vaati tyypillisesti levyn muutosta muilla pillereillä.

Vaikka ulkonäöltään samanlainen kuin Arduino Nano, musta pilleri on paljon tehokkaampi. 32 -bittinen STM32F103C8T6 ARM -mikrokontrolleri voi toimia 72 MHz: llä. Se voi suorittaa yhden jakson kertomisen ja laitteiston jakamisen. Siinä on 64 Kt Flash -muistia ja 20 Kt SRAM -muistia.

STM32: n ohjelmointi Arduino IDE: ltä.

Vaihe 9: TXS0108E 8-bittinen logiikan tasonvaihtaja

TXS0108E (tietolomake) on 8-bittinen kaksisuuntainen logiikan tasonsiirto. Moduuli on asetettu tasonsiirtosignaaleille välillä 3.3V ja 5V.

Koska signaalitason kanavat ovat kaksisuuntaisia, kelluvat tulot voivat aiheuttaa vastaavien lähtöjen tahattoman käytön. Lähdön käyttöönoton (OE) ohjaus on suojattu tällaisissa tilanteissa. On huolehdittava siitä, miten vaihdelaite on kytketty, varmistaakseen, että vaihteen ulostulo (joko "tahallinen" tai toisella puolella olevan kelluvan tulon takia) ei koskaan saa ylittää toisen laitteen lähtöä.

OE -tappi jätetään irrottamatta piirilevyn jälkiin. Moduulin alla on kaksinapainen otsikko OE: n ja 3V3: n liittämistä varten. Kaksinapaisen otsikon oikosulku (käyttämällä johdinta tai hyppylohkoa) yhdistää OE: n 3V3: een, jolloin IC voi ohjata ulostulojaan. OE -nastaan voidaan liittää myös alasvetovastus ja logiikkaohjaus.

Vaihe 10: HackLife

HackLife
HackLife

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: