Obsah:
2025 Autor: John Day | [email protected]. Naposledy změněno: 2025-01-13 06:57
V roce 2019 oslavil Game Boy 30 let, což mě přimělo uvést projekt do praxe, o kterém jsem už přemýšlel. Základní myšlenkou bylo použití 3D tištěného pouzdra, které vypadá jako Game Boy Classic, a vložení Pi Zero do běžícího Retropie.
Krok 1: Díly:
- Pi Zero W
- 3,5”displej
- Booster MT3608 poskytuje 5V
- TP4056 k dobití baterie
- Dva nebo tři lithiové články 1000mA
- 4 GB karta Micro SD
- Rezistory a kondenzátor pro zvuk
- PCB univerzální
- Reproduktor o průměru 2,8 mm
- Zesilovač PAM8403
Krok 2: Časté dotazy
Udělal jsem FAQ pro sebe ohledně některých otázek projektu:
Jaký případový tisk? Byl jsem na pochybách mezi slavným PiGRRL od Adafruit a jiným, který je velmi blízký originálu. Vybral jsem originál, protože ABXY jsou větší a větší vzdálenost. Adafruit: https://www.thingiverse.com/thing:1277483 Originál:
Který displej použít? Už jsem měl dva, jeden z 2, 8 “, který používá ovladač ILI9341 a druhý s kompozitním videem o úhlopříčce 3,5“. Vybral jsem 3,5 “, protože je jednodušší zapojit a perfektně se hodí pro případ.
Má Pi Zero výstup kompozitního videa? Ano, ale nemá kolíky.
Má Pi Zero analogový zvukový výstup? Je nutné vytvořit výstup, jak ukazuje Adafruit:
Jaký ovladač použít? Použil jsem taktický přepínač zapojený do GPIO, kde simuluje klávesnici. Opět jsem použil řešení Adafruit, ale deska byla postavena pro mě:
Jakou velikost karty micro SD použít? Použil jsem 4 GB, což mi stačí. Nechci, aby 5 000 her hrálo jen tucet. Pamatujte, že Pi Zero může dobře provozovat pouze 8 nebo 16bitové hry a tyto romy mají malou velikost. Retropie využívá asi 2,2 GB místa.
Jak zapnout 12V displej, pokud Raspberry Pi pracuje s 5V? Na desce displeje jsem našel 5V bod. Displej má jeden 5V regulátor a druhý z 3,3V navzájem propojených. Připojil jsem 5v na vstup 3,3v regulátoru.
Jakou baterii použít? Použil jsem dva lithiové články 1000mA. S těmito buňkami zařízení fungovalo asi 1:40 hodiny. Myslím, že nejlepším řešením je použít tři články 1000mA.
Jak dobít baterii? Použil jsem deskovou nabíječku TP4056
Krok 3: Printing Case
Jak jsem řekl ve FAQ, vybral jsem si vytisknout tento případ: https://www.thingiverse.com/thing: 2676949
Displej 3,5 se perfektně vejde do pouzdra, vytiskl jsem také podporu displeje (oranžový kus), kam se vejde deska displeje ovladače a zadní kryt je přišroubován nahoře.
Krok 4: Instalace retropie
Retropie je software, který poběží, má již nainstalovanou spoustu emulátorů a velmi snadno se používá, na internetu najdete spoustu návodů, jak jej nainstalovat. Jediným detailem je, že po první instalaci budete požádáni o konfiguraci ovladače, konfiguraci klávesnice jako ovladače a zaznamenání kláves do papíru nebo něčeho jiného. Tyto informace jsou nezbytné pro konfiguraci ovladače GPIO vysvětleného brzy.
Retropie si můžete stáhnout na:
Krok 5: Řadič GPIO
Jako ovladač jsem zvolil použití řešení Adafruit:
Vyrobil jsem desku s univerzálním hmatovým spínačem PCB a zapojil jsem je do GPIO.
K instalaci ovladače Adafruit použijte příkazy:
CD
stočit https://raw.githubusercontent.com/adafruit/Raspbe…>> retrogame.sh
sudo chmod +x retrogame.sh
sudo bash retrogame.sh První příkaz stáhne skript, druhý dá oprávnění ke spuštění a třetí spustí skript. Po spuštění vyberte „1. Ovládací prvky PiGRRL 2“a restartujte počítač. Vytvoří soubor "/boot/retrogame.cfg", tento soubor upravte podle konfigurace klávesnice. Pamatujete si poznámku „Instalace retropie“?
Vzor souboru je:
VLEVO 4 # Joypad vlevo
PRAVÉ 19 # Joypad vpravo
UP 16 # Joypad nahoru
DOLŮ 26 # Joypad dolů
LEFTCTRL 14 # Tlačítko „A“
LEFTALT 15 # Tlačítko „B“
Z 20 # Tlačítko 'X'
X 18 # Tlačítko „Y“
SPACE 5 # Tlačítko 'Vybrat'
ZADEJTE 6 # Tlačítko 'Start'
A 12 # Tlačítko na levém rameni
S 13 # Tlačítko na pravém rameni
Kde první sloupec jsou klávesy klávesnice, druhý jsou piny GPIO a třetí komentář. Například v souboru nad GPIO 20 spusťte klávesu Z klávesnice a tlačítko X podle vzoru řadiče SNES.
Krok 6: GPIO audio výstup
Pi Zero nemá zvukový výstup, ale Adafruit dokázal dát zvuk ven s některými odpory a kondenzátory zapojenými dvěma piny GPIO a vložil řádek kódu do souboru /boot/config.cfg. Pro desku jsem použil univerzální desku plošných spojů a pouze odpory a kondenzátory, diody mají chránit GPIO pro nějaké vysoké napětí a nepoužívám.
Použitý pin GPIO je: GPIO #13 (pin #33) como PWM1GPIO #18 (pin #12) como PWM0 Tyto piny nelze použít pro řadič keyboad.
Přidáním řádku níže do /boot/config.cfg a zapojením obvodu již máte zvuk.
dtoverlay = pwm-2chan, pin = 18, func = 2, pin2 = 13, func2 = 4 Zvukový výstup není zesílen a můžete k tomu použít zesilovač PAM8403.
Krok 7: Dokončete sestavení a testování
Dokončení stavby nebylo snadné, protože mnoho dílů a kabelů se do pouzdra vejde jen obtížně. S trpělivostí a péčí vše funguje dobře. Podívejte se na několik obrázků a video s konečným výsledkem.