Isi kandungan:

HackerBox 0051: Makmal MCU: 10 Langkah
HackerBox 0051: Makmal MCU: 10 Langkah

Video: HackerBox 0051: Makmal MCU: 10 Langkah

Video: HackerBox 0051: Makmal MCU: 10 Langkah
Video: MCU LAB Demo with Potentiometer and OLED Display 2024, Julai
Anonim
HackerBox 0051: Makmal MCU
HackerBox 0051: Makmal MCU

Salam untuk Penggodam HackerBox di seluruh dunia! HackerBox 0051 mempersembahkan Makmal MCU HackerBox. Makmal MCU adalah platform pengembangan untuk menguji, mengembangkan, dan prototaip dengan modul mikrokontroler dan mikrokontroler. Arduino Nano, Modul ESP32, dan SMT32 Black Pill digunakan untuk meneroka blok ciri Makmal MCU. Blok ciri Makmal MCU merangkumi suis, butang, LED, paparan OLED, buzzer, potensiometer, piksel RGB, pergeseran tahap logik, output VGA, input papan kekunci PS / 2, antara muka bersiri USB, dan kawasan prototaip dua solderless.

Panduan ini mengandungi maklumat untuk memulakan dengan HackerBox 0051, yang boleh dibeli di sini selagi bekalan masih ada. Sekiranya anda ingin menerima HackerBox seperti ini di kotak surat anda setiap bulan, sila langgan di HackerBoxes.com dan sertai revolusi!

HackerBoxes adalah perkhidmatan kotak langganan bulanan untuk penggodam perkakasan dan peminat teknologi elektronik dan komputer. Sertailah kami dalam hidup HACK LIFE.

Langkah 1: Senarai Kandungan untuk HackerBox 0051

  • Modul MCU 1: Arduino Nano 5V, 16MHz
  • Modul MCU 2: WEMOS ESP32 Lite
  • Modul MCU 3: Pil Hitam STM32F103C8T6
  • Papan Litar Bercetak Makmal MCU Eksklusif
  • Penyesuai Siri USB FT232RL
  • Paparan OLED 128x64 I2C 0.96 Inci
  • Shifter Tahap Logik 8-Bit dua arah
  • WS2812B RGB SMD LED
  • Butang Taktil Empat Permukaan
  • Empat LED Merah 5mm Diffused
  • Piezo Buzzer
  • Penyambung V15 HD15
  • Penyambung Papan Kekunci Mini-DIN PS / 2
  • Potensiometer 100k Ohm
  • Suis DIP 8 Posisi
  • AMS1117 3.3V Linear Regulator SOT223
  • Dua Kapasitor Tantalum 22uF 1206 SMD
  • Sepuluh Perintang 680 Ohm
  • Empat Kaki PCB Getah Perekat
  • Dua Papan Roti Mini Solderless 170 mata
  • Soket Header Wanita Eleven 8 pin
  • Breakaway Header 40 pin
  • Kumpulan 65 Kawat Jumper Lelaki
  • Pelekat Papan Litar Fist Terbesar
  • Hack Pelekat Pirate Smiley Pirate
  • Rantai Kunci HackerBox Eksklusif "Buang Sebelum Penerbangan"

Beberapa perkara lain yang akan membantu:

  • Alat pemateri besi solder, solder, dan asas
  • Komputer untuk menjalankan alat perisian

Yang paling penting, anda memerlukan rasa pengembaraan, semangat penggodam, kesabaran, dan rasa ingin tahu. Membangun dan bereksperimen dengan elektronik, walaupun sangat bermanfaat, kadang-kadang sukar, mencabar, dan bahkan mengecewakan. Tujuannya adalah kemajuan, bukan kesempurnaan. Apabila anda bertahan dan menikmati pengembaraan, kepuasan yang banyak dapat diperoleh dari hobi ini. Lakukan setiap langkah dengan perlahan, ingat perinciannya, dan jangan takut untuk meminta pertolongan.

Terdapat banyak maklumat untuk ahli semasa dan calon di FAQ HackerBoxes. Hampir semua e-mel sokongan bukan teknikal yang kami terima sudah dijawab di sana, jadi kami sangat menghargai anda mengambil masa beberapa minit untuk membaca Soalan Lazim.

Langkah 2: Makmal HackerBoxes

Makmal HackerBoxes MCU
Makmal HackerBoxes MCU

Makmal MCU adalah platform pengembangan yang ringkas dan digilap yang kami gunakan untuk memprotaip dan menguji pelbagai reka bentuk berasaskan mikrokontroler (MCU). Ia sangat berguna untuk bekerja dengan modul MCU (seperti Arduino Nano, ESP32 DevKit, dll) atau pakej peranti MCU individu (seperti ATMEGA328s, ATtiny85s, PIC, dll). MCU sasaran boleh diletakkan ke dalam salah satu papan roti tanpa solder mini. Dua MCU dapat dihubungkan bersama menggunakan kedua papan roti atau salah satu ruang papan roti boleh digunakan untuk litar lain.

"Blok ciri" Makmal MCU dibahagikan kepada tajuk wanita yang serupa dengan yang terdapat di Arduino UNO. Header wanita sesuai dengan pin pelompat lelaki.

Langkah 3: Pasang Makmal MCU HackerBoxes

Pasang Makmal MCU HackerBoxes
Pasang Makmal MCU HackerBoxes

KOMPONEN SMD DI KEMBALI DEWAN

Mulakan dengan memasang Linear Regulator AMS1117 (Paket SOT 233) dan dua kapasitor penapis 22uF di bahagian belakang PCB. Perhatikan bahawa satu sisi dari setiap silkscreen kapasitor adalah segi empat tepat dan sisi yang lain adalah segi lapan. Kapasitor harus berorientasikan supaya warna gelap pada bungkusannya sejajar dengan sisi sutera segi lapan.

TERUSKAN DENGAN KOMPONEN DI DEPAN DEWAN

Selesaikan LED WS2812B RGB. Orientasikan sudut bertanda putih setiap LED untuk bersesuaian dengan sudut tab seperti yang ditunjukkan pada silkscreen PCB.

Empat Butang Taktil SMD

Empat LED Merah dengan Empat Perintang

Level Shifter dengan penanda VA pin 3V3 terdekat dan penanda 5B pin VB terdekat. Modul Level Shifter dapat dipasang flush ke PCB dengan menyisipkan header ke modul dan kemudian meluncurkan spacer plastik hitam dari header sebelum memasang modul ke MCU Lab PCB. Membiarkan spacer tetap baik juga.

Dua helai header dapat diputuskan untuk menyambungkan modul FT232. Bahagian header 4-pin yang lebih kecil juga dapat digunakan untuk header 5V / GND tepat di sebelah modul FT232.

Buat masa ini, isikan header VGA wanita yang paling hampir dengan penyambung HD15 VGA dan Keyboard Socket. Walau bagaimanapun, JANGAN MENDUDUKI header tambahan yang bersebelahan dengan satu atau lima perintang antara kedua header tersebut. Pilihan khusus untuk antara muka isyarat video dibincangkan kemudian.

Isi sembilan tajuk wanita yang lain.

Tanggalkan pelekat dari belakang kedua papan roti tanpa pateri untuk memasangkannya ke MCU Lab PCB.

Letakkan kaki getah pelekat ke bahagian bawah PCB Makmal MCU untuk melindungi meja kerja anda dari calar.

MENYERTAI INPUT KUASA

Terdapat sekurang-kurangnya dua, dan lebih mungkin sebanyak empat, tempat di mana kuasa masuk ke Makmal MCU. Ini boleh menyebabkan masalah, jadi selalu perhatikan petunjuk berikut:

Titik tajuk berlabel 5V semuanya bersambung. Rel 5V juga menghubungkan ke soket papan kekunci, pemindah level, dan WS2812B RGB LED. Kuasa dapat dibekalkan ke rel 5V dengan memasukkan FT232 ke dalam USB, menyambungkan header kuasa empat pin ke bekalan luaran, atau dengan menyambungkan pelompat dari salah satu pin 5V pada PCB ke modul 5V bertenaga (biasanya dikuasakan oleh USB).

Begitu juga, pin GND semuanya bersambung. Mereka menyambung ke USB GND pada FT232 (dengan andaian USB disambungkan ke FT232). Mereka juga dapat dihubungkan ke tanah menggunakan pelompat antara salah satu dari mereka dan modul bertenaga seperti yang dibincangkan untuk jaring 5V.

Rel 3V3 didorong oleh pengatur di bahagian belakang PCB. Ia hanya sumber dan (tidak seperti rel 5V) ia tidak boleh dipacu oleh modul atau litar lain kerana dipacu terus dari pengatur pada rel 5V.

Langkah 4: Modul Arduino Nano MCU

Modul Arduino Nano MCU
Modul Arduino Nano MCU

Salah satu modul MCU yang paling biasa pada masa ini adalah Arduino Nano. Papan Arduino Nano yang disertakan dilengkapi dengan pin header, tetapi tidak disolder ke modul. Biarkan pin untuk sekarang. Lakukan ujian awal ini pada modul Arduino Nano sebelum menyolder pada pin header. Yang diperlukan hanyalah kabel microUSB dan papan Arduino Nano sama seperti yang keluar dari beg.

Arduino Nano adalah papan Arduino miniatur permukaan-mount, mesra roti, dengan USB bersepadu. Ia mempunyai ciri-ciri yang luar biasa dan mudah digodam.

Ciri-ciri:

  • Pengawal mikro: Atmel ATmega328P
  • Voltan: 5V
  • Pin I / O Digital: 14 (6 PWM)
  • Pin Input Analog: 8
  • Arus DC setiap Pin I / O: 40 mA
  • Memori Kilat: 32 KB (2KB untuk pemuat but)
  • SRAM: 2 KB
  • EEPROM: 1 KB
  • Kelajuan Jam: 16 MHz
  • Dimensi: 17mm x 43mm

Varian khas Arduino Nano ini adalah Robotdyn Nano hitam. Termasuk port MicroUSB on-board yang disambungkan ke cip jambatan USB / Serial CH340G. Maklumat terperinci mengenai CH340 (dan pemandu, jika diperlukan) boleh didapati di sini.

Semasa pertama kali memasang Arduino Nano ke port USB komputer anda, lampu hijau akan menyala dan tidak lama selepas LED biru akan mula berkelip perlahan. Ini berlaku kerana Nano sudah dimuatkan dengan program BLINK, yang dijalankan pada Arduino Nano yang baru.

PERISIAN: Sekiranya anda belum memasang Arduino IDE, anda boleh memuat turunnya dari Arduino.cc

Pasang Nano ke kabel MicroUSB dan hujung kabel yang lain ke port USB di komputer. Lancarkan perisian Arduino IDE. Pilih "Arduino Nano" di IDE di bawah alat> papan dan "ATmega328P (pemuat but lama)" di bawah alat> pemproses. Pilih port USB yang sesuai di bawah alat> port (kemungkinan ada nama dengan "wchusb" di dalamnya).

Akhirnya, muatkan sekeping kod contoh: Fail-> Contoh-> Asas-> Berkedip

Blink sebenarnya adalah kod yang telah dimuat sebelumnya ke Nano dan harus dijalankan sekarang untuk perlahan-lahan mengedipkan LED biru. Oleh itu, jika kita memuatkan kod contoh ini, tidak ada yang akan berubah. Sebaliknya, mari kita ubah sedikit kodnya.

Melihat dengan teliti, anda dapat melihat bahawa program menyalakan LED, menunggu 1000 milisaat (satu saat), mematikan LED, menunggu sesaat lagi, dan kemudian melakukannya sekali lagi - selama-lamanya.

Ubah kod dengan menukar kedua-dua pernyataan "delay (1000)" menjadi "delay (100)". Pengubahsuaian ini akan menyebabkan LED berkelip sepuluh kali lebih pantas, bukan?

Mari muatkan kod yang diubah suai ke Nano dengan mengklik butang UPLOAD (ikon anak panah) tepat di atas kod yang anda ubah. Tonton di bawah kod untuk maklumat status: "menyusun" dan kemudian "memuat naik". Akhirnya, IDE akan menunjukkan "Muat Naik Selesai" dan LED anda akan berkelip lebih cepat.

Sekiranya ada, tahniah! Anda baru sahaja menggodam kod terbenam pertama anda.

Setelah versi sekejap anda dimuat dan dijalankan, mengapa tidak melihat apakah anda boleh menukar kod lagi sehingga LED berkelip cepat dua kali dan kemudian tunggu beberapa saat sebelum mengulangi? Mencubanya! Bagaimana dengan beberapa corak lain? Setelah anda berjaya memvisualisasikan hasil yang diinginkan, mengkodkannya, dan memerhatikannya agar berfungsi seperti yang dirancang, anda telah mengambil langkah besar untuk menjadi penggodam perkakasan yang kompeten.

Setelah anda mengesahkan pengoperasian modul Nano, teruskan dan pasangkan pin header ke atasnya. Setelah header disambungkan, modul dapat digunakan dengan mudah di salah satu papan roti solderless Lab MCU. Proses menguji modul MCU ini dengan memuat turun beberapa kod ujian mudah, mengubah suai, dan memuat turun semula adalah amalan terbaik setiap kali menggunakan modul MCU jenis baru, atau yang berbeza.

Sekiranya anda menginginkan maklumat pengenalan tambahan untuk bekerja di ekosistem Arduino, kami mencadangkan untuk melihat Panduan untuk Bengkel Pemula HackerBoxes, yang merangkumi beberapa contoh dan pautan ke Buku Teks Arduino PDF.

Langkah 5: Terokai Makmal MCU Dengan Arduino Nano

Terokai Makmal MCU Bersama Arduino Nano
Terokai Makmal MCU Bersama Arduino Nano

POTENTIOMETER

Sambungkan pin pusat potensiometer ke Nano Pin A0.

Muat dan Jalankan: Contoh> Analog> Input Analog

Contohnya lalai ke LED onboard Nano. Putar potensiometer untuk mengubah kelajuan berkelip.

Ubah suai:

Dalam kod, ubah LedPin = 13 hingga 4

Pelompat dari Nano Pin 4 (dan GND) ke salah satu LED merah Makmal MCU.

PEMBUAT

Pelompat dari Buzzer ke Nano Pin 8. Pastikan papan GND disambungkan ke GND Nano yang dikuasakan kerana tanah buzzer adalah kabel keras ke jaring papan GND.

Muat dan Jalankan: Contoh> Digital> toneMelody

PAPARAN OLED

Dalam Arduino IDE, gunakan pengurus perpustakaan untuk memasang "ssd1306" dari Alexey Dyna.

Sambungkan OLED: GND ke GND, VCC ke 5V, SCL ke Nano's A5, SDA ke Nano's A4

Muat dan Jalankan: Contoh> ssd1306> demo> ssd1306_demo

WS2812B RGB LED

Dalam Arduino IDE, gunakan pengurus perpustakaan untuk memasang FastLED

Sambungkan pin header WS2812 ke pin Nano 5.

Muat: Contoh> FastLED> ColorPalette

Tukar NUM_LEDS menjadi 1 dan LED_TYPE ke WS2812B

Menyusun dan Menjalankan

MENULIS BEBERAPA KOD UNTUK MENGELAKKAN Tombol DAN PEMAKAIAN

Ingatlah untuk menggunakan pinMode (INPUT_PULLUP) untuk membaca butang tanpa menambahkan perintang.

GABUNGKAN BEBERAPA CONTOH INI BERSAMA

Contohnya, keluarkan kitaran dengan cara yang menarik dan tunjukkan keadaan atau nilai input pada monitor OLED atau bersiri.

Langkah 6: WEMOS ESP32 Lite

WEMOS ESP32 Lite
WEMOS ESP32 Lite

Mikrokontroler ESP32 (MCU) adalah sistem kuasa rendah dan rendah pada cip (SOC) dengan Wi-Fi bersepadu dan Bluetooth mod dwi. ESP32 menggunakan teras Tensilica Xtensa LX6 dan termasuk suis antena terbina dalam, balun RF, penguat kuasa, penguat penerimaan kebisingan rendah, penapis, dan modul pengurusan kuasa. (wikipedia)

Modul WEMOS ESP32 Lite lebih ringkas daripada versi sebelumnya yang menjadikannya lebih mudah digunakan pada papan roti tanpa pateri.

Buat ujian awal modul WEMOS ESP32 anda sebelum memasangkan pin header ke modul.

Sediakan pakej sokongan ESP32 di Arduino IDE.

Di bawah alat> papan, pastikan untuk memilih "WeMos LOLIN32"

Muatkan kod contoh di Fail> Contoh> Asas> Blink dan atur program ke WeMos LOLIN32

Program contoh harus menyebabkan LED pada modul berkelip. Eksperimen dengan mengubah parameter kelewatan untuk menjadikan LED berkelip dengan corak yang berbeza. Ini selalu merupakan latihan yang baik untuk membina keyakinan dalam memprogram modul mikrokontroler baru.

Setelah anda merasa selesa dengan pengoperasian modul dan cara memprogramnya, pasangkan dua baris pin header dengan teliti dan uji program memuatkan sekali lagi.

Langkah 7: Penjanaan Video ESP32

Image
Image

Video ini menunjukkan Perpustakaan VGA ESP32 dan tutorial ringkas yang sangat bagus dari makmal bitluni.

Pelaksanaan 3-bit (8 warna) yang ditunjukkan menggunakan pelompat wayar langsung antara modul ESP32 dan penyambung VGA. Membuat sambungan ini pada header VGA Lab MCU agak mudah kerana tidak ada komponen tambahan yang terlibat.

Bergantung pada MCU mana yang digunakan, tahap voltan, resolusi piksel, dan kedalaman warna yang diinginkan, terdapat pelbagai kombinasi perintang sebaris dan rangkaian perintang yang mungkin ditempatkan antara MCU dan header VGA. Sekiranya anda memutuskan untuk menggunakan perintang sebaris secara kekal, mereka boleh disolder ke MCU Lab PCB. Sekiranya anda ingin mengekalkan kelenturan dan terutama jika anda ingin menggunakan penyelesaian yang lebih kompleks, maka disarankan untuk tidak menyolokkan perintang ke tempatnya dan hanya menggunakan papan solderless dan header VGA untuk menyambungkan perintang yang diperlukan.

Sebagai contoh, untuk melaksanakan mod warna 14-bit bituni yang ditunjukkan pada akhir video, modul ESP32 boleh diletakkan pada salah satu papan tanpa solder mini dan papan tanpa solder yang lain dapat digunakan untuk menghubungkan tangga perintang.

Berikut adalah beberapa contoh lain:

Dalam HackerBox 0047, Arduino Nano mendorong output VGA sederhana dengan 4 perintang.

Emulator VIC20 dilaksanakan pada ESP32 menggunakan FabGL dan 6 perintang.

Laksanakan PC BASIC menggunakan perintang ESP32 dan 3.

Main Space Invaders pada ESP32 menggunakan FabGL dan 6 perintang.

Hasilkan output VGA pada STM32 dengan 6 perintang.

Lapisan Teks dan Grafik serentak pada STM32 dengan demonstrasi Video.

Langkah 8: Modul MCU Pil Hitam STM32F103C8T6

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

The Black Pill adalah Modul MCU berasaskan STM32. Ini adalah varian yang lebih baik pada Pil Biru biasa dan Pil Merah yang kurang biasa.

Black Pill menampilkan mikrokontroler STM32F103C8T6 32bit ARM M3 (lembar data), header ST-Link empat pin, port MicroUSB, dan LED pengguna pada PB12. Perintang penarik yang betul pada PA12 dipasang untuk pengoperasian port USB yang betul. Pull-up ini biasanya memerlukan pengubahsuaian papan pada Pill Board lain.

Walaupun serupa dengan Arduino Nano, Black Pill jauh lebih hebat. Mikrokontroler 32bit STM32F103C8T6 ARM dapat berjalan pada 72 MHz. Ia dapat melakukan pendaraban kitaran tunggal dan pembahagian perkakasan. Ia mempunyai memori Flash 64 Kbytes dan SRAM 20 Kbytes.

Memprogram STM32 dari Arduino IDE.

Langkah 9: TXS0108E 8-Bit Logic Level Shifter

TXS0108E (lembar data) adalah 8-Bit Bidirectional Logic Level Shifter. Modul disiapkan untuk isyarat peralihan tahap antara 3.3V dan 5V.

Oleh kerana saluran tahap isyarat dua arah, input terapung dapat menyebabkan output yang sesuai didorong secara tidak sengaja. Kontrol membolehkan output (OE) disediakan untuk melindungi dalam senario tersebut. Perhatian harus diambil bergantung pada bagaimana shifter dihubungkan untuk memastikan bahawa output dari shifter (sama ada "disengaja" atau kerana input mengambang di sisi lain) tidak pernah dibenarkan untuk memacu output dari peranti lain.

Pin OE dibiarkan terputus dalam jejak PCB. Header dua pin disediakan di bawah modul untuk menghubungkan OE dan 3V3. Memendekkan header dua pin (menggunakan sekeping wayar atau blok jumper) menghubungkan OE ke 3V3 yang membolehkan IC memacu outputnya. Perintang pulldown dan kawalan logik juga boleh disambungkan ke pin OE.

Langkah 10: HackLife

HackLife
HackLife

Kami harap anda menikmati pengembaraan HackerBox bulan ini ke dalam teknologi elektronik dan komputer. Jangkau dan kongsi kejayaan anda dalam komen di bawah atau di Kumpulan Facebook HackerBoxes. Juga, ingat bahawa anda boleh menghantar e-mel ke [email protected] bila-bila masa sekiranya anda mempunyai pertanyaan atau memerlukan bantuan.

Apa yang akan datang? Sertailah revolusi. Jalankan HackLife. Dapatkan kotak gear hackable yang hebat dihantar terus ke peti mel anda setiap bulan. Melayari HackerBoxes.com dan mendaftar langganan HackerBox bulanan anda.

Disyorkan: