
Სარჩევი:
- ნაბიჯი 1: აპარატურის მომზადება
- ნაბიჯი 2: პროგრამული უზრუნველყოფის მომზადება
- ნაბიჯი 3: 3D ბეჭდვა
- ნაბიჯი 4: LCD მხარდაჭერა
- ნაბიჯი 5: მოამზადეთ PETG ფირფიტა
- ნაბიჯი 6: შეასწორეთ ESP32 Dev Board
- ნაბიჯი 7: შეასწორეთ ლიპო ბატარეა
- ნაბიჯი 8: შეაერთეთ ბატარეა და გამშვები დაფა
- ნაბიჯი 9: მოამზადეთ ჩვენების ქინძისთავები
- ნაბიჯი 10: შეაერთეთ GND ქინძისთავები
- ნაბიჯი 11: შეაერთეთ Vcc ქინძისთავები
- ნაბიჯი 12: შეაერთეთ LCD და Dev დაფის მხარდაჭერა
- ნაბიჯი 13: შეაერთეთ SPI ქინძისთავები
- ნაბიჯი 14: Flash პროგრამა
- ნაბიჯი 15: I2C კონექტორი
- ნაბიჯი 16: შეკრება ნაწილი 1
- ნაბიჯი 17: პროტოტიპი I2C Gamepad
- ნაბიჯი 18: შექმენით I2C Gamepad
- ნაბიჯი 19: შეკრება ნაწილი 2
- ნაბიჯი 20: სურვილისამებრ: აუდიო ბრეაკოუტ ქინძისთავები
- ნაბიჯი 21: რა არის შემდეგი?
2025 ავტორი: John Day | [email protected]. ბოლოს შეცვლილი: 2025-01-23 14:50



ეს ინსტრუქცია აჩვენებს, თუ როგორ გამოიყენოთ ESP32 და ATtiny861 NES ემულატორის სათამაშო კონსოლის შესაქმნელად.
ნაბიჯი 1: აპარატურის მომზადება


ESP32 Dev დაფა
ამჯერად მე ვიყენებ TTGO T8 ESP32 dev დაფას. ამ დაფას აქვს ჩაშენებული Lipo დატენვისა და მარეგულირებელი წრე, მას შეუძლია შეამციროს დამატებითი კომპონენტები.
ჩვენება
ამჯერად მე ვიყენებ 2.4 IPS LCD- ს. დრაივერის კონტროლერი არის ST7789V და გარჩევადობაა 320 x 240. ეს რეზოლუცია საუკეთესოდ შეეფერება NES emulator 252 x 224 რეზოლუციას.
ბატარეა
ამჯერად მე ვიყენებ 454261 ლიპო ბატარეას. 4.5 მმ არის ESP32 dev დაფის სისქე, ხოლო 61 მმ დაფის სიგანე.
სათაურის ჩამაგრება
4 ქინძისთავის მამრობითი მრგვალი პინიანი სათაური და 4 ქინძისთავის ქალი მრგვალი პინიანი სათაური I2C გეიმპადის დასაკავშირებლად.
PETG ფირფიტა
პატარა PET/PETG ფირფიტა dev დაფისა და Lipo ბატარეის მხარდასაჭერად, შეგიძლიათ მარტივად იპოვოთ პროდუქტის შეფუთვაში.
მრავალფუნქციური PCB
საჭიროა 2 PCB, 1 0,4 მმ სისქის ჩვენების მხარდასაჭერად, 1 1,2 მმ სისქით I2C გეიმპედისთვის.
ღილაკები
5 მიმართულებით ღილაკი, 2 პატარა ღილაკი Select and Start და 2 A და B ღილაკებისთვის.
I2C Gamepad კონტროლერი
ამჯერად ვიყენებ ATtiny861 მიკროკონტროლერს, როგორც I2C გეიმპადის კონტროლერი.
სხვა
1 SMD 12 Ohm რეზისტორი, ISP პროგრამისტი (მაგ. TinyISP)
ნაბიჯი 2: პროგრამული უზრუნველყოფის მომზადება



Arduino IDE
ჩამოტვირთეთ და დააინსტალირეთ Arduino IDE, თუ ჯერ არა:
ATTinyCore მხარდაჭერა
მიჰყევით ინსტალაციის ნაბიჯებს ATTinyCore მხარდაჭერის დასამატებლად, თუ ჯერ არა:
ESP-IDF
მიჰყევით ESP-IDF– ის დაწყების გზამკვლევს, თუ როგორ უნდა შექმნათ განვითარების გარემო:
ნაბიჯი 3: 3D ბეჭდვა

ჩამოტვირთეთ და დაბეჭდეთ საქმე:
ნაბიჯი 4: LCD მხარდაჭერა


გაჭერით 24 x 27 ხვრელი 0.4 მმ PCB LCD მხარდაჭერისთვის. დაიმახსოვრეთ დაუთმეთ ადგილი დასაკეცი LCD FPC– სთვის. შემდეგ გამოიყენეთ ორმაგი გვერდითი წებოვანი ლენტი, დააფიქსირეთ LCD PCB– ზე.
ნაბიჯი 5: მოამზადეთ PETG ფირფიტა


ამოიღეთ 62 მმ x 69 მმ PETG ფირფიტა dev board და Lipo ბატარეის საყრდენისთვის.
ნაბიჯი 6: შეასწორეთ ESP32 Dev Board

გამოიყენეთ ორმაგი გვერდითი წებოვანი ლენტი PETG ფირფიტაზე დაფის დასაფიქსირებლად.
ნაბიჯი 7: შეასწორეთ ლიპო ბატარეა

გამოიყენეთ ორმაგი გვერდითი წებოვანი ლენტი Lipo ბატარეის დასაფიქსირებლად, გარდა დაფისა.
ნაბიჯი 8: შეაერთეთ ბატარეა და გამშვები დაფა

ნაბიჯი 9: მოამზადეთ ჩვენების ქინძისთავები

LCD ეკრანს აქვს მრავალი ვარიაცია სხვადასხვა მწარმოებლებისგან. გთხოვთ მიიღოთ ზუსტი მონაცემთა ფურცელი და წაიკითხეთ იგი სანამ რაიმე პატჩი და კავშირი იქნება.
ზოგიერთი ქინძისთავები დაცულია სენსორული პანელისთვის. ვინაიდან ამ LCD– ს არ აქვს სენსორული პანელი, უბრალოდ ამ ქინძისთავების ამოჭრამ შეიძლება შეამციროს დარღვევა.
ნაბიჯი 10: შეაერთეთ GND ქინძისთავები


უმეტეს შემთხვევაში, რამდენიმე ქინძისთავია საჭირო GND– თან დაკავშირება. შედუღების ძალისხმევის შესამცირებლად, მე დავჭრა სპილენძის ფირის ფორმა, რათა მივაღწიო ყველა GND ქინძისთავს და შემდეგ მთლიანად გავკარი.
ნაბიჯი 11: შეაერთეთ Vcc ქინძისთავები

საჭიროა 2 ქინძისთავის დაკავშირება Vcc, LCD და LED ენერგიასთან. მონაცემთა ფურცლის თანახმად, LCD სიმძლავრე შეიძლება პირდაპირ დაუკავშირდეს dev board 3.3 V პინს, მაგრამ LED სიმძლავრე მუშაობს ოდნავ დაბლა ვიდრე 3.3 ვ. ამიტომ უმჯობესია დაამატოთ SMD რეზისტორი შუაში, მაგ. 12 Ohm რეზისტორი.
ნაბიჯი 12: შეაერთეთ LCD და Dev დაფის მხარდაჭერა

გამოიყენეთ ფირზე დააკავშირეთ LCD მხარდაჭერა და dev board მხარდაჭერა ერთად. ორივე საყრდენმა უნდა დაიტოვოს დასაკეცი მანძილი დაახლოებით 5 მმ.
ნაბიჯი 13: შეაერთეთ SPI ქინძისთავები

აქ არის კავშირის შეჯამება:
LCD ESP32
GND -> GND RST -> GPIO 33 SCL -> GPIO 18 DC -> GPIO 27 CS -> GPIO 5 SDI -> GPIO 23 SDO -> არ არის დაკავშირებული Vcc -> 3.3 V LED+ -> 12 Ohm რეზისტორი -> 3.3 V LED - -> GND
ნაბიჯი 14: Flash პროგრამა




- ჩამოტვირთეთ კოდის წყარო GitHub– ზე:
- კოდის საქაღალდის ქვეშ გაუშვით "make menuconfig"
- აირჩიეთ "Nofrendo ESP32 სპეციფიკური კონფიგურაცია"
- აირჩიეთ "აპარატურა გასაშვებად" -> "პერსონალური აპარატურა"
- აირჩიეთ "LCD ტიპი" -> "ST7789V LCD"
- შეავსეთ პინის პარამეტრები: MISO -> -1, MOSI -> 23, CLK -> 18, CS -> 5, DC -> 27, RST -> 33, განათება -> -1, IPS -> Y
- გასვლა და შენახვა
- გაუშვით "make -j5 flash"
- გაუშვით "sh flashrom.sh PATH_TO_YOUR_ROM_FILE"
ნაბიჯი 15: I2C კონექტორი



I2C ქინძისთავების გარღვევა, ESP32 ნაგულისხმევი I2C ქინძისთავებია:
პინი 1 (SCL) -> GPIO 22
პინი 2 (SDA) -> GPIO 21 პინი 3 (Vcc) -> 3.3 V (არა 5 ვ სიმძლავრის ლიპო ბატარეით) Pin 4 (GND) -> GND
ნაბიჯი 16: შეკრება ნაწილი 1


მიჰყევით ვიდეო ნაბიჯებს დასაკეცი და ყველა ნაწილის ჩასადებად.
ნაბიჯი 17: პროტოტიპი I2C Gamepad


I2C Gamepad– ის პროგრამა ძალიან მარტივია, კოდის მხოლოდ 15 სტრიქონი. მაგრამ ცოტა ძნელია ATtiny861– ის გადაპროგრამება შედუღების შემდეგ, ამიტომ ჯობია ის ჯერ პურის დაფაზე გამოსცადოთ.
ჩამოტვირთეთ, შეადგინეთ და გადმოუშვით პროგრამა GitHub– დან:
ნაბიჯი 18: შექმენით I2C Gamepad



აქ არის კავშირის შეჯამება:
ATtiny861 ღილაკი
GND -> ყველა ღილაკი ერთი პინი Pin 20 (PA0) -> ზემოთ ღილაკი Pin 19 (PA1) -> ქვემოთ ღილაკი Pin 18 (PA2) -> მარცხენა ღილაკი Pin 17 (PA3) -> მარჯვენა ღილაკი Pin 14 (PA4) -> აირჩიეთ ღილაკი Pin 13 (PA5) -> დაწყების ღილაკი Pin 12 (PA6) -> ღილაკი Pin 11 (PA7) -> B ღილაკი Pin 6 (GND) -> I2C მამრობითი pin header pin 4 Pin 5 (Vcc) -> I2C მამრობითი pin header pin 3 Pin 3 (SCL) -> I2C მამრობითი pin header pin 1 Pin 1 (SDA) -> I2C მამრობითი pin header pin 2
ნაბიჯი 19: შეკრება ნაწილი 2



დაიცავით ვიდეო ნაბიჯები, რომ დააინსტალიროთ საფარი და I2C გეიმპედი მთავარ სხეულზე.
ნაბიჯი 20: სურვილისამებრ: აუდიო ბრეაკოუტ ქინძისთავები



ESP32 dev board Pin 25 და 26 გამოსცემს ანალოგურ აუდიო სიგნალს, ძალიან ადვილია ამ 2 ქინძისთავის გარღვევა და ასევე დენის ქინძისთავები (3.3 V და GND) თავზე. შემდეგ თქვენ შეგიძლიათ დააკოპიროთ ყურსასმენი, რომ ჩართოთ იგი. ან თუნდაც თქვენ შეგიძლიათ დაამატოთ აუდიო გამაძლიერებელი მოდული დინამიკით, რომ ხმამაღლა დაუკრათ.
ნაბიჯი 21: რა არის შემდეგი?

NES ემულატორი არ არის ერთადერთი საინტერესო რამ, რისი გაკეთებაც შეგიძლიათ ESP32– ით. Მაგალითად. თქვენ შეგიძლიათ ააწყოთ მიკრო პითონის კონსოლი. ერთადერთი კომპონენტი, რომელიც თქვენ უნდა შეცვალოთ არის I2C gamepad– დან I2C კლავიატურაზე. მე ვფიქრობ, რომ არც ისე რთულია ამის გაკეთება ATtiny88 კონტროლერთან. სტატუსის სანახავად შეგიძლიათ მიყვეთ ჩემს ტვიტერს.
გირჩევთ:
GamePi - ხელის ემულატორის კონსოლი: 17 ნაბიჯი (სურათებით)

GamePi - ხელის ემულატორის კონსოლი: შესავალი: ეს სასწავლო ინსტრუქცია აღწერს Raspberry Pi 3 იკვებება ხელის ემულაციის კონსოლს - მე მოვინათლე GamePi. ბევრი მსგავსი ინსტრუქციაა ასეთი მოწყობილობებისთვის, მაგრამ ჩემი გემოვნებით მათი უმეტესობა ან ძალიან დიდია, ძალიან პატარაა, ძალიან
ხელის სათამაშო კონსოლი - არდუბოის კლონი: 6 ნაბიჯი (სურათებით)

ხელის სათამაშო კონსოლი | Arduboy Clone: რამდენიმე თვის წინ მე წავაწყდი Arduboy- ს, რომელიც მისი ოფიციალური ვებგვერდის თანახმად არის მინიატურული 8-ბიტიანი თამაშის პლატფორმა, რომელიც აადვილებს ონლაინში თამაშების სწავლას, გაზიარებას და თამაშს. ეს არის ღია კოდის პლატფორმა. Arduboy– ის თამაშები დამზადებულია მომხმარებლის მიერ
ხელნაკეთი ხელის კონსოლი: 12 ნაბიჯი (სურათებით)

ხელნაკეთი ხელის კონსოლი: გაეცანით ჩემს ნაბიჯ ნაბიჯ ინსტრუქციას, თუ როგორ უნდა შექმნათ თქვენი საკუთარი DIY GameBoy Raspberry Pi 3 -ით და Retropie emulation პროგრამული უზრუნველყოფით. ამ პროექტის დაწყებამდე მე არ მქონდა გამოცდილება ჟოლოს პი, რეტროპია, შედუღება, 3D ბეჭდვა ან ელექტრო
ხელის კონსოლი უკაბელო კონტროლერებითა და სენსორებით (Arduino MEGA & UNO): 10 ნაბიჯი (სურათებით)

ხელის კონსოლი უკაბელო კონტროლერებითა და სენსორებით (Arduino MEGA & UNO): რას ვიყენებდი:- Arduino MEGA- 2x Arduino UNO- Adafruit 3.5 " TFT 320x480 Touchscreen HXD8357D- Buzzer- 4Ohm 3W სპიკერი- 5 მმ LED განათება- Ultimaker 2+ პრინტერი w/ შავი PLA ძაფით- ლაზერული საჭრელი MDF ხე- შავი სპრეი საღებავი (ხისათვის)- 3x nRF24
ხელის არდუინოს პონგის კონსოლი: 6 ნაბიჯი (სურათებით)

ხელის არდუინოს პონგის კონსოლი: DFRobot ახლახანს დამიკავშირდა და მინდოდა გამომეყენებინა მათი სპეციალური Arduino Nano დაფა და OLED. თავიდან მინდოდა ჭკვიანი ველოსიპედის შექმნა და მე ავაშენე იგი მთლიანად. სამწუხაროდ, ნანო ძალიან სუსტი იყო იმისათვის, რომ გაეტარებინა და შეენახა მასიური ესკიზი