Turinys:

„HackerBox 0051“: MCU laboratorija: 10 žingsnių
„HackerBox 0051“: MCU laboratorija: 10 žingsnių

Video: „HackerBox 0051“: MCU laboratorija: 10 žingsnių

Video: „HackerBox 0051“: MCU laboratorija: 10 žingsnių
Video: MCU LAB Demo with Potentiometer and OLED Display 2024, Liepa
Anonim
„HackerBox 0051“: MCU laboratorija
„HackerBox 0051“: MCU laboratorija

Sveikiname HackerBox įsilaužėlius visame pasaulyje! „HackerBox 0051“pristato „HackerBox MCU Lab“. „MCU Lab“yra kūrimo platforma, skirta išbandyti, kurti ir sukurti prototipą naudojant mikrovaldiklius ir mikrovaldiklių modulius. „Arduino Nano“, ESP32 modulis ir „SMT32 Black Pill“naudojami MCU laboratorijos funkcijų blokams tyrinėti. „MCU Lab“funkcijų blokuose yra jungikliai, mygtukai, šviesos diodai, OLED ekranas, garsinis signalas, potenciometras, RGB pikseliai, loginio lygio perjungiklis, VGA išvestis, PS/2 klaviatūros įvestis, USB nuosekli sąsaja ir dvigubos be litavimo prototipų sritys.

Šiame vadove yra informacijos, kaip pradėti naudotis „HackerBox 0051“, kurią galite įsigyti čia, kol pasibaigs prekės. Jei norėtumėte kiekvieną mėnesį gauti tokią „HackerBox“tiesiai į savo pašto dėžutę, užsiprenumeruokite „HackerBoxes.com“ir prisijunkite prie revoliucijos!

„HackerBoxes“yra mėnesio prenumeratos dėžutės paslauga, skirta aparatūros įsilaužėliams ir elektronikos bei kompiuterinių technologijų entuziastams. Prisijunk prie mūsų ir gyvenk HACK LIFE.

1 veiksmas: „HackerBox 0051“turinio sąrašas

  • MCU 1 modulis: Arduino Nano 5V, 16MHz
  • MCU 2 modulis: WEMOS ESP32 Lite
  • MCU 3 modulis: STM32F103C8T6 juodos tabletės
  • Išskirtinė MCU laboratorijos spausdintinė plokštė
  • FT232RL USB serijos adapteris
  • OLED 128x64 ekranas I2C 0,96 colio
  • Dvipusis 8 bitų loginio lygio perjungiklis
  • WS2812B RGB SMD šviesos diodas
  • Keturi prisilietimo prie paviršiaus tvirtinimo mygtukai
  • Keturi raudonai išsklaidyti 5 mm šviesos diodai
  • Pjezo garsinis signalas
  • HD15 VGA jungtis
  • Mini-DIN PS/2 klaviatūros jungtis
  • 100K omų potenciometras
  • 8 Padėkite DIP jungiklį
  • AMS1117 3.3V linijinis reguliatorius SOT223
  • Du 22uF tanto kondensatoriai 1206 SMD
  • Dešimt 680 omų rezistorių
  • Keturios lipnios guminės PCB pėdos
  • Dvi 170 taškų „Mini Solderless“duonos lentos
  • Vienuolika 8 kontaktų moteriškų antgalių lizdų
  • 40 kontaktų „Breakaway“antraštė
  • 65 vyrų jungiamųjų laidų rinkinys
  • Pakeltos kumštinės grandinės plokštės lipdukas
  • „Hack The Planet Smiley“piratų lipdukas
  • Išskirtinis „HackerBox“raktų pakabukas „Pašalinti prieš skrydį“

Kai kurie kiti dalykai, kurie bus naudingi:

  • Lituoklis, lydmetalis ir pagrindiniai litavimo įrankiai
  • Kompiuteris programinės įrangos įrankiams paleisti

Svarbiausia, kad jums reikės nuotykių jausmo, įsilaužėlių dvasios, kantrybės ir smalsumo. Elektronikos kūrimas ir eksperimentavimas, nors ir labai naudingas, kartais gali būti sudėtinga, sudėtinga ir net varginanti. Tikslas yra pažanga, o ne tobulumas. Kai ištveriate ir mėgaujatės nuotykiais, iš šio pomėgio galite gauti daug pasitenkinimo. Ženkite kiekvieną žingsnį lėtai, apgalvokite smulkmenas ir nebijokite prašyti pagalbos.

„HackerBoxes“DUK yra daug informacijos esamiems ir būsimiems nariams. Beveik į visus gautus netechninės pagalbos el. Laiškus ten jau atsakyta, todėl tikrai dėkojame, kad skiriate kelias minutes skaityti DUK.

2 žingsnis: „HackerBoxes MCU Lab“

„HackerBoxes MCU Lab“
„HackerBoxes MCU Lab“

„MCU Lab“yra kompaktiška, šlifuota kūrimo platformos versija, kurią naudojame įvairių mikrovaldiklių (MCU) dizaino prototipų kūrimui ir bandymui. Tai labai naudinga dirbant su MCU moduliais (pvz., „Arduino Nano“, ESP32 „DevKit“ir kt.) Arba su atskirais MCU įrenginių paketais (pvz., ATMEGA328, ATtiny85, PIC ir kt.). Tikslinis MCU gali būti dedamas į bet kurią iš mini lituoklių neturinčių lentų. Du MCU gali būti sujungti tarpusavyje naudojant abi duonos lentas arba vieną iš duonos lentos vietų galima naudoti kitoms grandinėms.

MCU laboratorijos „funkcijų blokai“yra suskirstyti į moterų antraštes, panašias į tas, kurios yra „Arduino UNO“. Moteriškos antraštės yra suderinamos su vyriškais megztiniais.

3 žingsnis: Surinkite „HackerBoxes MCU Lab“

Surinkite „HackerBoxes MCU Lab“
Surinkite „HackerBoxes MCU Lab“

SMD KOMPONENTAI LENTOS NUGALĖJE

Pirmiausia sumontuokite linijinį reguliatorių AMS1117 (SOT 233 paketas) ir du 22uF filtro kondensatorius ant PCB. Atkreipkite dėmesį, kad kiekvienos kondensatoriaus šilkografijos viena pusė yra stačiakampė, o kita - aštuonkampė. Kondensatoriai turi būti nukreipti taip, kad tamsi pakuotė sutaptų su aštuonkampiu šilkografijos šonu.

TĘSKITE SU KOMPONENTAIS LENGOS PRIEŠ

Lituokite WS2812B RGB šviesos diodą. Kiekvieną šviesos diodą pažymėkite baltai pažymėtą kampą, kad jis atitiktų skirtukų kampą, kaip parodyta PCB šilkografijoje.

Keturi SMD lytėjimo mygtukai

Keturi raudoni šviesos diodai su keturiais rezistoriais

Lygio perjungiklis su VA kaiščiu arčiausiai 3V3 žymėjimo ir VB kaiščiu arčiausiai 5V žymėjimo. „Level Shifter“modulį galima montuoti lygiagrečiai prie PCB, lituojant antraštes prie modulio, o tada nuimant juodus plastikinius tarpiklius nuo antraščių prieš montuojant modulį prie „MCU Lab“PCB. Taip pat gerai palikti tarpiklius.

Norėdami prijungti FT232 modulį, galite išardyti dvi antraštės juosteles. Mažesnė 4 kontaktų antraštės dalis taip pat gali būti naudojama 5V/GND antraštei šalia FT232 modulio.

Kol kas užpildykite moterišką VGA antraštę, esančią arčiausiai HD15 VGA jungties ir klaviatūros lizdo. Tačiau NENAUDOKITE papildomos antraštės, esančios greta vieno ar penkių rezistorių tarp šių dviejų antraščių. Konkrečios vaizdo signalo sąsajos parinktys aptariamos vėliau.

Užpildykite kitas devynias moterų antraštes.

Nuimkite klijus nuo abiejų be litavimo skirtų lentų, kad pritvirtintumėte jas prie MCU Lab PCB.

Padėkite lipnias gumines kojeles prie MCU Lab PCB apačios, kad apsaugotumėte savo darbo stalą nuo įbrėžimų.

MAITINIMO TVARKYMAS

Yra mažiausiai dvi, o greičiausiai net keturios vietos, kur į MCU laboratoriją gali patekti elektros energijos. Tai gali sukelti problemų, todėl visada atidžiai apsvarstykite šiuos patarimus:

Visi antraštės taškai, pažymėti 5V, yra sujungti. 5V bėgelis taip pat jungiamas prie klaviatūros lizdo, lygio perjungiklio ir WS2812B RGB šviesos diodo. Maitinimas gali būti tiekiamas į 5V bėgelį, prijungus FT232 prie USB, prijungus keturių kontaktų maitinimo jungtį prie išorinio maitinimo šaltinio arba prijungus trumpiklį iš vieno iš 5V kaiščio PCB prie maitinamo 5V modulio (paprastai maitinamas USB).

Panašiai visi GND kaiščiai yra prijungti. Jie jungiasi prie FT232 USB GND (darant prielaidą, kad USB prijungtas prie FT232). Jie taip pat gali būti prijungti prie žemės naudojant jungiklį tarp vieno iš jų ir maitinamąjį modulį, kaip aptarta 5V tinklui.

3V3 bėgelį valdo reguliatorius, esantis PCB gale. Tai tik šaltinis ir (skirtingai nei 5 V bėgis) jis neturėtų būti varomas jokiais moduliais ar kitomis grandinėmis, nes jis varomas tiesiai iš 5 V bėgio reguliatoriaus.

4 žingsnis: „Arduino Nano“MCU modulis

„Arduino Nano“MCU modulis
„Arduino Nano“MCU modulis

Vienas iš labiausiai paplitusių MCU modulių šiais laikais yra „Arduino Nano“. Komplekte esanti „Arduino Nano“plokštė yra su kaiščiais, tačiau jie nėra prilituoti prie modulio. Kol kas palikite kaiščius. Atlikite šiuos pradinius „Arduino Nano“modulio bandymus prieš litavimą ant antraštės kaiščių. Viskas, ko reikia, yra „microUSB“kabelis ir „Arduino Nano“plokštė tokia, kokia yra iš maišelio.

„Arduino Nano“yra ant paviršiaus tvirtinama, prie duonos lentos pritaikyta, miniatiūrinė „Arduino“plokštė su integruotu USB. Jis yra nuostabiai pilnavertis ir lengvai nulaužiamas.

Funkcijos:

  • Mikrovaldiklis: Atmel ATmega328P
  • Įtampa: 5V
  • Skaitmeniniai įvesties/išvesties kaiščiai: 14 (6 PWM)
  • Analoginės įvesties kaiščiai: 8
  • DC srovė vienam įvesties/išvesties kaiščiui: 40 mA
  • „Flash“atmintis: 32 KB (2 KB įkrovos įkrovikliui)
  • SRAM: 2 KB
  • EEPROM: 1 KB
  • Laikrodžio greitis: 16 MHz
  • Matmenys: 17 mm x 43 mm

Šis konkretus „Arduino Nano“variantas yra juodas „Robotdyn Nano“. Komplekte yra įmontuotas „MicroUSB“prievadas, prijungtas prie CH340G USB/nuoseklaus tilto lusto. Išsamią informaciją apie CH340 (ir vairuotojus, jei reikia) rasite čia.

Kai pirmą kartą prijungiate „Arduino Nano“prie kompiuterio USB prievado, turi užsidegti žalia maitinimo lemputė ir netrukus po to, kai mėlynas šviesos diodas pradeda lėtai mirksėti. Taip atsitinka todėl, kad „Nano“yra iš anksto įkelta BLINK programa, kuri veikia visiškai naujame „Arduino Nano“.

PROGRAMINĖ ĮRANGA: Jei dar neįdiegėte „Arduino IDE“, galite ją atsisiųsti iš „Arduino.cc“

Prijunkite „Nano“prie „MicroUSB“kabelio, o kitą laido galą - prie kompiuterio USB prievado. Paleiskite „Arduino IDE“programinę įrangą. Pasirinkite „Arduino Nano“IDE skiltyje įrankiai> lenta ir „ATmega328P (senas įkrovos įkėlimo įrenginys)“skiltyje įrankiai> procesorius. Pasirinkite tinkamą USB prievadą skiltyje Įrankiai> prievadas (greičiausiai tai pavadinimas su „wchusb“).

Galiausiai įkelkite pavyzdžio kodo fragmentą: Failas-> Pavyzdžiai-> Pagrindai-> Mirksėti

Mirksėjimas iš tikrųjų yra kodas, kuris buvo iš anksto įkeltas į „Nano“ir turėtų veikti dabar, kad lėtai mirksėtų mėlynas šviesos diodas. Atitinkamai, jei įkelsime šį pavyzdinį kodą, niekas nepasikeis. Vietoj to, šiek tiek pakeiskime kodą.

Atidžiai įsižiūrėję matote, kad programa įjungia šviesos diodą, laukia 1000 milisekundžių (vieną sekundę), išjungia šviesos diodą, laukia dar sekundės ir tada viską daro iš naujo - visam laikui.

Pakeiskite kodą, pakeisdami abu „uždelsimo (1000)“teiginius į „uždelsimas (100)“. Dėl šio pakeitimo šviesos diodas mirksės dešimt kartų greičiau, tiesa?

Įkelkime modifikuotą kodą į „Nano“spustelėdami mygtuką UPLOAD (rodyklės piktograma) tiesiai virš jūsų modifikuoto kodo. Žemiau žiūrėkite būsenos informacijos kodą: „kompiliavimas“, tada „įkėlimas“. Galiausiai IDE turėtų rodyti „Įkėlimas baigtas“, o jūsų šviesos diodas turėtų mirksėti greičiau.

Jei taip, sveikinu! Jūs ką tik nulaužėte savo pirmąjį įterptąjį kodą.

Kai jūsų greito mirksėjimo versija bus įkelta ir paleista, kodėl gi nepažiūrėjus, ar galite dar kartą pakeisti kodą, kad šviesos diodas greitai mirksėtų du kartus, tada palaukite porą sekundžių prieš kartodami? Pabandyk! O kaip kiti modeliai? Kai pavyks įsivaizduoti norimą rezultatą, jį užkoduoti ir stebėti, kaip jis veikia, kaip planuota, žengėte didžiulį žingsnį, kad taptumėte kompetentingu programinės įrangos įsilaužėliu.

Dabar, kai patvirtinote „Nano“modulio veikimą, eikite į priekį ir lituokite ant jo kaiščius. Prijungus antraštes, modulį galima lengvai naudoti vienoje iš MCU Lab laboratorijos be litavimo duonos lentų. Šis MCU modulio testavimo procesas, atsisiunčiant paprastą bandomąjį kodą, jį modifikuojant ir dar kartą atsisiunčiant, yra geriausia praktika, kai naudojamas naujas arba kitokio tipo MCU modulis.

Jei norite papildomos įvadinės informacijos apie darbą „Arduino“ekosistemoje, siūlome peržiūrėti „HackerBoxes Starter Workshop“vadovą, kuriame yra keletas pavyzdžių ir nuoroda į PDF „Arduino“vadovėlį.

5 veiksmas: tyrinėkite MCU laboratoriją naudodami „Arduino Nano“

Naršykite MCU laboratoriją su „Arduino Nano“
Naršykite MCU laboratoriją su „Arduino Nano“

POTENCIOMETRAS

Centrinį potenciometro kaištį prijunkite prie „Nano Pin A0“.

Įkelti ir paleisti: Pavyzdžiai> Analoginis> AnalogInput

Pavyzdyje numatytasis „Nano“borto šviesos diodas. Norėdami pakeisti mirksėjimo greitį, pasukite potenciometrą.

Keisti:

Kode pakeiskite LedPin = 13 į 4

Trumpiklis nuo „Nano Pin 4“(ir GND) prie vieno iš raudonų MCU laboratorijos šviesos diodų.

BUZZERIS

Perjungiklis nuo „Buzzer“iki „Nano Pin“8. Įsitikinkite, kad plokštės GND yra prijungtas prie maitinamo „Nano“GND, nes garsinis signalas yra tvirtai prijungtas prie plokštės GND tinklo.

Įkelti ir paleisti: Pavyzdžiai> Skaitmeninis> toneMelody

OLED EKRANAS

„Arduino IDE“naudokite bibliotekos tvarkyklę, kad įdiegtumėte „ssd1306“iš Aleksejaus Dynos.

Prijunkite OLED: GND prie GND, VCC prie 5V, SCL prie Nano A5, SDA prie Nano A4

Įkelti ir paleisti: pavyzdžiai> ssd1306> demonstracinės versijos> ssd1306_demo

WS2812B RGB šviesos diodas

„Arduino IDE“naudokite bibliotekos tvarkyklę, kad įdiegtumėte „FastLED“

Prijunkite WS2812 antraštės kaištį prie „Nano“kaiščio 5.

Įkelti: Pavyzdžiai> FastLED> ColorPalette

Pakeiskite NUM_LEDS į 1, o LED_TYPE - į WS2812B

Sudarykite ir paleiskite

UŽRAŠYKITE KAŽKĄ KODĄ, PATIRTINKITE MYGTUKUS IR JUNGIKLIUS

Nepamirškite naudoti „pinMode“(INPUT_PULLUP) mygtukui skaityti nepridedant rezistoriaus.

SUDERINK DALĮ ŠIŲ PAVYZDŽIŲ KARTU

Pavyzdžiui, įdomiu būdu ciklus išveskite ir parodykite būsenas ar įvesties vertes OLED arba nuosekliajame monitoriuje.

6 veiksmas: „WEMOS ESP32 Lite“

„WEMOS ESP32 Lite“
„WEMOS ESP32 Lite“

ESP32 mikrovaldiklis (MCU) yra nebrangi, mažos galios lusto (SOC) sistema su integruotu „Wi-Fi“ir dviejų režimų „Bluetooth“. ESP32 naudoja „Tensilica Xtensa LX6“branduolį, jame yra įmontuoti antenos jungikliai, RF balun, galios stiprintuvas, mažo triukšmo imtuvo stiprintuvas, filtrai ir galios valdymo moduliai. (wikipedia)

„WEMOS ESP32 Lite“modulis yra kompaktiškesnis nei ankstesnė versija, todėl jį lengviau naudoti be lituoklio.

Prieš lituodami antraštės kaiščius ant modulio, iš pradžių išbandykite WEMOS ESP32 modulį.

Nustatykite ESP32 palaikymo paketą „Arduino IDE“.

Skiltyje Įrankiai> lenta būtinai pasirinkite „WeMos LOLIN32“

Įkelkite pavyzdinį kodą į Failai> Pavyzdžiai> Pagrindai> Blink ir užprogramuokite jį „WeMos LOLIN32“

Pavyzdinė programa turėtų sukelti modulio šviesos diodo mirksėjimą. Eksperimentuokite su vėlavimo parametrų keitimu, kad šviesos diodas mirksėtų skirtingai. Tai visada yra geras pratimas ugdyti pasitikėjimą programuojant naują mikrovaldiklio modulį.

Kai būsite patenkinti modulio veikimu ir jo programavimu, atsargiai lituokite dvi eilutes antraštės kaiščių į vietą ir dar kartą išbandykite įkėlimo programas.

7 žingsnis: ESP32 vaizdo įrašų generavimas

Image
Image

Šis vaizdo įrašas demonstruoja ESP32 VGA biblioteką ir labai gražią, paprastą pamoką iš bitluni laboratorijos.

Demonstruotas 3 bitų diegimas (8 spalvos) naudoja tiesioginius laidinius jungiklius tarp ESP32 modulio ir VGA jungties. Šių jungčių prijungimas prie „MCU Lab“VGA antraštės yra gana lengvas, nes nėra jokių papildomų komponentų.

Atsižvelgiant į naudojamą MCU, jo įtampos lygį, pikselių skiriamąją gebą ir norimą spalvų gylį, tarp MCU ir VGA antraštės gali būti įvairių įterptųjų rezistorių ir rezistorių tinklų derinių. Jei nuspręsite nuolat naudoti inline rezistorius, jie gali būti lituojami ant MCU Lab PCB. Jei norite išlaikyti lankstumą ir ypač jei norite naudoti sudėtingesnius sprendimus, rekomenduojama ne lituoti jokių rezistorių į savo vietas, o tiesiog naudoti naudojant be litavimo plokštes ir VGA antraštę, kad prijungtumėte reikiamus rezistorius.

Pavyzdžiui, norint įdiegti 14 bitų spalvų bituni režimą, parodytą vaizdo įrašo pabaigoje, ESP32 modulį galima pastatyti ant vienos iš mini plokščių be litavimo, o kitą be litavimo plokštę galima prijungti prie rezistorių kopėčių.

Štai keletas kitų pavyzdžių:

„HackerBox 0047“„Arduino Nano“valdo paprastą VGA išvestį su 4 rezistoriais.

VIC20 emuliatorius įdiegtas ESP32, naudojant „FabGL“ir 6 rezistorius.

Įdiekite BASIC kompiuterį naudodami ESP32 ir 3 rezistorius.

Žaiskite „Space Invaders“naudodami ESP32 naudodami „FabGL“ir 6 rezistorius.

Sukurkite VGA išvestį STM32 su 6 rezistoriais.

Vienalaikis teksto ir grafikos sluoksnis STM32 su vaizdo demonstravimu.

8 žingsnis: STM32F103C8T6 juodųjų tablečių MCU modulis

TXS0108E 8 bitų loginio lygio perjungiklis
TXS0108E 8 bitų loginio lygio perjungiklis

Juodosios tabletės yra STM32 pagrįstas MCU modulis. Tai patobulintas paprastųjų mėlynųjų ir rečiau naudojamų raudonųjų tablečių variantas.

Juodojoje tabletėje yra STM32F103C8T6 32 bitų ARM M3 mikrovaldiklis (duomenų lapas), keturių kontaktų ST-Link antraštė, „MicroUSB“prievadas ir vartotojo šviesos diodas PB12. Norint tinkamai veikti USB prievadą, sumontuotas teisingas PA12 ištraukimo rezistorius. Šiam pritraukimui paprastai reikėjo modifikuoti plokštę kitose tablečių lentose.

Nors išvaizda panaši į „Arduino Nano“, juodosios tabletės yra daug galingesnės. 32 bitų STM32F103C8T6 ARM mikrovaldiklis gali veikti 72 MHz dažniu. Jis gali atlikti vieno ciklo dauginimą ir aparatūros padalijimą. Jame yra 64 KB „Flash“atminties ir 20 KB SRAM.

STM32 programavimas iš „Arduino IDE“.

9 veiksmas: TXS0108E 8 bitų loginio lygio perjungiklis

TXS0108E (duomenų lapas) yra 8 bitų dvikryptis loginio lygio perjungiklis. Modulis yra nustatytas lygių poslinkio signalams nuo 3,3 V iki 5 V.

Kadangi signalo lygio kanalai yra dvikrypčiai, slankieji įėjimai gali sukelti netyčinį atitinkamų išėjimų veikimą. Pateikiamas išvesties įgalinimo (OE) valdiklis, apsaugantis tokiais atvejais. Priklausomai nuo to, kaip yra prijungtas perjungiklis, reikia būti atsargiems, kad įsitikintumėte, jog perjungiklio išvestis („tyčinė“arba dėl kitoje pusėje esančios plūduriuojančios įvesties) niekada neleidžia skersai valdyti kito įrenginio išvesties.

OE kaištis paliekamas atjungtas PCB pėdsakuose. Po moduliu yra dviejų kontaktų antraštė, skirta prijungti OE ir 3V3. Sutrumpinus dviejų kontaktų antraštę (naudojant vielos gabalą arba jungiamąjį bloką), OE prijungiamas prie 3V3, todėl IC gali valdyti savo išėjimus. Prie OE kaiščio taip pat galima prijungti ištraukiamą rezistorių ir loginį valdiklį.

10 žingsnis: „HackLife“

„HackLife“
„HackLife“

Tikimės, kad jums patinka šio mėnesio „HackerBox“nuotykiai elektronikos ir kompiuterių technologijų srityse. Pasiekite ir pasidalykite savo sėkme komentaruose žemiau arba „HackerBoxes“„Facebook“grupėje. Taip pat atminkite, kad bet kuriuo metu galite atsiųsti el. Laišką adresu [email protected], jei turite klausimų ar reikia pagalbos.

Kas toliau? Prisijunk prie revoliucijos. Gyvenk HackLife. Kiekvieną mėnesį į savo pašto dėžutę pristatykite šaunią įsilaužimo įrankių dėžę. Naršykite „HackerBoxes.com“ir prisiregistruokite gauti mėnesinę „HackerBox“prenumeratą.

Rekomenduojamas: