This shows you the differences between two versions of the page.
|
pm:prj2026:farhad_ali.gul:gabriel.tecuceanu [2026/05/03 17:35] gabriel.tecuceanu created |
pm:prj2026:farhad_ali.gul:gabriel.tecuceanu [2026/05/16 20:01] (current) gabriel.tecuceanu schema electrica si pini |
||
|---|---|---|---|
| Line 11: | Line 11: | ||
| Proiectul are in vedere realizarea unei console portabile capabile sa emuleze jocuri din era 8-bit de pe sistemul NES (Nintendo Enterntainment System) utilizand microcontroller-ul ESP32-S3. | Proiectul are in vedere realizarea unei console portabile capabile sa emuleze jocuri din era 8-bit de pe sistemul NES (Nintendo Enterntainment System) utilizand microcontroller-ul ESP32-S3. | ||
| - | Scopul este oferirea unei experiente cat mai complete prin prezenta urmatoarelor caracteristici: incarcare jocurilor de pe un card MicroSD, bla bla eficienta, bla bla display, bla bla portabilitate, bla bla audio. | + | Scopul este oferirea unei experiente cat mai complete prin prezenta urmatoarelor caracteristici: |
| + | * incarcare jocurilor (ROM) de pe un card MicroSD | ||
| + | * utilizarea arhitecturii dual-core si a memoriei PSRAM pentru a asigura o emulare fluida | ||
| + | * afisare la rezolutiea nativa a consolei NES (256x240), utilizand intreaga gama de culori | ||
| + | * redarea sunetului original pe 8-biti | ||
| + | * asigurarea portabilitatii prin integrarea unui acumulator Li-Ion si a unui modul de incarcare | ||
| - | Ideea a pornit de la pasiunea pentru jocuri retro. Cred ca este o idee utila in primul rand pentru ca reprezinta o oportunitate buna de invatare dar si pentru ca este ceva ce o sa pot sa folosesc si dupa terminarea proiectului. | + | Ideea a pornit de la pasiunea pentru jocuri retro. Cred ca este o idee utila in primul rand pentru ca reprezinta o oportunitate buna de invatare dar si pentru ca rezultatul final este un sistem de divertisment complet si portabil, multe dintre jocurile de pe NES sunt inca populare si in ziua de azi (ex: Super Mario Bros). |
| - | ===== Descriere generală ===== | + | ===== Descriere generala ===== |
| Diagrama Hardware: | Diagrama Hardware: | ||
| - | {{:pm:prj2026:farhad_ali.gul:hardware_diagram.png?300|}} | + | {{:pm:prj2026:farhad_ali.gul:hardware_blockd.png?300|}} |
| Diagrama Software: | Diagrama Software: | ||
| {{:pm:prj2026:farhad_ali.gul:software_diagram.png?300|}} | {{:pm:prj2026:farhad_ali.gul:software_diagram.png?300|}} | ||
| + | |||
| + | Sistemul este construit in jurul placii ESP32-S3 DevKitC-1. | ||
| + | |||
| + | Flux: | ||
| + | |||
| + | * Input: utilizatorul intereactioneaza cu consola prin intermediul celor 8 butoane tactile (D-Pad + butoane actiune: A, B, Select, Start), configurate cu rezistente de pull-up interne. | ||
| + | * Procesare: emulatorul ruleaza pe cele doua nuclee ale microcontroller-ului. Un nucleu se ocupa de emularea CPU si PPU (grafica), in timp ce al doilea nucleu se ocupa de decoarea audio (APU) si transferul de date catre display. | ||
| + | * Output Video: afisarea se face pe un ecran TFT de 2.8" (ST7789V) prin protocolul SPI. | ||
| + | * Sunetul este transmis digital prin protocolul I2s catre un DAC/Amplificator extern (MAX98357A). | ||
| + | * Alimentare: Sistemul este portabil, folosim o baterie Li-Ion, un circuit de protectie/incarcare (TP4056) si un regulator de tensiune | ||
| ===== Hardware Design ===== | ===== Hardware Design ===== | ||
| + | |||
| + | ==== Schema electrica ==== | ||
| + | |||
| + | {{:pm:prj2026:farhad_ali.gul:schema.pdf|}} | ||
| + | |||
| + | ==== Lista de componente ==== | ||
| + | |||
| + | ^ Nume Componenta ^ Cantitate ^ Rol in proiect ^ Datasheet ^ | ||
| + | | ESP32-S3 DevKitC-1 | 1 | Unitare centrala de procesare (N16R8) | [[https://www.espressif.com/sites/default/files/documentation/esp32-s3_datasheet_en.pdf|Link]] | | ||
| + | | LCD TFT 2.8" ST7789V | 1 | Afisare grafica (SPI) | - | | ||
| + | | MAX98357A I2S Amp | 1 | DAC si Amplificare audio | [[https://datasheets.maximintegrated.com/en/ds/MAX98357A-MAX98357B.pdf|Link]] | | ||
| + | | Difuzor 8Ω 0.5W | 1 | Redare sunet | - | | ||
| + | | Baterie Li-Ion 3.7V | 1 | Sursa de energie | - | | ||
| + | | Modul TP4056 | 1 | incaracre si protectie baterie | - | | ||
| + | | Butoane Tactile 12mm | 8 | Control (D-Pad, A, B, Start, Select) | - | | ||
| + | | Switch | 1 | Comutator On/Off | - | | ||
| + | | Convertor MT3608 | 1 | Boost converter (3.7V baterie → 5V sistem) | - | | ||
| + | |||
| + | ==== Pini folositi ==== | ||
| + | |||
| + | === Display ST7789V === | ||
| + | |||
| + | ^ Pin modul ^ Semnal ^ GPIO ESP32-S3 ^ | ||
| + | | SCK | SPI Clock | 11 | | ||
| + | | SDI (MOSI) | SPI Data | 10 | | ||
| + | | SDO (MISO) | SPI Data Out | 13 | | ||
| + | | CS | Chip Select display | 18 | | ||
| + | | DC | Data / Command | 9 | | ||
| + | | RST | Reset | 8 | | ||
| + | | LED | Backlight | 12 | | ||
| + | |||
| + | === Card SD (integrat pe display) === | ||
| + | |||
| + | ^ Pin modul ^ Semnal ^ GPIO ESP32-S3 ^ | ||
| + | | SCK | SPI Clock | 11 (comun cu display) | | ||
| + | | MOSI | SPI Data | 10 (comun cu display) | | ||
| + | | MISO | SPI Data Out | 13 (comun cu display) | | ||
| + | | CS | Chip Select SD | 17 | | ||
| + | |||
| + | === MAX98357A === | ||
| + | |||
| + | ^ Pin modul ^ Semnal ^ GPIO / Alimentare ^ | ||
| + | | BCLK | I2S Bit Clock | GPIO 5 | | ||
| + | | LRC | I2S Word Select | GPIO 6 | | ||
| + | | DIN | I2S Data | GPIO 4 | | ||
| + | | SD | Enable | 3.3V | | ||
| + | |||
| + | === Butoane === | ||
| + | |||
| + | ^ Buton ^ GPIO ^ | ||
| + | | UP | 47 | | ||
| + | | DOWN | 39 | | ||
| + | | LEFT | 21 | | ||
| + | | RIGHT | 38 | | ||
| + | | A | 42 | | ||
| + | | B | 41 | | ||
| + | | SELECT | 1 | | ||
| + | | START | 2 | | ||
| ===== Software Design ===== | ===== Software Design ===== | ||
| Line 39: | Line 112: | ||
| ===== Bibliografie/Resurse ===== | ===== Bibliografie/Resurse ===== | ||
| - | <html><a class="media mediafile mf_pdf" href="?do=export_pdf">Export to PDF</a></html> | + | * [[https://docs.espressif.com/projects/esp-idf/en/stable/esp32/index.html]] |