所以今天我们有一些不同的东西。这是我一直想与Raspberry Pi Zero W合作的项目。
现在您可能会问我”
好吧,我没有得到pi Zero W 2,因为它在我购买pi Zero W之后出现了 2天 ...所以,很有趣!
Raspberry Pi Zero W是一个了不起的系统。它的一些功能包括:
- 802.11 b/g/n无线lan
- 蓝牙4.1
- 1GHz,单核CPU
- 512MB RAM
- Mini HDMI端口和Micro USB on-the-go(OTG)端口
- Micro USB Power
- 与帽子兼容的40针头头 等。
,这使其成为自从看到这个惊人设备以来我想做的项目的理想选择。
远程缩回动力的书包是的。
该计划是在袋子里放上覆盆子pi零w,并在袋子的USB端口中放置HDMI,该端口将在不使用时显示图片,每次我想播放任何内容,我都会插入HDMI并按下A按钮将启动Retropie的仿真station。
这就是为什么我打算将其用于输入Retropie的Button。
所以让我们开始吧!
我要在这个项目中使用的包是我从希腊Plaisio购买的Sentio Backpack 15.6" Casual Series Gray Antitheft Bag。
对于我的操作系统,我与Raspberry Pi OS Lite一起去了,它基本上像Raspberry Pi OS,没有桌面接口,因此基本上只有一个控制台。
我最初是为覆盆子制作案例,因此在包中不会损坏。我使用了this adafruit的惊人设计
,然后我继续为按钮检测和模拟仪处理软件。
我决定在Python中写所有内容,这是一种高级,通用的编程语言,我最熟悉的语言。
对于按钮检测,我需要将按钮连接到1 GPIO引脚以检测到压力机。
提示:如果您的按钮具有LED,请确保在电压和电压之间放置330欧姆电阻器,否则会破裂。我忘了这样做。
要检测我使用以下脚本的按钮:
# Import Rpi's Library for GPIO pins
import RPi.GPIO as GPIO
# Disables Warnings.
# It's usually telling you that the gpio is already in use,
# that's because you have stopped the program and started it again.
GPIO.setwarnings(False)
# The GPIO.BCM option means that you are referring to the pins by the
# "Broadcom SOC channel" number, these are the numbers after "GPIO"
# around the outside of the above diagram
GPIO.setmode(GPIO.BCM)
# It tells the library which pins you want to use
GPIO.setup(3, GPIO.IN, pull_up_down=GPIO.PUD_UP)
# Waits till the Button is Pressed
GPIO.wait_for_edge(3,GPIO.FALLING)
# The rest of the script gets executed when the button is pressed
当我不使用时,我想在覆盆子上显示图片时,我必须找到不需要界面来显示很难拍摄的图像的东西。
经过大量搜索,我找到了一个称为FBI的软件包,从我的理解来看,它是用于在计算机监视器上显示图形的内容,通常在系统控制台上,通常还包括图片!
!让FBI运行的问题是,它完全冻结了控制台,这意味着如果我运行它并告诉它在打开FBI 2秒后运行日志,它将等到FBI退出,然后等待2秒钟才能执行我想要的命令。
用于检测按钮按下的脚本也有相同的内容,您在执行某件事时无法运行任何命令救生员。
子过程是一个Python模块,可让您产生新的进程,连接到其输入/输出/错误并获取其返回代码。它的作用是使您可以从当前的过程中创建一个不同的控制台/进程,因此您不必等待其他任务完成。
这很棒,因此我没有拥有1个Python文件,而是获得了3个不同的Python文件。
我会说他们每个人是什么以及它的作用:
同样,当使用Retropie的主题工作时,我遇到了一个问题,当我启动模拟station时,主题会弄清楚,我无法将其更改为正常。
为我造成这一点的问题是对Retropie的VRAM有限制,可能是我重新启动的许多次,可能已经破坏了主题。
我用重新安装的retropie修复了它,值得庆幸的是,它没有删除我的任何ROM,并且通过将VRAM限制放在至少 80 上,以便菜单可以正常加载。解决了问题。
另外,我遇到的另一个问题是,Retropie不想运行游戏,并在使用子过程脚本打开时将我放回菜单中。
对我有用的解决方案是,我在Screen中添加了所有脚本,这是您可以在该会话中启动会话然后打开任何数量的Windows(虚拟终端)的方式,从而允许Retropie启动游戏那样。
然后,在添加了大约5000个ROM并像4小时一样等待Retropie Scraper,以添加标题和图像,我用该项目的软件部分完成了。
另外,我喜欢Famicom-Mini主题,因为我喜欢它的设计!
〜也为任何进行该项目的人提供小费
我使用一个名为Termius的应用程序。 Termius是在台式机和移动设备上工作的SSH客户端,因此,如果有任何破坏,我可以通过手机进入RPI。
另外,快速提示,如果您是学生,您可以使用Github Student Developer Pack获得Termius Premium,我强烈建议您获得。
是时候去袋子了。
目前从蝙蝠出来时,它侧面的端口是一个USB端口,如果我尝试放置HDMI,电缆就会伸出。
我决定在侧面的端口周围缝制盖子,并在其末端戴上HDMI防尘盖,以防止任何东西在电缆内部驶入并损坏它。
几个小时后,缝制了很多意外的穿孔。
我终于完成了!
我还添加了一个小按钮将其固定在HDMI末端。
总的来说,我认为它最终很不错!
这个项目是一个非常有趣的项目,我能够与Raspberry Pi Zero W一起工作,并且在所有调试中,我还发现了许多新事物,例如子处理和屏幕,并学会了在Linux命令上工作。我一直想做的线。
我将来将继续进行这个项目,我正在考虑使用Java制作某种应用程序,以显示Raspberry Pi的统计数据,这将非常有趣。
我知道这篇文章很长,但是感谢您阅读我的博客:D