Mundarija:
- 1 -qadam: materiallar ro'yxati
- 2 -qadam: Kutubxona va eskizni yuklash
- 3 -qadam: qismlarni ulash: VGA ulagichi
- 4 -qadam: qismlarni ulash: potentsiometr va tugma
- 5 -qadam: Xulosa va minnatdorchilik
Video: ESP8266 VGA Pong: 5 qadam (rasmlar bilan)
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:26
Bu yo'riqnomada men ESP8266 va boshqa bir nechta komponentlardan foydalangan holda VGA monitor uchun klassik Pong o'yinining klassik nusxasini qanday yaratishni ko'rsataman.
Bu o'yin yaqinda Sandro Maffiodo (aka Smaffer) tomonidan GitHub -da chop etilgan EspVGAx kutubxonasi yordamida amalga oshirildi va men bilganimdek, bu uni ishlatgan birinchi o'yin.
Kutubxona 512 x 480 pikselli, RAM ichidagi ramka buferida saqlanadi, buning uchun 30720 bayt kerak bo'ladi. Ruxsat Arduino TVout yoki VGAx bilan solishtirganda juda katta (mos ravishda 128 x 96 va 120 x 60 piksel). Umid qilamanki, bu o'yin boshqa dasturchilarni yanada murakkab o'yinlarni ishlab chiqish yoki qayta ishlab chiqarishga ilhomlantiradi.
1 -qadam: materiallar ro'yxati
EspVGAx kutubxonasi ESP-12E, NodeMCU-12E kartasi yoki GPIO5 (D1), GPIO4 (D2) va GPIO13 (D7) ni ochadigan har qanday karta kabi barcha GPIO ochiq bo'lgan ESP8266 ni talab qiladi.
Xususan, men foydalanganman:
- ESP8266 NodeMCU-12E (havola bu erda)
- DSUB15 ulagichi (ya'ni VGA ayol ulagichi)
- 330 Ohm qarshilik
- boshqa qarshilik (taxminan 1-3 kOm)
- ikkita 10 kOm potentsiometr
- bosish tugmasi (no)
- ikkita diod (masalan, 1N4007s)
- non taxtasi
- simlar
Men eski VGA kompyuter kartasidan DSUB15 ulagichini oldim. Shu bilan bir qatorda, siz eski VGA kabelini kesib, simlarni to'g'ridan -to'g'ri non taxtasiga ulashingiz mumkin.
2 -qadam: Kutubxona va eskizni yuklash
Dasturlashning turli usullari va ESP8266 mavjud; Men Pong yozish va kodni yuklash uchun Arduino IDE -dan foydalandim.
E'tibor bering, EspVGAx kutubxonasi Arduino IDE 1.8.1 uchun ishlaydi. Agar sizda boshqa versiyalar bo'lsa, eng yaxshisi.zip fayllarini yuklash va uni maxsus papkada ochishdir. Windows versiyasi bu erda. Boshqa OS uchun versiyalar bu erda.
Shundan so'ng, siz EspVGAx kutubxonasini GithHub sahifasidan bu erga yuklashingiz kerak (bu erda zip versiyasi uchun to'g'ridan -to'g'ri havola) va Arduino dasturiy ta'minot papkalari kutubxonalarida oching.
Eslatma espvgax_draw.h faylida kichik xato bor. Buni tuzatish uchun 17 -qatorni almashtiring:
while (x0%32) {with while (x0%32 && sw> 32) {
Nihoyat, ushbu qadam oxirida ESP8266_Pong.rar -ni yuklashingiz mumkin.
Yuklab olingandan so'ng, uni ESP8266 -ga yuklash uchun siz Arduino IDE -ni sozlashingiz kerak.
Agar siz buni hech qachon qilmagan bo'lsangiz, ushbu yo'riqnomadagi barcha kerakli ko'rsatmalarni, xususan, 2 -bosqichda topishingiz mumkin.
Hammasi sozlangandan so'ng, ESP8266 sozlamalari yuqoridagi rasmda ko'rsatilganidek bo'lishi kerak.
Agar siz kodni xatosiz yuklay olsangiz, qismlarni yig'ishni boshlashingiz mumkin.
3 -qadam: qismlarni ulash: VGA ulagichi
Yuqoridagi rasmlarda ko'rsatilgandek, avval VGA portini ulashni tavsiya qilaman. E'tibor bering, uchta pinni qizil, yashil va ko'kni bir -biriga ulash orqali (ya'ni DSUB15 ulagichidagi 1, 2 va 3 -pinlar) siz ekraningizda B&W tasviriga ega bo'lasiz. Bundan tashqari, siz turli xil ranglar kombinatsiyasiga ega bo'lishingiz mumkin. Tafsilotlarni kutubxona GitHub sahifasida ko'ring.
Bundan tashqari, siz ESP8266 dagi RGB pinlari va D7 (GPIO13) o'rtasida 330 Ohmli rezistorni ulashingiz kerak. Bu menga monitorimda biroz kulrang tasvirni berdi, shuning uchun bir necha urinishlardan so'ng men uni butunlay yo'q qilishga qaror qildim.
Bu erda, agar hamma narsa to'g'ri ishlayotgan bo'lsa, siz allaqachon monitorni ulashingiz va "ESP8266 VGAx Pong" banner bilan o'yinning boshlang'ich ekranini ko'rishingiz mumkin.
4 -qadam: qismlarni ulash: potentsiometr va tugma
Tugma 3.3V va pin D0 (GPIO16) o'rtasida ulangan bo'lishi kerak. Shuningdek, 1 dan 3 kOm gacha bo'lgan qarshilikni D0 dan erga ulang. Bu D0 tugmasi ochiq bo'lganda aniqlanmagan holatga tushishiga yo'l qo'ymaydi.
Ikkita potentsiometrning ulanishi unchalik ahamiyatsiz, chunki ESP8266 faqat analog kirish porti A0 (ADC0) ga ega! Hiyla shundaki, ikkala pot.s chiqishini bir xil portga ulash va ularni "ko'paytirish". Multiplekslash - bu potentsiometrni yoqish, o'qish, keyin o'chirish va ikkinchisiga o'tish degan ma'noni anglatadi.
Agar siz ushbu usul haqida ko'proq bilmoqchi bo'lsangiz, ushbu ko'rsatmani o'qishingiz mumkin.
Bir potentsiometrni GND ga, ikkinchisini chap o'yinchi potentsiometrini D5 ga va o'ng o'yinchi uchun D6 ga ulang.
Har bir potentsiometrning markaziy pimi alohida diodga ulanishi kerak va diodlarning boshqa tomonlari yuqoridagi rasmda ko'rsatilgan qutb bilan A0 (ADC0) ga ulangan bo'lishi kerak.
5 -qadam: Xulosa va minnatdorchilik
Men Sandro Maffiododan minnatdorman - SMAFFER - ESPVGAX kutubxonasi uchun. Busiz bu o'yin mumkin emas edi.
Umid qilamanki, bu ko'rsatma boshqa dasturchilarga Arduino -ga qaraganda ancha kam cheklangan ESP8266 bilan yanada murakkab klassik arja o'yinlarini ishlab chiqarishga ilhom beradi.
Nihoyat, men uni "O'yinchoqlar tanlovi" ga yuborish uchun "Ko'rsatma" ni yozdim: agar siz uni yoqtirsangiz yoki takrorlasangiz, iltimos, bir oz vaqt ajrating!
Tavsiya:
ESP8266 - Internet / ESP8266 orqali taymer va masofadan boshqarish bilan bog'ni sug'orish: 7 qadam (rasmlar bilan)
ESP8266 - Internet orqali taymer va masofadan boshqarish pulti yordamida bog'ni sug'orish / ESP8266: ESP8266 - sug'orish masofadan boshqariladigan va sabzavot bog'lari, gul bog'lari va maysazorlar uchun mo'ljallangan. U ESP-8266 sxemasidan va sug'orish moslamasi uchun gidravlik / elektr valfdan foydalanadi
VGA chiqishi bilan Arduino asosiy kompyuter: 5 qadam (rasmlar bilan)
VGA chiqishi bilan Arduino asosiy shaxsiy kompyuteri: Oldingi yo'riqnomada men ikkita Arduino yordamida BASIC bilan ishlaydigan va televizor ekrani uchun B va V chiqish signalli 8-bitli retro kompyuterni qanday qurishni ko'rsatdim. Endi men xuddi shu kompyuterni qanday qurishni ko'rsataman, lekin chiqish signali bilan
Budilnik bilan DIY aqlli o'lchov (Wi-Fi, ESP8266, Arduino IDE va Adafruit.io bilan): 10 qadam (rasmlar bilan)
Budilnik bilan DIY aqlli o'lchov (Wi-Fi, ESP8266, Arduino IDE va Adafruit.io bilan): Oldingi loyihamda men Wi-Fi bilan aqlli hammom o'lchovini ishlab chiqdim. U foydalanuvchi vaznini o'lchashi, uni mahalliy ko'rsatishi va bulutga yuborishi mumkin. Bu haqda batafsil ma'lumotni quyidagi havola orqali olishingiz mumkin: https: //www.instructables.com/id/Wi-Fi-Smart-Scale-wi
ESP8266 bilan jihozlangan ESP8266 robotli avtomobil: 18 qadam (rasmlar bilan)
ESP8266 Basic bilan dasturlashtirilgan ESP8266 robotli mashina: Men o'rta maktabning fan o'qituvchisi, shuningdek Robotik klublar maslahatchisiman. Men robotlarni o'quvchilarim qo'liga olishning arzon usullarini izlayapman. ESP8266 taxtalarining arzonligi tufayli men avtonomni yaratishga muvaffaq bo'ldim
Vaqt o'tishi bilan rasmlar uchun kamera osonlashtirildi: 22 qadam (rasmlar bilan)
Vaqt o'tishi bilan suratga olish uchun kamera osonlashtirildi. Men boshqa ko'rsatmalarni vaqtni tez suratga olish filmlarini suratga olishni tekshirib ko'rdim. U kino qismini juda yaxshi yoritgan. U filmlar yaratish uchun yuklab olishingiz mumkin bo'lgan bepul dasturiy ta'minot haqida gapirib berdi. Men o'z -o'zimga aytdim, men o'ylaymanki, agar men qila olsam