Სარჩევი:

ESP8266 VGA პონგი: 5 ნაბიჯი (სურათებით)
ESP8266 VGA პონგი: 5 ნაბიჯი (სურათებით)

ვიდეო: ESP8266 VGA პონგი: 5 ნაბიჯი (სურათებით)

ვიდეო: ESP8266 VGA პონგი: 5 ნაბიჯი (სურათებით)
ვიდეო: Подключение ESP. Подключение VGA монитора. 2024, ნოემბერი
Anonim
Image
Image
მასალების სია
მასალების სია

ამ ინსტრუქციებში მე ვაჩვენებ, თუ როგორ უნდა ავაშენოთ კლასიკური თამაშის პონგის რეპროდუქცია VGA მონიტორისთვის, ESP8266 და რამდენიმე სხვა კომპონენტის გამოყენებით.

ეს თამაში შესაძლებელი გახდა EspVGAx ბიბლიოთეკის მიერ, რომელიც ახლახანს გამოქვეყნდა GitHub– ზე სანდრო მაფიოდოს მიერ (იგივე სმაფერი) და, რამდენადაც მე ვიცი, ეს არის პირველი თამაში, რომელიც იყენებს მას.

ბიბლიოთეკა ახორციელებს 512 x 480 პიქსელის გარჩევადობას, რომელიც ინახება ჩარჩო ბუფერში RAM– ის შიგნით, რომელიც მოითხოვს 30720 ბაიტს. რეზოლუცია უზარმაზარია Arduino TVout– თან ან VGAx– თან შედარებით (128 x 96 და 120 x 60 პიქსელი შესაბამისად). ვიმედოვნებ, რომ ეს თამაში შთააგონებს სხვა პროგრამისტებს უფრო რთული თამაშების შემუშავებისა და გამრავლებისთვის.

ნაბიჯი 1: მასალების ჩამონათვალი

EspVGAx ბიბლიოთეკა მოითხოვს ESP8266 ყველა GPIO- ს გამოვლენით, როგორიცაა ESP-12E, NodeMCU-12E დაფა ან ნებისმიერი დაფა, რომელიც ასახავს GPIO5 (D1), GPIO4 (D2) და GPIO13 (D7)

კერძოდ, გამოვიყენე:

  • ESP8266 NodeMCU-12E (ბმული აქ)
  • DSUB15 კონექტორი (ანუ VGA ქალი კონექტორი)
  • 330 Ohm რეზისტორი
  • სხვა რეზისტორი (დაახლოებით 1 -დან 3 კმ -მდე)
  • ორი 10 kOhm პოტენციომეტრი
  • ღილაკი (ახალი)
  • ორი დიოდი (მაგალითად 1N4007s)
  • პურის დაფა
  • მავთულები

მე მივიღე DSUB15 კონექტორი ძველი VGA კომპიუტერის დაფისგან. გარდა ამისა, თქვენ ასევე შეგიძლიათ გაჭრათ ძველი VGA კაბელი და დააკავშიროთ მავთულები პირდაპირ პურის დაფაზე.

ნაბიჯი 2: ბიბლიოთეკის და ესკიზის ატვირთვა

ბიბლიოთეკა და ესკიზის ატვირთვა
ბიბლიოთეკა და ესკიზის ატვირთვა

პროგრამირების და ESP8266- ის სხვადასხვა მეთოდი არსებობს; მე გამოვიყენე Arduino IDE პონგის დასაწერად და კოდის ასატვირთად.

გთხოვთ გაითვალისწინოთ, რომ EspVGAx ბიბლიოთეკა მუშაობს Arduino IDE 1.8.1 -ისთვის. თუ თქვენ გაქვთ სხვა ვერსიები, უმჯობესია გადმოწეროთ.zip ფაილები და გამოაშკარავოთ იგი გამოყოფილი საქაღალდეში. Windows ვერსია აქ არის. სხვა OS- ის ვერსიები აქ არის.

ამის შემდეგ, თქვენ უნდა გადმოწეროთ EspVGAx ბიბლიოთეკა GithHub გვერდიდან აქ (პირდაპირი ბმული zip ვერსიისთვის აქ) და გააუქმეთ იგი საქაღალდეების ბიბლიოთეკებში Arduino პროგრამულ უზრუნველყოფაში.

NB ფაილში არის პატარა შეცდომა espvgax_draw.h. მისი გამოსასწორებლად, უბრალოდ შეცვალეთ ხაზი 17:

ხოლო (x0%32) {ერთად while (x0%32 && sw> 32) {

დაბოლოს, თქვენ შეგიძლიათ გადმოწეროთ ESP8266_Pong.rar ამ ნაბიჯის ბოლოს.

მას შემდეგ რაც გახსნილია, რომ ატვირთოთ იგი თქვენს ESP8266– ზე, თქვენ უნდა დააკონფიგურიროთ Arduino IDE.

თუ ეს არასოდეს გაგიკეთებიათ, შეგიძლიათ იპოვოთ ყველა საჭირო ინსტრუქცია ამ ინსტრუქციებში, კერძოდ მე –2 ნაბიჯში.

ყველაფრის კონფიგურაციის შემდეგ, ESP8266 პარამეტრები უნდა გამოიყურებოდეს ზემოთ მოცემულ სურათზე.

თუ თქვენ შეგიძლიათ ატვირთოთ კოდი შეცდომების გარეშე, შეგიძლიათ დაიწყოთ ნაწილების აწყობა.

ნაბიჯი 3: ნაწილების დაკავშირება: VGA კონექტორი

ნაწილების დაკავშირება: VGA კონექტორი
ნაწილების დაკავშირება: VGA კონექტორი
ნაწილების დაკავშირება: VGA კონექტორი
ნაწილების დაკავშირება: VGA კონექტორი
ნაწილების დაკავშირება: VGA კონექტორი
ნაწილების დაკავშირება: VGA კონექტორი

მე ვურჩევ პირველ რიგში VGA პორტის დაკავშირებას, როგორც ეს ნაჩვენებია ზემოთ მოცემულ სურათებში. გთხოვთ გაითვალისწინოთ, რომ სამი ქინძისთავის წითელი, მწვანე და ლურჯის ერთმანეთთან შეერთებით (ანუ DSUB15 კონექტორზე 1, 2 და 3), თქვენ გექნებათ B&W სურათი თქვენს ეკრანზე. ასევე შეგიძლიათ სხვადასხვა ფერის კომბინაცია. იხილეთ დეტალები ბიბლიოთეკის GitHub გვერდზე.

გარდა ამისა, თქვენ უნდა დააკავშიროთ 330 Ohm რეზისტორი RGB ქინძისთავებსა და D7 (GPIO13) შორის ESP8266. ამან მომხიბლავი ნაცრისფერი გამოსახულება მომცა ჩემს მონიტორზე, ასე რომ, რამდენიმე მცდელობის შემდეგ, მე გადავწყვიტე მისი აღმოფხვრა.

ამ ეტაპზე, თუ ყველაფერი სწორად მუშაობს, თქვენ უკვე შეგიძლიათ დააკავშიროთ მონიტორი და ნახოთ თამაშის საწყისი ეკრანი, ბანერით "ESP8266 VGAx Pong".

ნაბიჯი 4: ნაწილების დაკავშირება: პოტენციომეტრები და ღილაკი

ნაწილების დაკავშირება: პოტენციომეტრები და ღილაკი
ნაწილების დაკავშირება: პოტენციომეტრები და ღილაკი

ღილაკი უნდა იყოს დაკავშირებული 3.3V და pin D0 (GPIO16) შორის. შეაერთეთ ასევე 1 -დან 3 კჰმ -მდე რეზისტორი D0- დან მიწამდე. ეს თავიდან აიცილებს D0– ს განუსაზღვრელ სტატუსს, როდესაც ღილაკი ღიაა.

ორი პოტენომეტრის კავშირი ნაკლებად ტრივიალურია, რადგან ESP8266– ს აქვს მხოლოდ ანალოგური შესასვლელი პორტი A0 (ADC0)! ხრიკი მდგომარეობს იმაში, რომ ორივე pot.s- ის შედეგები ერთსა და იმავე პორტს დაუკავშიროთ და მათი "მულტიპლექსი". მულტიპლექსირება უბრალოდ ნიშნავს იმას, რომ თქვენ ჩართავთ პოტენომეტრს, წაიკითხავთ მას, შემდეგ გამორთავთ და გადახვალთ მეორეზე.

თუ გსურთ მეტი გაიგოთ ამ მეთოდის შესახებ, შეგიძლიათ წაიკითხოთ ეს ინსტრუქცია.

შეაერთეთ ერთი პოტენციომეტრი უკიდურესი GND- თან, მეორე უკიდურესი D5 მარცხენა მოთამაშის პოტენომეტრთან და D6 მარჯვენა მოთამაშესთან.

თითოეული პოტენომეტრის ცენტრალური პინი უნდა იყოს დაკავშირებული ცალკეულ დიოდთან, ხოლო დიოდების სხვა მხარეები უნდა იყოს დაკავშირებული A0 (ADC0) - თან, პოლარობით ნაჩვენებია ზემოთ სურათზე.

ნაბიჯი 5: დასკვნა და მადლიერება

მადლობელი ვარ სანდრო მაფიოდოს - SMAFFER - ESPVGAX- ის გამოქვეყნებისათვის. ეს თამაში მის გარეშე შეუძლებელი იქნებოდა.

ვიმედოვნებ, რომ ეს ინსტრუქცია იქნება შთაგონება სხვა პროგრამისტებისთვის, რომ გააკეთონ უფრო რთული კლასიკური არკადული თამაშების რეპროდუცირება ESP8266– ით, რომელსაც აქვს ბევრად ნაკლები შეზღუდვა ვიდრე Arduino.

დაბოლოს, მე დავწერე ეს ინსტრუქცია სათამაშოების კონკურსში წარსადგენად: თუ მოგწონთ ან აღადგენს მას, გთხოვთ დაუთმოთ ერთი წუთი მის კენჭს!

გირჩევთ: