Cuprins:

HackerBox 0051: MCU Lab: 10 pași
HackerBox 0051: MCU Lab: 10 pași

Video: HackerBox 0051: MCU Lab: 10 pași

Video: HackerBox 0051: MCU Lab: 10 pași
Video: MCU LAB Demo with Potentiometer and OLED Display 2024, Iulie
Anonim
HackerBox 0051: MCU Lab
HackerBox 0051: MCU Lab

Salutări hackerilor HackerBox din întreaga lume! HackerBox 0051 prezintă HackerBox MCU Lab. MCU Lab este o platformă de dezvoltare pentru testarea, dezvoltarea și prototipul cu microcontrolere și module de microcontrolere. Un Arduino Nano, modulul ESP32 și pilula neagră SMT32 sunt utilizate pentru a explora blocurile de caracteristici ale MCU Lab. Blocurile caracteristice MCU Lab includ comutatoare, butoane, LED-uri, un afișaj OLED, buzzer, potențiometru, pixel RGB, schimbător de nivel logic, ieșire VGA, intrare tastatură PS / 2, interfață serială USB și zone de prototipare fără sudură.

Acest ghid conține informații pentru a începe să utilizați HackerBox 0051, care poate fi achiziționat aici până la epuizarea stocurilor. Dacă doriți să primiți o HackerBox ca aceasta chiar în cutia poștală în fiecare lună, vă rugăm să vă abonați la HackerBoxes.com și să vă alăturați revoluției!

HackerBoxes este serviciul de cutie de abonament lunar pentru hackerii hardware și pasionații de electronică și tehnologie informatică. Vino alături de noi în trăirea HACK LIFE.

Pasul 1: Lista de conținut pentru HackerBox 0051

  • Modulul MCU 1: Arduino Nano 5V, 16MHz
  • Modulul 2 MCU: WEMOS ESP32 Lite
  • MCU Modul 3: Pilula neagră STM32F103C8T6
  • Circuit imprimat MCU Lab exclusiv
  • Adaptor serial USB FT232RL
  • Afișaj OLED 128x64 I2C 0,96 inci
  • Schimbator de nivel logic bidirecțional pe 8 biți
  • LED WS2812B RGB SMD
  • Patru butoane tactile montate pe suprafață
  • Patru LED-uri roșii difuzate de 5 mm
  • Piezo Buzzer
  • Conector VGA HD15
  • Conector Mini-DIN PS / 2 pentru tastatură
  • Potențiometru 100K Ohm
  • Comutator DIP cu 8 poziții
  • AMS1117 3.3V Regulator liniar SOT223
  • Două condensatoare de tantal 22uF 1206 SMD
  • Zece rezistențe de 680 Ohm
  • Patru picioare PCB din cauciuc adeziv
  • Două plăci de pâine fără sudură de 170 de puncte
  • Două prize cu 8 pini pentru femelă
  • Antet de rupere cu 40 de pini
  • Pachet de 65 fire jumper masculine
  • Autocolant pentru placa de circuit ridicat
  • Hack The Planet Smiley Pirate Sticker
  • Breloc exclusiv de tip breloc „Elimină înainte de zbor”

Câteva alte lucruri care vă vor fi de ajutor:

  • Instrument de lipit, lipit și instrumente de lipit de bază
  • Computer pentru rularea instrumentelor software

Cel mai important, veți avea nevoie de un sentiment de aventură, spirit hacker, răbdare și curiozitate. Construirea și experimentarea cu electronice, deși foarte plină de satisfacții, poate fi dificilă, provocatoare și chiar frustrantă uneori. Scopul este progresul, nu perfecțiunea. Când persistați și vă bucurați de aventură, din acest hobby se poate obține o mulțime de satisfacții. Faceți fiecare pas încet, țineți cont de detalii și nu vă fie teamă să cereți ajutor.

Există o mulțime de informații pentru membrii actuali și potențiali în întrebările frecvente despre HackerBoxes. Aproape toate e-mailurile de asistență non-tehnică pe care le primim au primit deja un răspuns acolo, așa că apreciem foarte mult că ați luat câteva minute pentru a citi FAQ.

Pasul 2: HackerBoxes MCU Lab

HackerBoxes MCU Lab
HackerBoxes MCU Lab

MCU Lab este o versiune compactă, lustruită a unei platforme de dezvoltare pe care o folosim pentru a prototipa și a testa diverse modele bazate pe microcontroler (MCU). Este foarte util pentru lucrul cu module MCU (cum ar fi un Arduino Nano, ESP32 DevKit, etc.) sau pachete individuale de dispozitive MCU (cum ar fi ATMEGA328s, ATtiny85s, PIC, etc.). Un MCU țintă poate fi plasat în oricare dintre mini plăcile fără sudură. Două MCU-uri pot fi interfațate împreună folosind ambele panouri sau unul dintre spațiile panoului poate fi utilizat pentru alte circuite.

„Blocurile de caracteristici” ale MCU Lab sunt împărțite în anteturi feminine similare cu cele găsite pe un Arduino UNO. Anteturile de sex feminin sunt compatibile cu știfturile pentru bărbați.

Pasul 3: Asamblați laboratorul MCU HackerBoxes

Asamblați laboratorul MCU HackerBoxes
Asamblați laboratorul MCU HackerBoxes

COMPONENTE SMD PE SPATE

Începeți prin montarea regulatorului liniar AMS1117 (pachetul SOT 233) și a celor două condensatoare de filtrare 22uF pe spatele PCB-ului. Rețineți că o parte a fiecărui serigrafie a condensatorului este dreptunghiulară, iar cealaltă parte este octogonală. Condensatoarele ar trebui să fie orientate astfel încât banda întunecată de pe ambalaj să se alinieze la partea de serigrafie octogonală.

CONTINUAȚI CU COMPONENTELE PE FAȚA PLACII

Lipiți LED-ul WS2812B RGB. Orientați colțul marcat alb al fiecărui LED pentru a corespunde colțului cu file, așa cum se arată pe serigrafia PCB.

Patru butoane tactile SMD

Patru LED-uri roșii cu patru rezistențe

Schimbător de nivel cu pinul VA cel mai apropiat marcaj 3V3 și pinul VB cel mai apropiat marcaj 5V. Modulul Level Shifter poate fi montat la nivel de PCB lipind antetele pe modul și apoi glisând distanțierele din plastic negru de pe antet înainte de a monta modulul pe PCB MCU Lab. Lăsarea distanțierelor aprinse este bine, de asemenea.

Două benzi ale antetului pot fi rupte pentru a conecta modulul FT232. O secțiune mai mică a antetului cu 4 pini poate fi utilizată și pentru antetul 5V / GND chiar lângă modulul FT232.

Deocamdată, completați antetul VGA feminin cel mai apropiat de conectorul VGA HD15 și soclul tastaturii. Cu toate acestea, NU POPULAȚI antetul suplimentar adiacent unuia sau celor cinci rezistențe dintre acele două anteturi. Opțiunile specifice pentru interfața semnalului video sunt discutate mai târziu.

Populați celelalte nouă anteturi feminine.

Îndepărtați adezivul din spatele ambelor plăci fără sudură pentru a le atașa la PCB MCU Lab.

Poziționați picioarele de cauciuc adeziv pe partea de jos a MCU Lab PCB pentru a vă proteja bancul de lucru de zgârieturi.

MANIPULAREA INTRĂRILOR DE PUTERE

Există cel puțin două, și mai probabil chiar și patru, locuri în care puterea poate intra în laboratorul MCU. Acest lucru poate cauza probleme, deci luați întotdeauna în considerare cu atenție următoarele indicații:

Punctele de antet etichetate 5V sunt toate conectate. Șina de 5V se conectează, de asemenea, la mufa tastaturii, schimbătorul de nivel și LED-ul WS2812B RGB. Alimentarea poate fi furnizată șinei de 5V prin conectarea FT232 la USB, conectarea antetului de alimentare cu patru pini la o sursă externă sau prin conectarea unui jumper de la unul dintre pinii de 5V de pe PCB la un modul alimentat de 5V (de obicei alimentat prin USB).

În mod similar, pinii GND sunt conectați. Se conectează la USB GND de pe FT232 (presupunând că USB este conectat la FT232). De asemenea, pot fi conectate la masă folosind un jumper între unul dintre ele și un modul alimentat, așa cum sa discutat pentru rețeaua de 5V.

Sina 3V3 este acționată de regulatorul din spatele PCB-ului. Este doar o sursă și (spre deosebire de șina de 5V) nu ar trebui să fie acționată de niciun modul sau alte circuite, deoarece este acționată direct de la regulatorul de pe șina de 5V.

Pasul 4: Modulul Arduino Nano MCU

Modulul Arduino Nano MCU
Modulul Arduino Nano MCU

Unul dintre cele mai comune module MCU din zilele noastre este Arduino Nano. Placa Arduino Nano inclusă vine cu știfturi pentru antet, dar nu sunt lipite la modul. Lăsați pinii opriți pentru moment. Efectuați aceste teste inițiale pe modulul Arduino Nano înainte de lipire pe pinii antetului. Tot ce este necesar este un cablu microUSB și placa Arduino Nano la fel cum iese din geantă.

Arduino Nano este o placă Arduino miniaturizată, montată pe suprafață, compatibilă cu placa, cu USB integrat. Este uimitor de complet dotat și ușor de piratat.

Caracteristici:

  • Microcontroler: Atmel ATmega328P
  • Tensiune: 5V
  • Pinii I / O digitale: 14 (6 PWM)
  • Pinii de intrare analogici: 8
  • Curent continuu per pin I / O: 40 mA
  • Memorie Flash: 32 KB (2 KB pentru bootloader)
  • SRAM: 2 KB
  • EEPROM: 1 KB
  • Viteza de ceas: 16 MHz
  • Dimensiuni: 17mm x 43mm

Această variantă specială a Arduino Nano este Robotdyn Nano negru. In include un port MicroUSB integrat conectat la un cip bridge CH340G USB / Serial. Informații detaliate despre CH340 (și driverele, dacă este necesar) pot fi găsite aici.

Când conectați prima dată Arduino Nano la un port USB al computerului, indicatorul luminos verde ar trebui să se aprindă și la scurt timp după ce LED-ul albastru ar trebui să înceapă să clipească încet. Acest lucru se întâmplă deoarece Nano este preîncărcat cu programul BLINK, care rulează pe noul Arduino Nano.

SOFTWARE: Dacă nu aveți încă instalat ID-ul Arduino, îl puteți descărca de pe Arduino.cc

Conectați Nano la cablul MicroUSB și celălalt capăt al cablului la un port USB de pe computer. Lansați software-ul Arduino IDE. Selectați „Arduino Nano” în IDE sub instrumente> bord și „ATmega328P (vechi încărcător)” sub instrumente> procesor. Selectați portul USB corespunzător din instrumente> port (este probabil un nume cu „wchusb” în el).

În cele din urmă, încărcați o bucată de exemplu de cod: Fișier-> Exemple-> Noțiuni de bază-> Blink

Blink este de fapt codul care a fost preîncărcat pe Nano și ar trebui să ruleze chiar acum pentru a clipi încet LED-ul albastru. În consecință, dacă încărcăm acest exemplu de cod, nimic nu se va schimba. În schimb, să modificăm puțin codul.

Privind cu atenție, puteți vedea că programul aprinde LED-ul, așteaptă 1000 de milisecunde (o secundă), stinge LED-ul, așteaptă încă o secundă și apoi face totul din nou - pentru totdeauna.

Modificați codul schimbând ambele instrucțiuni „delay (1000)” în „delay (100)”. Această modificare va face ca LED-ul să clipească de zece ori mai repede, nu?

Să încărcăm codul modificat în Nano făcând clic pe butonul UPLOAD (pictograma săgeată) chiar deasupra codului modificat. Urmăriți mai jos codul pentru informațiile despre stare: „compilare” și apoi „încărcare”. În cele din urmă, IDE ar trebui să indice „Încărcare finalizată”, iar LED-ul dvs. ar trebui să clipească mai repede.

Dacă da, felicitări! Tocmai ați spart prima bucată de cod încorporat.

Odată ce versiunea dvs. de clipire rapidă este încărcată și rulează, de ce să nu vedeți dacă puteți schimba codul din nou pentru a face LED-ul să clipească rapid de două ori și apoi să așteptați câteva secunde înainte de a repeta? Incearca! Ce zici de alte tipare? Odată ce ați reușit să vizualizați rezultatul dorit, să îl codificați și să-l observați pentru a funcționa conform planificării, ați făcut un pas enorm către a deveni un hacker hardware competent.

Acum că ați confirmat funcționarea modulului Nano, continuați și lipiți pinii antetului pe el. Odată ce anteturile sunt conectate, modulul poate fi ușor utilizat într-una dintre panourile fără sudură ale MCU Lab. Acest proces de testare a unui modul MCU prin descărcarea unui cod de test simplu, modificarea și descărcarea din nou este o practică optimă ori de câte ori se utilizează un modul MCU nou sau de tip diferit.

Dacă doriți informații introductive suplimentare pentru lucrul în ecosistemul Arduino, vă sugerăm să consultați Ghidul pentru atelierul de pornire HackerBoxes, care include mai multe exemple și un link către un manual PDF Arduino.

Pasul 5: Explorează MCU Lab cu Arduino Nano

Explorează MCU Lab Cu Arduino Nano
Explorează MCU Lab Cu Arduino Nano

POTENȚIOMETRU

Conectați pinul central al potențiometrului la pinul Nano A0.

Încarcă și rulează: Exemple> Analog> AnalogInput

Exemplul implicit este LED-ul integrat al Nano. Rotiți potențiometrul pentru a modifica viteza de clipire.

Modifica:

În cod, modificați LedPin = 13 la 4

Jumper de la Nano Pin 4 (și GND) la unul dintre LED-urile roșii ale MCU Lab.

BUZZER

Jumper de la Buzzer la Nano Pin 8. Asigurați-vă că placa GND este conectată la GND a Nano-ului alimentat, deoarece masa sonorului este conectată la rețeaua GND a plăcii.

Încărcați și rulați: exemple> Digital> toneMelody

AFIȘARE OLED

În IDE-ul Arduino, utilizați managerul bibliotecii pentru a instala „ssd1306” de la Alexey Dyna.

Conectați OLED: GND la GND, VCC la 5V, SCL la Nano's A5, SDA la Nano's A4

Încărcați și rulați: Exemple> ssd1306> demonstrații> ssd1306_demo

LED RGB WS2812B

În IDE-ul Arduino, utilizați managerul de bibliotecă pentru a instala FastLED

Conectați pinul antet al WS2812 la pinul 5 al Nano.

Încărcați: Exemple> FastLED> ColorPalette

Schimbați NUM_LEDS la 1 și LED_TYPE la WS2812B

Compilați și rulați

SCRIEȚI UNELE CODURI PENTRU EXERCITAREA BUTOANELOR ȘI COMUTATORILOR

Nu uitați să utilizați pinMode (INPUT_PULLUP) pentru a citi un buton fără a adăuga un rezistor.

COMBINAȚI UNELE DIN ACESTE EXEMPLE ÎMPREUNĂ

De exemplu, ciclați ieșirile într-un mod interesant și afișați stările sau valorile de intrare pe monitorul OLED sau serial.

Pasul 6: WEMOS ESP32 Lite

WEMOS ESP32 Lite
WEMOS ESP32 Lite

Microcontrolerul ESP32 (MCU) este un sistem cu un cost redus, cu consum redus de energie pe un cip (SOC) cu Wi-Fi integrat și Bluetooth dual-mode. ESP32 folosește un nucleu Tensilica Xtensa LX6 și include comutatoare de antenă încorporate, balun RF, amplificator de putere, amplificator de recepție cu zgomot redus, filtre și module de gestionare a energiei. (wikipedia)

Modulul WEMOS ESP32 Lite este mai compact decât versiunea anterioară, ceea ce face mai ușor de utilizat pe o placă fără sudură.

Faceți testul inițial al modulului WEMOS ESP32 înainte de a lipi pinii antetului pe modul.

Configurați pachetul de asistență ESP32 în Arduino IDE.

Sub instrumente> bord, asigurați-vă că selectați „WeMos LOLIN32”

Încărcați exemplul de cod la Fișiere> Exemple> Noțiuni de bază> Blink și programați-l pe WeMos LOLIN32

Programul de exemplu ar trebui să facă LED-ul de pe modul să clipească. Experimentați modificarea parametrilor de întârziere pentru a face LED-ul să clipească cu diferite modele. Acesta este întotdeauna un exercițiu bun pentru a crește încrederea în programarea unui nou modul de microcontroler.

Odată ce vă simțiți confortabil cu funcționarea modulului și cum să îl programați, lipiți cu grijă cele două rânduri de știfturi de antet în loc și testați din nou programele de încărcare.

Pasul 7: Generarea video ESP32

Image
Image

Acest videoclip demonstrează Biblioteca ESP32 VGA și un tutorial foarte frumos și simplu de la laboratorul Bitluni.

Implementarea demonstrată pe 3 biți (8 culori) utilizează jumperi de sârmă directe între modulul ESP32 și conectorul VGA. Efectuarea acestor conexiuni pe antetul VGA al MCU Lab este destul de ușoară, deoarece nu sunt implicate componente suplimentare.

În funcție de care MCU este utilizat, nivelul său de tensiune, rezoluțiile pixelilor și adâncimile de culoare dorite, există diverse combinații de rezistențe în linie și rețele de rezistențe care pot fi plasate între MCU și antetul VGA. Dacă decideți să utilizați permanent rezistențe inline, acestea pot fi lipite pe PCB MCU Lab. Dacă doriți să mențineți flexibilitatea și mai ales dacă doriți să utilizați soluții mai complexe, atunci se recomandă să nu lipiți rezistențe în loc și să le utilizați pur și simplu folosind plăcile fără sudură și antetul VGA pentru a conecta rezistențele necesare.

De exemplu, pentru a implementa modul de culoare pe 14 biți bituni prezentat la sfârșitul videoclipului, modulul ESP32 poate fi poziționat pe una dintre mini plăcile fără lipire, iar cealaltă placă fără lipire poate fi utilizată pentru a conecta scările rezistențelor.

Iată câteva alte exemple:

În HackerBox 0047 un Arduino Nano conduce o ieșire simplă VGA cu 4 rezistențe.

Un emulator VIC20 este implementat pe ESP32 folosind FabGL și 6 rezistențe.

Implementați un PC BASIC folosind ESP32 și 3 rezistențe.

Joacă Space Invaders pe ESP32 folosind FabGL și 6 rezistențe.

Generați ieșire VGA pe STM32 cu 6 rezistențe.

Straturi simultane de text și grafică pe STM32 cu demonstrație video.

Pasul 8: STM32F103C8T6 Black Pill Modul MCU

TXS0108E 8-Bit Logic Level Shifter
TXS0108E 8-Bit Logic Level Shifter

Black Pill este un modul MCU bazat pe STM32. Este o variantă îmbunătățită a pilulei albastre comune și a pilulei roșii mai puțin obișnuite.

Black Pill are microcontrolerul STM32F103C8T6 32bit ARM M3 (foaie de date), un antet ST-Link cu patru pini, un port MicroUSB și un LED de utilizator pe PB12. Rezistența corectă de tragere de pe PA12 este instalată pentru funcționarea corectă a portului USB. Această extragere a necesitat în mod obișnuit o modificare a plăcii pe alte tablouri pentru pilule.

Deși este similară cu aspectul Arduino Nano, Pilula Neagră este mult mai puternică. Microcontrolerul ARM STM32F103C8T6 pe 32 de biți poate rula la 72 MHz. Poate efectua multiplicarea unui singur ciclu și divizarea hardware. Are 64 Kbytes de memorie Flash și 20 Kbytes de SRAM.

Programarea STM32 din Arduino IDE.

Pasul 9: TXS0108E 8-Bit Logic Level Shifter

TXS0108E (foaie de date) este un schimbător de nivel logic bidirecțional pe 8 biți. Modulul este configurat pentru semnale de deplasare de nivel între 3,3V și 5V.

Deoarece canalele de nivel ale semnalului sunt bidirecționale, intrările plutitoare pot provoca ieșirile corespunzătoare să fie acționate neintenționat. Un control de activare a ieșirii (OE) este furnizat pentru a proteja în astfel de scenarii. Ar trebui să aveți grijă în funcție de modul în care este conectat schimbătorul de viteze pentru a vă asigura că o ieșire din schimbător (fie „intenționată”, fie datorită unei intrări plutitoare de pe cealaltă parte) nu este permisă niciodată să traverseze o ieșire de pe un alt dispozitiv.

Pinul OE este lăsat deconectat în urmele PCB. Un antet cu doi pini este prevăzut sub modul pentru conectarea OE și 3V3. Scurtcircul antetului cu doi pini (folosind o bucată de sârmă sau un bloc jumper) conectează OE la 3V3, ceea ce permite IC-ului să-și conducă ieșirile. Un rezistor de derulare și un control logic pot fi, de asemenea, conectate la pinul OE.

Pasul 10: HackLife

HackLife
HackLife

Sperăm că vă veți bucura de aventura HackerBox din această lună în electronică și tehnologie computerizată. Intindeți-vă și împărtășiți-vă succesul în comentariile de mai jos sau pe grupul Facebook HackerBoxes. De asemenea, amintiți-vă că puteți trimite e-mail la [email protected] oricând dacă aveți o întrebare sau aveți nevoie de ajutor.

Ce urmeaza? Alatura-te revolutiei. Trăiește HackLife. Obțineți o cutie grozavă de echipamente care se pot pirata livrate direct în cutia poștală în fiecare lună. Navigați la HackerBoxes.com și înscrieți-vă pentru abonamentul dvs. HackerBox lunar.

Recomandat: