Mundarija:

VGA chiqishi bilan ESP32 asosiy kompyuter: 7 qadam
VGA chiqishi bilan ESP32 asosiy kompyuter: 7 qadam

Video: VGA chiqishi bilan ESP32 asosiy kompyuter: 7 qadam

Video: VGA chiqishi bilan ESP32 asosiy kompyuter: 7 qadam
Video: How to use DHT11 DHT22 with NodeMCU ESP8266 to read temperature over WiFi - IoT 2024, Iyul
Anonim
Image
Image
ESP32 taxtasi, Arduino IDE o'rnatish va VGA kutubxonasi konfiguratsiyasi
ESP32 taxtasi, Arduino IDE o'rnatish va VGA kutubxonasi konfiguratsiyasi

Bu yo'riqnomada men bitta ESP32 va boshqa bir nechta komponentlardan foydalangan holda retro uslubidagi oddiy kompyuterni qanday qurishni ko'rsataman.

Bu kompyuter BASIC -ning soddalashtirilgan dialekti bo'lgan Tiny Basic -da ishlaydi va VGA monitorining chiqishini yaratadi.

Ruxsat 640x350 piksel bo'lib, 8 ta rangda 80x25 ta asci belgisiga ruxsat beradi. PS2 klaviaturalari ulanishi va kod yozish uchun ishlatilishi mumkin, bu esa 14059 baytgacha xotiraga ega.

ESP32 kirish -chiqish pinlari to'g'ridan -to'g'ri maxsus BASIC buyruqlari bilan boshqarilishi mumkin.

Bu loyiha Fabrizio Di Vittorio tomonidan yozilgan ajoyib ESP32 VGA kutubxonasi yordamida amalga oshdi. Batafsil ma'lumot uchun bu erga qarang.

1 -qadam: ESP32 taxtasi, Arduino IDE -ni o'rnatish va VGA kutubxonasini sozlash

ESP32 taxtasi, Arduino IDE o'rnatish va VGA kutubxonasi konfiguratsiyasi
ESP32 taxtasi, Arduino IDE o'rnatish va VGA kutubxonasi konfiguratsiyasi
ESP32 taxtasi, Arduino IDE o'rnatish va VGA kutubxonasi konfiguratsiyasi
ESP32 taxtasi, Arduino IDE o'rnatish va VGA kutubxonasi konfiguratsiyasi

Birinchidan, siz ESP32 1 yoki undan yuqori versiyasini sotib olishingiz kerak. Ko'p versiyalar mavjud, lekin men ko'p pinli birini tanlashni tavsiya qilaman. Men ushbu versiyadan foydalanmoqdaman, lekin menimcha, boshqalari ham yaxshi. Masalan, ushbu videoning tavsifida siz 5 dollardan past bo'lgan boshqa uchta modelni topishingiz mumkin.

Kengashni olganingizdan so'ng, siz quyidagi uchta kichik bosqichni bajarishingiz kerak:

  1. Oxirgi Arduino IDE -ni o'rnating
  2. IDE -da ESP32 -ni sozlang
  3. VGA kutubxonasini o'rnating

1-qadam.

ESP32 -ni dasturlashning turli usullari mavjud, lekin bu erda siz eng yangi Arduino IDE -dan foydalanishingiz kerak (men 1.8.9 versiyasidan foydalanmoqdaman). O'rnatish uchun siz Arduino IDE sahifasiga o'tishingiz va ko'rsatmalarga amal qilishingiz mumkin.

2-qadam

Oldingi operatsiyani bajargandan so'ng, siz ESP32 -ni Arduino IDE -da sozlashingiz kerak. Bu ahamiyatsiz emas, chunki ESP32 (hali?) Ona tilida emas. Siz ushbu qo'llanmani yoki quyidagi amallarni bajarishingiz mumkin.

1) Arduino IDE -ni oching

2) imtiyozlar oynasini oching, Fayl/Preferentsiya, "Ctrl+vergul" ni bosing.

3) "Kengash menejerining qo'shimcha URL -lariga" o'ting, quyidagi matnni nusxa ko'chiring va joylashtiring:

https://dl.espressif.com/dl/package_esp32_index.json

va OK tugmasini bosing.

4) Ochiq taxtalar menejeri. Asboblar/Kengash/Kengash menejeriga o'ting …

5) ESP32 -ni qidiring va "ESP32 by Espressif Systems" uchun o'rnatish tugmasini bosing:

6) Bu vaqtda, siz birinchi marta ESP32 -ni ulaganingizda, mavjud ESP32 platalar ro'yxatidan to'g'ri modelni tanlashingiz kerak (bu bosqichdagi rasmga qarang). Agar modelga shubha tug'ilsa, umumiy, ya'ni birinchisini tanlang. Bu men uchun ishlaydi.

7) tizim to'g'ri USB portini va yuklash tezligini (odatda 921600) tanlashi kerak. Bu vaqtda sizning kompyuteringiz va ESP32 kartasi o'rtasida aloqa o'rnatilishi kerak.

3-qadam

Nihoyat, siz FabGL VGA kutubxonasini o'rnatishingiz kerak. [2019 yil iyulni yangilash] Sizga kerak va bu kutubxonaning eski versiyasi: zr faylini src.old.zip -ni ushbu bosqichning pastki qismidan yuklab olishingiz mumkin, oching va papkani "src" deb o'zgartiring.

"… / arduino-1.8.9 / kutubxonalar" papkasi.

Ushbu operatsiyalarni bajarganingizdan so'ng, siz keyingi bosqichga o'tishingiz va keyingi bosqichdan so'ng o'zgartirilgan TinyBasic -ni yuklashingiz mumkin.

2 -qadam: Kichik asosiy kodni ESP32 -ga yuklash

Kichik asosiy kodni ESP32 -ga yuklash
Kichik asosiy kodni ESP32 -ga yuklash
Kichik asosiy kodni ESP32 -ga yuklash
Kichik asosiy kodni ESP32 -ga yuklash

Ushbu qadamning pastki qismida ESP32_TinyBasicPlus_PS2_FabLab_beta.ino -ni yuklab oling.

Uni Arduino IDE bilan oching va uni xom ESP32 -ga yuklang.

Agar xato xabari bo'lmasa, kod allaqachon ishlayotgan bo'lishi kerak.

Fakultativ qadam: agar siz VGA va PS2 klaviaturasini ulashdan oldin TinyBasic -ni sinab ko'rmoqchi bo'lsangiz, buni allaqachon SSH va telnet mijozi yordamida qilishingiz mumkin. Men PuTTY dan foydalanaman.

Bu qadamda qanday ko'rinishini rasmlarda ko'rishingiz mumkin.

3 -qadam: VGA portini ulash

VGA portini ulash
VGA portini ulash

Sizga quyidagi qismlar kerak bo'ladi:

  • DSUB15 ulagichi, ya'ni VGA ayol ulagichi yoki kesiladigan VGA kabeli.
  • uchta 270 Ohm qarshilik.

ESP32 GPIO pin 2, 15 va 21 ni mos ravishda 270 Ohmli rezistorlar orqali VGA qizil, yashil va ko'k rangga ulang.

VGA Hsync va Vsync -ni mos ravishda ESP32 GPIO 17 va 4 -pinlariga ulang.

5, 6, 7, 8 va 10 -chi DSUB15 ulagichlarini ESP32 GND ga ulang.

VGA DSUB15 ulagichi pinining ta'rifi uchun ushbu bosqichdagi rasmga qarang. NB, bu ayol ulagichining lehim tomoni.

4 -qadam: PS2 portini ulash

PS2 portini ulash
PS2 portini ulash

Sizga PS2 klaviatura ayol ulagichi kerak.

Siz uni eski kompyuterning anakartidan olishingiz mumkin, uni oddiy qurol bilan sotmang. Ushbu bosqichda ko'rsatilgan rasmda siz PS2 ulagichining kerakli pinlarining vazifasini topishingiz mumkin.

Ulanish quyidagilar:

  • ESP32 GPIO pin 32 uchun klaviatura ma'lumotlari
  • IRSP klaviaturasi (soat) ESP32 GPIO pin 33 ga
  • Bundan tashqari, 5V va GND pinlarini ulashingiz kerak.

5 -qadam: Tiny Basic bilan dasturlash

Tiny Basic bilan dasturlash
Tiny Basic bilan dasturlash
Tiny Basic bilan dasturlash
Tiny Basic bilan dasturlash

Agar siz VGA monitorini va PS2 klaviaturasini va ESP32 ni quvvat manbaiga ulashingiz mumkin.

Bu erda ko'rsatilgan rasm monitorda paydo bo'lishi kerak. Endi siz Tiny Basic buyruqlari bilan biroz o'ynashingiz mumkin.

Masalan, Salom, Word majburiy harakat qilib ko'ring. cheksiz pastadir:

10 bosma "Salom, dunyo!"

20 ta 10

chopmoq

Esc tugmachasini bosib to'rt xil rangda o'zgartirishingiz mumkin va tsiklni ctrl+c tugmachalari bilan to'xtatishingiz mumkin

E'tibor bering, agar siz xatoga yo'l qo'ysangiz, uni bekor qila olmaysiz! Yaxshisi, siz bekor qilishingiz mumkin, lekin keyin xatoni tuzatish tan olinmaydi. Siz butun buyruq satrini qayta yozishingiz kerak.

Endi siz murakkab dasturni sinab ko'rishingiz mumkin, masalan, asosiy dastur bilan LEDning miltillashi. Masalan, LED anodini (uzun oyoqli) ESP32 GPIO pin 13 ga va katodni GND ga ulang.

Keyin yozing:

yangi

10 i = 1000

20 bosma i

30 kechikish i

40 yozish 13, baland

50 kechikish i

60 yozish 13, past

70 i = i*9/10

80, agar men> 0 20 ga kirsam

90 oxiri

chopmoq

Natijani ushbu ko'rsatmaga o'rnatilgan videoda ko'rishingiz mumkin.

6 -qadam: SD xotira kartasini ulash

SD xotira kartasini ulash
SD xotira kartasini ulash
SD xotira kartasini ulash
SD xotira kartasini ulash

Amp kompyuter, qanchalik kichik va zaif bo'lishidan qat'i nazar, to'liq bo'lmasligi mumkin, agar siz dasturlarni doimiy saqlay olmasangiz.

Bu qadamda men SD xotira kartasini qanday ulashni ko'rsataman, lekin afsuski, hozircha (faqat umid qilaman), dasturlarni saqlash ishlamayapti!

BTW, men microSD-dan SD-karta adapteridan foydalandim va bu bosqichda rasmda ko'rsatilgandek 8 ta L shaklidagi pinni lehimladim.

Keyin men ikkinchi adapterga muvofiq SD adapter pinlarini ESP32 ga uladim, ya'ni 5, 18, 19, 23 ESP32 GPIO pinlarini mos ravishda SC, soat, MISO, MOSO ga, shuningdek 3.3V va ikkita GND ga uladim.

Men bu erda keltirilgan ko'rsatmalar va misollarga amal qildim va SD_test.ino misolida 2 Gbaytli microSD kartamga yozishim mumkin.

Agar kimdir yechim topsa, iltimos, [email protected] elektron pochtamga xabar bering va men bu ko'rsatmani to'ldiraman.

7 -qadam: Rahmat

Rahmatlar
Rahmatlar

Men o'z tanklarimni Fabrizio Di Vittorioga ajoyib ESP32 VGA kutubxonasi uchun bildirmoqchiman. Qo'shimcha ma'lumot, misollar va… Space Invaders uchun uning saytiga tashrif buyuring.

Tiny Basic mualliflariga ham katta rahmat:

  • Mayk Fild
  • Skott Lourens
  • Brayan O'Dell

Nihoyat, agar sizga bu loyiha yoqsa, iltimos, sharh yozing yoki o'zingiz yaratgan qurilmaning rasmini baham ko'ring … va umuman, Arduino tanlovida unga ovoz bering!

Tavsiya: