第1步:準備
RPi Zero
Raspberry Pi Zero和Raspberry Pi Zero W都可以.WiFi版本可以使后續設置更容易,但相比之下它可能會不斷耗盡更多功率,即縮短電池壽命。
LCD HAT
Waveshare為RPi Zero發布了2個LCD HAT,兩個都有一個小方形LCD。新版本有一個240 x 240 1.3“IPS LCD。它是261 PPI并且在蘋果定義的視網膜顯示范圍內(218 - 458 PPI)。該分辨率能夠模仿CRT電視時代的許多復古游戲機,例如NES的分辨率為256 x 240,我們可以從左右兩個過掃描區域切下8個像素,使其變為240 x 240。
Pin Header
緊密適合Waveshare 1.3 “LCD HAT,它需要一個8毫米高的2 x 20針頭。但我不能買一個8毫米高的,所以我將修改一個12毫米高的針頭。
LiPo電池
RPi和LCD HAT之間的內部尺寸可以容納5 mm x 23 mm x 45 mm電池,任何帶有保護電路的LiPo電池都應該可以。
微小的LiPo電池電路板
我手邊有一塊10毫米x 10毫米的小型5 V LiPo充電板。它足夠小,適用于這個項目,但限制是只能為電池充電50 mA電流。 400 mAh電池需要超過8小時才能充滿電。
微型電源開關。
腕帶
由于這個游戲手柄很小,很容易從手上滑落,建議在玩游戲時戴上手腕帶。
螺絲
3D pr內置外殼需要四個14 mm M2.5平頭螺釘進行組裝。
參考:
https://www.waveshare.com/wiki/1.3inch_LCD_HAT
https://www.waveshare.com/product/modules/oleds-lc 。..
第2步:3D打印案例
3D打印您可以在Thingiverse中找到的案例模型:
https://www.thingiverse .com/thing:3328994
為了便于說明,我用不同的顏色打印每個部分:
Layer123.stl - 炭黑
Layer4 .stl - 半透明黃色
Layer5.stl - 半透明橙色
Layer678.stl - 半透明紅色
ButtonHead.stl - 半透明紅色,半透明藍色和半透明綠色
CrossButtonHead.stl - Gundam Red
第3步:直接電池電量
這款微型游戲手柄沒有足夠的空間安裝在升壓電路板上,是否有可能鋰離子電池直接為RPi Zero(W)供電而無需升級?
有一些非官方的討論是否要求RPi Zero(W)滿5 V電源。
根據RPi Zero簡化原理圖,只有2個引腳直接連接到5 V,它是USB插頭和PAM2306穩壓器。所有其他部件均由穩壓3.3 V和1.8 V供電。
假設我們在使用電池供電時不使用任何外部USB設備,關鍵因素是穩壓器。
根據PAM2306當輸入電壓降至3.5 V時,3.3 V輸出仍然保持90%以上的效率。
RPi零平均值約為100 - 200 mA,LiPo約為mAh,放電率為在降至3.5 V以下之前,它仍然可以利用90%的LiPo容量。
參考:
https://www.raspberrypi.org/forums/viewtopic。 PHP噸。..
的https://www.raspberrypi.org/documentation/hardware 。..
https://www.mouser.hk/datasheet/2/115/PAM2306-3367 。..
HTTPS://electronics.stackexchange.com/questions/32 。..
https://www.quora.com/Is-它-可能觀看的最CH 。..
注意:
根據我的簡單測試,當WiFi開啟時,電池可以持續超過90分鐘。如果使用RPi Zero,它應該會持續更長時間。
步驟4:引腳標題補丁
Waveshare LCD HAT采用薄型母針頭,可以使產品更加纖薄。但是我們需要在RPi Zero上使用相應的低調公插針頭來制作它。網針頭應為8毫米高,但我在網上找不到。所以從12毫米的公針頭上修補它。
需要一些患者修剪相同長度的40個針腳。
步驟5:焊接工作
使用RPi Zero焊接所有引腳頭。
以下是電源電路的連接摘要:
Waveshare Pin 2 -》 Charge Board +vin, Power Switch Pin 1
Waveshare Pin 6 -》 Charge Board -vin
Charge Board -vout -》 LiPo -ve
LiPo +ve -》 Power Switch Pin 2
Charge Board +vout -》 Power Switch Pin 3
當電源開關關閉引腳1和2時,它是電池供電模式
當電源開關關閉引腳2和3時,它是電池充電模式/電源關閉
注意:
Waveshare LCD HAT引腳頭位于底部,因此引腳排列顛倒了
步驟6:裝配層4
將第4層放在LCD HAT下
在第4層安裝電源開關
放入充電板和電池內部第4層框架
第7步:裝配層5
將第5層放在第4層
步驟8:插入RPi零
步驟9:裝配層678
將第678層放在RPi Zero上。
St ep 10:將螺絲擰入螺絲孔
步驟11:將按鈕頭放在LCD HAT上
步驟12:裝配層123
將第123層放在LCD HAT上。
步驟13:擰緊螺絲
步驟14:裝配十字按鈕頭
將十字按鈕頭放入十字按鈕。
步驟15:下載RetroPie圖像
下載RetroPie圖像在這里:
https://retropie.org.uk/download/
選擇“Raspberry Pi 0/1”選項下載Raspberry Pi Zero的圖像
步驟16:下載源
面包板RetroPie所需的另外兩個源代碼:
mk_arcade_joystick_rpi:
https://github.com/recalbox/mk_arcade_joystick_rpi
rpi-fbcp:
https://github.com/tasanakorn/rpi-fbcp
單擊“克隆”或者從兩個源網頁下載“按鈕然后再下載ZIP”。
S.第17步:準備ROM文件
對于非許可證免費游戲,我認為你應該只使用你擁有原始游戲的ROM。
或者你可能會發現一些許可免費游戲:
http://pdroms.de/files
http://www.doperoms.com
第18步:Flash RetroPie圖像
將RetroPie圖像閃存到micro SD卡的步驟與閃爍Raspbian圖像相同。如果您不熟悉閃爍步驟,請按照Raspberry.org提供的步驟進行操作:
Mac OS
Windows
PS記得用RetroPie圖像替換圖像文件名。
步驟19:復制文件
將“mk_arcade_joystick_rpi-master.zip”,“rpi-fbcp-master.zip”復制到剛創建的RetroPie micro SD。
步驟20:配置Micro SD
我們需要在RetroPie啟動后進一步配置,在此之前,我們需要啟用DWC2 USB控制器才能在計算機和網絡之間建立網絡連接。 Pi Zero。
在micro SD中編輯config.txt,在尾部追加跟隨行:
dtoverlay=dwc2
在micro SD中編輯codlin.txt,插入“ modules-load = dwc2,g_ether“在”rootwait“關鍵字之后。結果應該是這樣的:
dwc_otg.lpm_enable=0 console=serial0,115200 console=tty1 root=PARTUUID=14a75fe9-02 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait modules-load=dwc2,g_ether quiet loglevel=3 consoleblank=0 plymouth.enable=0 quiet init=/usr/lib/raspi-config/init_resize.sh
在micro SD中創建一個名為“ssh”的空白文件,以啟用openssh服務器,例如:在我的Mac上:
touch /Volumes/boot/ssh
參考:
https://www.instructables.com/id/Connect-to-a-Rasp 。..
步驟21:USB連接
將micro SD插入Pi Zero
將電源開關設為電池充電模式
將Pi Zero 2nd USB插孔(標有“USB”)連接到電腦。
等一下,您應該在計算機中找到新的網絡適配器。輸入以下命令連接到Pi Zero:
注意:
默認密碼為“raspberry”,您應該盡快通過“passwd”命令進行更改
步驟22:配置LCD
追加到“/etc/modules”
spi-bcm2835
flexfb
fbtft_device
創建“/etc/modprobe.d/fbtft.conf“
options flexfb setaddrwin=0 width=240 height=240 init=-1,0x11,-2,120,-1,0x36,0x70,-1,0x3A,0x05,-1,0xB2,0x0C,0x0C,0x00,0x33,0x33,-1,0xB7,0x35,-1,0xBB,0x1A,-1,0xC0,0x2C,-1,0xC2,0x01,-1,0xC3,0x0B,-1,0xC4,0x20,-1,0xC6,0x0F,-1,0xD0,0xA4,0xA1,-1,0x21,-1,0xE0,0x00,0x19,0x1E,0x0A,0x09,0x15,0x3D,0x44,0x51,0x12,0x03,0x00,0x3F,0x3F,-1,0xE1,0x00,0x18,0x1E,0x0A,0x09,0x25,0x3F,0x43,0x52,0x33,0x03,0x00,0x3F,0x3F,-1,0x29,-3
options fbtft_device name=flexfb gpios=reset:27,dc:25,cs:8,led:24 speed=125000000 bgr=1 fps=60 custom=1 height=240 width=240
步驟23:啟用Fbcp
提取源文件:
unzip /boot/rpi-fbcp-master.zip
編譯并安裝:
cd rpi-fbcp-master/
mkdir build
cd build
cmake 。.
make
sudo install fbcp /usr/local/bin/fbcp
cd 。./。.
創建新文件“/etc/init.d/fbcp“:
#! /bin/sh
### BEGIN INIT INFO
# Provides: fbcp
# Required-Start: kmod
# Required-Stop: kmod
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description:
# Description:
### END INIT INFO
case ”$1“ in
start)
/usr/local/bin/fbcp &
;;
stop|restart|reload|force-reload)
killall fbcp
exit 0
;;
*)
log_success_msg ”Usage: $0 start“
exit 1
esac
制作文件可執行文件:
sudo chmod +x /etc/init.d/fbcp
在啟動時將其設置為init:
sudo update-rc.d fbcp defaults
在尾部的“/boot/config.txt”中添加以下行:
disable_overscan=1
hdmi_force_hotplug=1
hdmi_group=2
hdmi_mode=87
hdmi_cvt=240 240 60 1 0 0 0
dtparam=spi=on
參考:https://github.com/tasanakorn/rpi-fbcp
第24步:配置操縱桿
提取源文件:
unzip /boot/mk_arcade_joystick_rpi-master.zip
編輯按鈕定義:
cd mk_arcade_joystick_rpi-master/
vi mk_arcade_joystick_rpi.c
找到“static const int mk_arcade_gpio_maps []”行并更新為HAT按鈕映射:
static const int mk_arcade_gpio_maps[] = {6,19,5,26,13,21,16,20,0,0,0,0};
編譯并安裝模塊:
sudo mkdir /usr/src/mk_arcade_joystick_rpi-0.1.5/
sudo cp -a * /usr/src/mk_arcade_joystick_rpi-0.1.5/
export MKVERSION=0.1.5
sudo -E dkms build -m mk_arcade_joystick_rpi -v 0.1.5
sudo -E dkms install -m mk_arcade_joystick_rpi -v 0.1.5
測試按鈕:
sudo modprobe mk_arcade_joystick_rpi map=1
jstest /dev/input/js0
追加到“/etc/modules”:
mk_arcade_joystick_rpi
創建“/etc/mod probe.d/joystick.conf“:
options mk_arcade_joystick_rpi map=1
參考:https://github.com/recalbox/mk_arcade_joystick_rp 。..
步驟25:復制ROM文件
將ROM文件從“/boot”文件夾復制到“?/RetroPie/roms/$ CONSOLE”文件夾
參考:
https://github.com/retropie/retropie-setup/wiki/Tr 。..
步驟26:Raspi-config
運行:
sudo raspi-config
WiFi:2網絡選項 - 》 N2 Wi-fi - 》填寫您的WiFi詳細信息
不等待網絡:3啟動選項 - 》 B2等待網絡啟動 - 》否 - 》確定
時區:4個本地化選項 - 》 I2更改時區 - 》選擇您的時區
禁用串口:5接口選項 - 》 P6串口 - 》否 - 》否 - 》確定
參考:
https://www.raspberrypi.org/documentation/configur 。..
第27步:RetroPie設置
運行:
sudo ~/RetroPie-Setup/retropie_setup.sh
微調1.3“LCD:C配置/工具 - 》 805 configedit - 》 1 - 》 0 - 》 2渲染分辨率 - 》 O視頻輸出分辨率 - 》確定 - 》取消 - 》取消 - 》取消
更改主題以適應小屏幕(需要連接WiFi) :812個esthemes - 》 14 Pixel-tft - 》 OK - 》 1個碳 - 》 2個卸載
參考:
https://github.com/retropie/retropie-setup/wiki/th.。.
第28步:原生分辨率
LCD HAT在十字按鈕上有3個按鈕和1個額外的按鈕,它可以映射到只有4個按鈕的復古游戲控制臺(選擇,開始,A和B)。此類游戲機的最高分辨率應為NES,分辨率為256 x 240。如果只是簡單地裁剪水平過掃描區域,它就可以適合240 x 240 LCD顯示器。
如果你只像我一樣玩NES游戲,你可以應用以下配置來獲得原始分辨率顯示。
追加“/opt/retropie/configs/nes/retroarch.cfg”:
video_fullscreen_x = “0”
video_fullscreen_y = “0”
video_scale_integer = true
Append”/opt/retropie/configs/all/retroarch-core-options。 cfg“:
quicknes_use_overscan_h = “disabled”
步驟29:控制器配置
EmulationStation的Joypad設置:
vi /opt/retropie/configs/all/emulationstation/es_input.cfg
輸入文字:
/opt/retropie/supplementary/emulationstation/scripts/inputconfiguration.sh
Retroarch的Joypad設置:
vi /opt/retropie/configs/all/retroarch/autoconfig/GPIO Controller 1.cfg
輸入文字:
input_device = “GPIO Controller 1”
input_driver = “udev”
input_start_btn = “11”
input_exit_emulator_btn = “11”
input_down_axis = “+1”
input_right_axis = “+0”
input_state_slot_increase_axis = “+0”
input_select_btn = “10”
input_left_axis = “-0”
input_state_slot_decrease_axis = “-0”
input_up_axis = “-1”
input_a_btn = “0”
input_b_btn = “1”
input_reset_btn = “1”
input_enable_hotkey_btn = “10”
步驟30:加快啟動時間
運行:sudo systemctl disable asplashscreen
sudo systemctl disable dphys-swapfile
sudo systemctl disable hciuart
sudo systemctl disable keyboard-setup
sudo systemctl disable nmbd
sudo systemctl disable raspi-config
sudo systemctl disable smbd
sudo systemctl disable nfs-config
步驟31:可選調整
微調“/boot/cmdline.txt“:
禁用USB以太網小工具
無徽標
fastboot
安靜
dwc_otg.lpm_enable=0 console=tty1 root=PARTUUID=14a75fe9-02 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait loglevel=3 consoleblank=0 plymouth.enable=0 logo.nologo fastboot quiet #dtoverlay=dwc2
步驟32:引導RetroPie
關閉RetroPie:
sudo halt
拔下USB電纜
將電源開關設置為電池供電模式
等待ar啟動后半分鐘
按照屏幕說明配置游戲按鈕
選擇您上傳的控制臺和游戲
步驟33:仿真站電源選項
按開始按鈕(按下十字按鈕)進入仿真站配置屏幕。
UI設置 - 》屏幕保護設置 - 》 SCREENSAVER AFTER - 》 1分鐘
其他設置 - 》省電模式 - 》即時
步驟34:綁手腕帶
步驟35:享受!
現在是時候展示你做了什么并玩它。
步驟36:畫廊:Color Mix&匹配
-
樹莓派
+關注
關注
121文章
2005瀏覽量
107450
發布評論請先 登錄
微小信號處理
T90智能電烙鐵,全方位升級!PD3.1 140W大功率加熱,功率升級,IPS LCD彩屏,屏幕升級,質感升級!
【干貨分享】:開源小巧的FPGA開發板——Icepi Zero

【開源分享】:開源小巧的FPGA開發板——Icepi Zero
TechWiz LCD 2D應用:IPS電極仿真
使用CYUSB3065制作了一個定制電路板,并且想要配置我的定制傳感器,遇到的幾個疑問求解
用 樹莓派 Zero 打造的智能漫游車!

如何將 M.2 HAT+ 與 Raspberry Pi 5 一起使用?

樹莓派復古游戲“雙雄會”,Batocera 和 RetroPie 誰更懂你?

智譜GLM-Zero深度推理模型預覽版正式上線
TechWiz LCD 2D應用:IPS電極仿真
?Banana Pi BPi-M4 Zero 開源硬件開發板評測試: 全志科技H618 方案設計

評論