Sadržaj:

HackerBox 0051: MCU laboratorij: 10 koraka
HackerBox 0051: MCU laboratorij: 10 koraka

Video: HackerBox 0051: MCU laboratorij: 10 koraka

Video: HackerBox 0051: MCU laboratorij: 10 koraka
Video: MCU LAB Demo with Potentiometer and OLED Display 2024, Srpanj
Anonim
HackerBox 0051: MCU Lab
HackerBox 0051: MCU Lab

Pozdrav HackerBox hakerima širom svijeta! HackerBox 0051 predstavlja HackerBox MCU Lab. MCU Lab je razvojna platforma za testiranje, razvoj i prototip s mikrokontrolerima i modulima mikrokontrolera. Arduino Nano, ESP32 modul i SMT32 crna pilula koriste se za istraživanje blokova značajki MCU laboratorija. Blokovi značajki MCU Lab uključuju prekidače, gumbe, LED diode, OLED zaslon, zujalicu, potenciometar, RGB piksel, mjenjač logičke razine, VGA izlaz, ulaz za PS/2 tipkovnicu, USB serijsko sučelje i dva područja za izradu prototipa bez lemljenja.

Ovaj vodič sadrži informacije za početak rada s HackerBox -om 0051, koji se može kupiti ovdje dok traju zalihe. Ako želite svaki mjesec primati ovakav HackerBox u poštanski sandučić, pretplatite se na HackerBoxes.com i pridružite se revoluciji!

HackerBoxes je mjesečna pretplatna usluga za hakere hardvera i ljubitelje elektronike i računalne tehnologije. Pridružite nam se u životu HACK LIFE -a.

Korak 1: Popis sadržaja za HackerBox 0051

  • MCU modul 1: Arduino Nano 5V, 16MHz
  • MCU modul 2: WEMOS ESP32 Lite
  • MCU modul 3: STM32F103C8T6 crna pilula
  • Ekskluzivna MCU laboratorijska tiskana ploča
  • USB serijski adapter FT232RL
  • OLED 128x64 zaslon I2C 0,96 inča
  • Dvosmjerni 8-bitni logički pomak razine
  • WS2812B RGB SMD LED
  • Četiri taktilna gumba za površinsko postavljanje
  • Četiri difuzne crvene LED diode od 5 mm
  • Piezo zujalica
  • HD15 VGA konektor
  • Mini-DIN PS/2 priključak za tipkovnicu
  • Potenciometar 100K Ohm
  • 8 DIP prekidač
  • AMS1117 3.3V Linearni regulator SOT223
  • Dva 22uF kondenzatora od tantala 1206 SMD
  • Deset 680 ohmskih otpornika
  • Četiri ljepljive gumene PCB noge
  • Dvije mini ploče za lemljenje sa 170 točaka
  • Jedanaest 8 -polnih ženskih utičnica
  • 40 -pinsko zaglavlje za odvajanje
  • Paket od 65 muških žica za kratkospojnike
  • Naljepnica s podignutom šakom
  • Hakirajte The Planet Smiley Pirate Sticker
  • Ekskluzivni HackerBox privjesak "Ukloni prije leta"

Još neke stvari koje će vam biti od pomoći:

  • Lemilica, lemljenje i osnovni alati za lemljenje
  • Računalo za pokretanje softverskih alata

Ono što je najvažnije, trebat će vam osjećaj avanture, hakerski duh, strpljenje i znatiželja. Izgradnja i eksperimentiranje s elektronikom, iako vrlo isplativo, ponekad može biti zeznuto, izazovno, pa čak i frustrirajuće. Cilj je napredak, a ne savršenstvo. Kad ustrajete i uživate u avanturi, iz ovog hobija može se steći veliko zadovoljstvo. Polako poduzimajte svaki korak, pazite na detalje i ne bojte se zatražiti pomoć.

U FAQ -u o HackerBoxima postoji mnoštvo informacija za sadašnje i buduće članove. Gotovo sve e-poruke o tehničkoj podršci koje primamo već su tamo odgovorene, stoga zaista cijenimo što ste odvojili nekoliko minuta da pročitate FAQ.

Korak 2: HackerBoxes MCU Lab

HackerBoxes MCU Lab
HackerBoxes MCU Lab

MCU Lab je kompaktna, polirana verzija razvojne platforme koju koristimo za prototipiranje i testiranje različitih dizajna zasnovanih na mikrokontrolerima (MCU). Izuzetno je korisno za rad s MCU modulima (poput Arduino Nano, ESP32 DevKit, itd.) Ili pojedinačnim paketima MCU uređaja (poput ATMEGA328, ATtiny85, PIC itd.). Ciljani MCU može se postaviti u bilo koju mini ploču za lemljenje. Dva MCU -a mogu se međusobno povezati pomoću obje matične ploče ili se jedan od prostora za matičnu ploču može koristiti za druga kola.

"Blokovi značajki" laboratorija MCU podijeljeni su na ženska zaglavlja slična onima koja se nalaze na Arduino UNO -u. Ženska zaglavlja kompatibilna su s muškim iglicama za kratkospojnike.

Korak 3: Sastavite HackerBoxes MCU Lab

Sastavite HackerBoxes MCU Lab
Sastavite HackerBoxes MCU Lab

SMD KOMPONENTE NA ZADNJICI

Počnite postavljanjem linearnog regulatora AMS1117 (paket SOT 233) i dva kondenzatora filtera od 22 uF na poleđini tiskane ploče. Imajte na umu da je jedna strana svakog sitotiska kondenzatora pravokutna, a druga strana osmerokutna. Kondenzatori bi trebali biti orijentirani tako da se tamna crta na pakiranju poravna sa osmerokutnom stranom svilene mreže.

NASTAVI SA KOMPONENTAMA PRED DONOM

Lemite WS2812B RGB LED. Orijentirajte bijeli označeni kut svake LED diode tako da odgovara uglu s karticama kako je prikazano na sitotisku na PCB -u.

Četiri SMD taktilna gumba

Četiri crvene LED diode s četiri otpornika

Mjenjač razine s VA pin bližim oznakama 3V3 i VB pin najbližim oznakama 5V. Modul Level Shifter može se montirati u ravnini s tiskanom pločom lemljenjem zaglavlja na modul, a zatim skidanjem crnih plastičnih odstojnika s zaglavlja prije postavljanja modula na MCU Lab PCB. Ostaviti odstojnike također je u redu.

Dvije trake zaglavlja mogu se odlomiti za povezivanje FT232 modula. Manji 4-pinski dio zaglavlja također se može koristiti za 5V/GND zaglavlje tik uz FT232 modul.

Za sada popunite žensko VGA zaglavlje najbliže HD15 VGA konektoru i utičnici za tipkovnicu. Međutim, NE POPULIRAJTE dodatno zaglavlje uz taj jedan ili pet otpornika između ta dva zaglavlja. Posebne opcije za povezivanje video signala raspravljat će se kasnije.

Napuni ostalih devet ženskih zaglavlja.

Uklonite ljepilo sa stražnje strane obje lemljene ploče za pričvršćivanje na MCB Lab PCB.

Postavite ljepljive gumene nožice na dno MCU Lab PCB -a kako biste zaštitili svoj radni stol od ogrebotina.

RUKOVANJE ULAZIMA SNAGE

Postoje najmanje dva, a vjerojatnije čak četiri mjesta na koja bi struja mogla doći u MCU Lab. To može uzrokovati probleme, stoga uvijek pažljivo razmislite o sljedećim uputama:

Sve točke zaglavlja s oznakom 5V su sve spojene. 5V vodilica također se spaja na utičnicu tipkovnice, prekidač razine i WS2812B RGB LED. Napajanje se može opskrbiti 5 -voltnom tračnicom priključivanjem FT232 u USB, povezivanjem četveropolnog napajanja na vanjski izvor napajanja ili spajanjem kratkospojnika s jednog od 5V kontakata na PCB -u na napajani 5V modul (obično napaja USB).

Slično, svi GND pinovi su povezani. Spajaju se na USB GND na FT232 (pod pretpostavkom da je USB spojen na FT232). Također se mogu spojiti na masu pomoću kratkospojnika između jednog od njih i modula s napajanjem kako je objašnjeno za 5V mrežu.

Tračnicu 3V3 pokreće regulator sa stražnje strane PCB -a. To je samo izvor i (za razliku od 5V tračnice) ne bi ga trebali pokretati nikakvi moduli ili drugi krugovi jer se pokreće izravno iz regulatora na 5V tračnici.

Korak 4: Arduino Nano MCU modul

Arduino Nano MCU modul
Arduino Nano MCU modul

Jedan od najčešćih MCU modula ovih dana je Arduino Nano. Uključena Arduino Nano ploča dolazi sa zaglavljima, ali ne dolaze lemljene na modul. Za sada ostavite iglice isključene. Izvršite ova početna ispitivanja na modulu Arduino Nano prije lemljenja na zaglavlje zaglavlja. Sve što je potrebno je microUSB kabel i Arduino Nano ploča, baš kao što i izlazi iz vrećice.

Arduino Nano je minijaturna Arduino ploča s površinskim montiranjem, prilagođena matičnoj ploči s integriranim USB-om. Nevjerojatno je pun funkcija i lako se hakira.

Značajke:

  • Mikrokontroler: Atmel ATmega328P
  • Napon: 5V
  • Digitalni I/O pinovi: 14 (6 PWM)
  • Igle za analogni ulaz: 8
  • DC struja po I/O pin: 40 mA
  • Flash memorija: 32 KB (2KB za pokretački program)
  • SRAM: 2 KB
  • EEPROM: 1 KB
  • Takt: 16 MHz
  • Dimenzije: 17 x 43 mm

Ova posebna varijanta Arduino Nanoa je crni Robotdyn Nano. In uključuje ugrađeni MicroUSB priključak spojen na CH340G USB/serijski most čip. Detaljne informacije o CH340 (i upravljačkim programima, ako je potrebno) možete pronaći ovdje.

Kada prvi put priključite Arduino Nano u USB priključak vašeg računala, trebala bi se upaliti zelena žaruljica napajanja, a nedugo nakon toga plava LED dioda trebala bi početi polako treptati. To se događa jer je Nano unaprijed učitan BLINK programom, koji radi na potpuno novom Arduino Nano.

SOFTVER: Ako još nemate instaliran Arduino IDE, možete ga preuzeti s Arduino.cc

Priključite Nano u MicroUSB kabel, a drugi kraj kabela u USB priključak na računalu. Pokrenite Arduino IDE softver. Odaberite "Arduino Nano" u IDE -u pod alati> ploča i "ATmega328P (stari bootloader)" pod alati> procesor. Odaberite odgovarajući USB priključak pod alati> priključak (vjerojatno je to naziv s "wchusb" u njemu).

Na kraju, učitajte dio primjera koda: Datoteka-> Primjeri-> Osnove-> Treptanje

Blink je zapravo kôd koji je unaprijed učitan na Nano i trebao bi se pokrenuti upravo sada kako bi polako treptao plavu LED diodu. U skladu s tim, ako učitamo ovaj primjer koda, ništa se neće promijeniti. Umjesto toga, promijenimo malo kôd.

Pomno promatrajući, možete vidjeti da program uključuje LED diodu, čeka 1000 milisekundi (jedna sekunda), isključuje LED, čeka još jednu sekundu, a zatim sve to radi - zauvijek.

Izmijenite kôd mijenjanjem oba izraza "delay (1000)" u "delay (100)". Ova će izmjena uzrokovati da LED dioda treperi deset puta brže, zar ne?

Učitajmo izmijenjeni kôd u Nano klikom na gumb UPLOAD (ikona strelice) neposredno iznad vašeg izmijenjenog koda. Pod kodom potražite informacije o statusu: "sastavljanje", a zatim "učitavanje". Na kraju bi IDE trebao označiti "Uploading Complete" i LED bi trebao brže treptati.

Ako je tako, čestitamo! Upravo ste hakirali svoj prvi komad ugrađenog koda.

Nakon što se učita i pokrene vaša verzija s brzim treptajem, zašto ne provjerite možete li ponovo promijeniti kôd kako bi LED dioda brzo trepnula dvaput, a zatim pričekati nekoliko sekundi prije nego što ponovite? Pokušati! Što kažete na neke druge uzorke? Nakon što uspijete vizualizirati željeni ishod, kodirati ga i promatrati kako radi kako je planirano, napravili ste ogroman korak prema tome da postanete kompetentan haker hardvera.

Sada kada ste potvrdili rad Nano modula, lemite na njega igle zaglavlja. Nakon što su zaglavlja spojena, modul se može lako koristiti u jednoj od lemljenih ploča MCU Laba. Ovaj proces testiranja MCU modula preuzimanjem jednostavnog testnog koda, izmjenom i ponovnim preuzimanjem najbolja je praksa kad god koristite novi ili drugačiji MCU modul.

Ako želite dodatne uvodne informacije za rad u Arduino ekosustavu, predlažemo da pogledate Vodič za početnu radionicu HackerBoxes, koji sadrži nekoliko primjera i vezu do PDF Arduino udžbenika.

Korak 5: Istražite MCU laboratorij s Arduino Nano

Istražite MCU laboratorij s Arduino Nano
Istražite MCU laboratorij s Arduino Nano

POTENCIOMETAR

Spojite središnji pin potenciometra na Nano Pin A0.

Load and Run: Primjeri> Analogni> Analogni ulaz

Primjer prema zadanim postavkama je ugrađena LED dioda Nano. Okrenite potenciometar za promjenu brzine treptanja.

Izmijeni:

U kodu promijenite LedPin = 13 na 4

Kratkospojnik s Nano Pin 4 (i GND) na jednu od crvenih LED dioda MCU laboratorija.

ZVUK

Kratkospojnik sa zujalice na Nano pin 8. Provjerite je li GND ploče spojen na GND napajanog Nano -a jer je uzemljenje zujalice čvrsto spojeno na GND mrežu ploče.

Load and Run: Primjeri> Digitalno> toneMelody

OLED ZASLON

U Arduino IDE -u upotrijebite upravitelja knjižnice da biste instalirali "ssd1306" iz Alexey Dyna.

Spojite OLED: GND na GND, VCC na 5V, SCL na Nano A5, SDA na Nano A4

Učitaj i pokreni: Primjeri> ssd1306> demo> ssd1306_demo

WS2812B RGB LED

U Arduino IDE -u upotrijebite upravitelja knjižnice za instaliranje FastLED -a

Spojite pin zaglavlja WS2812 na Nano pin 5.

Učitaj: Primjeri> FastLED> Paleta boja

Promijenite NUM_LEDS u 1 i LED_TYPE u WS2812B

Prevesti i pokrenuti

NAPIŠITE NEKE KODE ZA VJEŽBANJE GUMBA I PREKIDAČA

Ne zaboravite upotrijebiti pinMode (INPUT_PULLUP) za čitanje gumba bez dodavanja otpornika.

KOMBINIRAJTE ZAJEDNO NEKE OD OVIH PRIMJERA

Na primjer, ciklički izlazite na neki zanimljiv način i pokažite stanja ili ulazne vrijednosti na OLED ili serijskom monitoru.

Korak 6: WEMOS ESP32 Lite

WEMOS ESP32 Lite
WEMOS ESP32 Lite

ESP32 mikrokontroler (MCU) je jeftin sustav male snage na čipu (SOC) s integriranim Wi-Fi-jem i dual-modu Bluetooth. ESP32 koristi jezgru Tensilica Xtensa LX6 i uključuje ugrađene antenske prekidače, RF balun, pojačalo snage, pojačalo s niskim šumom, filtre i module za upravljanje napajanjem. (wikipedia)

Modul WEMOS ESP32 Lite kompaktniji je od prethodne verzije što olakšava uporabu na ploči za lemljenje.

Napravite početno ispitivanje WEMOS ESP32 modula prije nego što zalemite zaglavlje na modulu.

Postavite paket podrške ESP32 u Arduino IDE.

U odjeljku alati> ploča svakako odaberite "WeMos LOLIN32"

Učitajte primjer koda na Datoteke> Primjeri> Osnove> Blink i programirajte ga na WeMos LOLIN32

Primjer programa trebao bi uzrokovati da LED na modulu treperi. Eksperimentirajte s promjenom parametara kašnjenja kako bi LED dioda trepnula s različitim uzorcima. Ovo je uvijek dobra vježba za izgradnju povjerenja u programiranje novog modula mikrokontrolera.

Nakon što se upoznate s radom modula i načinom na koji ga programirate, pažljivo zalemite dva reda igara zaglavlja na mjesto i još jednom testirajte programe učitavanja.

Korak 7: Generiranje videa ESP32

Image
Image

Ovaj video prikazuje ESP32 VGA knjižnicu i vrlo lijep, jednostavan vodič iz bitlunijevog laboratorija.

Demonstrirana 3-bitna implementacija (8 boja) koristi izravne žičane kratkospojnike između ESP32 modula i VGA konektora. Uspostavljanje ovih veza na VGA zaglavlju MCU Labovog laboratorija prilično je jednostavno jer nisu uključene dodatne komponente.

Ovisno o tome koji MCU se koristi, razini napona, razlučivosti piksela i željenoj dubini boje, postoje različite kombinacije ugrađenih otpornika i otporničkih mreža koje se mogu postaviti između MCU-a i VGA zaglavlja. Odlučite li se trajno koristiti ugrađene otpornike, oni se mogu lemiti na MCU Lab PCB. Ako želite zadržati fleksibilnost, a osobito ako želite koristiti složenija rješenja, preporučuje se da ne lemite otpornike na svoje mjesto i jednostavno upotrijebite ploče bez lemljenja i VGA zaglavlje za povezivanje potrebnih otpornika.

Na primjer, za implementaciju bitunijevog 14-bitnog načina boje prikazanog na kraju videa, ESP32 modul može se postaviti na jednu od mini ploča bez lemljenja, a druga ploča za lemljenje može se koristiti za povezivanje ljestvi otpornika.

Evo još nekih primjera:

U HackerBoxu 0047 Arduino Nano pokreće jednostavan VGA izlaz s 4 otpornika.

VIC20 Emulator implementiran je na ESP32 koristeći FabGL i 6 otpornika.

Implementirajte BASIC PC pomoću ESP32 i 3 otpornika.

Igrajte Space Invaders na ESP32 koristeći FabGL i 6 otpornika.

Generirajte VGA izlaz na STM32 sa 6 otpornika.

Simultani slojevi teksta i grafike na STM32 s video demonstracijom.

Korak 8: STM32F103C8T6 MCU modul s crnom pilulom

TXS0108E 8-bitni logički pomak razine
TXS0108E 8-bitni logički pomak razine

Black Pill je MCU modul temeljen na STM32. To je poboljšana varijanta na uobičajenoj plavoj piluli i rjeđoj crvenoj piluli.

Black Pill sadrži STM32F103C8T6 32-bitni ARM M3 mikrokontroler (podatkovna tablica), četveropolno ST-Link zaglavlje, MicroUSB priključak i korisničku LED diodu na PB12. Ispravan pull-up otpornik na PA12 dolazi instaliran za ispravan rad USB priključka. Ovo povlačenje obično je zahtijevalo izmjenu ploče na drugim pločama za tablete.

Iako je po izgledu slična Arduino Nano, Crna pilula je daleko moćnija. 32 -bitni STM32F103C8T6 ARM mikrokontroler može raditi na 72 MHz. Može izvesti množenje u jednom ciklusu i hardversku podjelu. Ima 64 Kbajta flash memorije i 20 Kbajta SRAM -a.

Programiranje STM32 iz Arduino IDE -a.

Korak 9: TXS0108E 8-bitni logički pomak razine

TXS0108E (podatkovni list) je 8-bitni dvosmjerni logički pomak razine. Modul je podešen na signale promjene razine između 3,3 V i 5 V.

Budući da su kanali razine signala dvosmjerni, plutajući ulazi mogu uzrokovati nenamjerno pokretanje odgovarajućih izlaza. Za zaštitu u takvim slučajevima predviđena je kontrola izlaznog omogućavanja (OE). Ovisno o tome kako je mjenjač spojen, treba biti oprezan kako bi se osiguralo da izlaz iz mjenjača ("namjeran" ili zbog plutajućeg ulaza s druge strane) nikada ne smije dopustiti unakrsni pogon izlaza s drugog uređaja.

OE -pin ostaje isključen u tragovima na PCB -u. Ispod modula nalazi se dvopolni zaglavlje za spajanje OE i 3V3. Skraćivanje dvopolnog zaglavlja (pomoću komada žice ili kratkospojnog bloka) spaja OE na 3V3 što omogućuje IC-u da upravlja svojim izlazima. Otpornik za spuštanje i logička kontrola također se mogu spojiti na OE pin.

Korak 10: HackLife

HackLife
HackLife

Nadamo se da uživate u ovomjesečnoj HackerBox avanturi u elektronici i računalnoj tehnologiji. Javite se i podijelite svoj uspjeh u komentarima ispod ili na Facebook grupi HackerBoxes. Također zapamtite da u bilo kojem trenutku možete poslati e -poruku na [email protected] ako imate pitanje ili trebate pomoć.

Što je sljedeće? Pridružite se revoluciji. Živite HackLife. Svaki mjesec nabavite hladnu kutiju opreme za hakiranje izravno u vaš poštanski sandučić. Pređite na stranicu HackerBoxes.com i prijavite se za mjesečnu pretplatu na HackerBox.

Preporučeni: