第二版Retropie树莓派掌机(一)
之前制作了一个树莓派掌机,能用,但是感觉有几点不满意:
1.屏幕是480X320的,太不清楚了,用于打FC游戏是足够了,但启动树莓派官方系统时,太粗糙了,想换更高分辨率的屏幕。
2.按键不灵敏,手感不好,按起来太费力,段落感太差,按下去后有时没有解发,还要用力按才能触发。
3.因为有18650电池,太厚,太重
于是心心念念地,又想鼓捣一个更好的版本。
然后, 从刚上买了一个新的屏幕,480*800的4寸屏幕,杂牌的,120块钱。开机发现显示异常清晰,接近安卓手机80%的清晰度了,非常满意。
最终又经过一次失败改版后,做成了下面的样子:



以下是第一次试制的过程和结果:
屏幕用了好的屏幕就可以了,但按键这回一定要灵敏,手感好,整机一定要薄。
然后,花费了好多心思,试制了多次,发现十字按键老是在按“上”时,被下,左,右三个键的边沿牵制,导致按上时太费力。想来想去,忽然想到拆一个北通的手柄看看吧,北通的这个按键有段落感觉。
拆来发现,北通的十字键是圆形的,下面中心有一个小柱子顶住的,恍然大悟。于是仿制了一 个。
然后制作按键电路板,为了消抖,还在按钮上并联了104电容。最后花费了好几天劲后做好了。
按键板和按键要固定,设计打印了固定支撑件。

试制的按键,感觉很可以,就是手感不太好,暂时忍了。
在网上搜索了一个新的按键驱动,这个不需要加载到内核里面,是一个有main方法的可执行程序,只需要开机启动就可以了。解决了先前一版里面内核驱动有些按键的GPIO 不被识别的问题。
下载地址是 https://github.com/adafruit/Adafruit-Retrogame
安装脚本在这里 :https://github.com/adafruit/Raspberry-Pi-Installer-Scripts
这个程序原理是这样的:以23脚为例,通过读写 /sys/class/gpio/gpio23/edge来改变 23脚的状态。这个设备文件需要先执行一个打开命令后,才会在文件系统中暴露出来。有兴趣的可以看看源码。这个比开发驱动简单。
如果有哥们需要给树莓派增加几个物理按键,我感觉这个是首选。只需要修改启动脚本就可以灵活配置。



最后组装起来,玩了几次。


发现一个令人崩溃的问题,就是个别按键在没有按下时,会误触发,就是你什么也没按,就有个奇怪的按键自己发出按下的信号。排查了电路和程序后,没有找到具体原因,但肯定不是程序的问题。应该是我手工焊接的电路板和线太多了,有短路的地方还是什么的。极度的虐心啊!!!!





又想到手工制作的按键由于3D打印的原因,按下去时会吱咯吱咯地响,相当不爽啊。
最后,狠心决定,放弃手工制作的按键,使用北通USB手柄,把里面电路板拆出来,接到USB口上,这样就稳定多了。唯一缺点就是拆出来的北通板子有点宽,会让整机变宽。
方案就这样确定了,从头开始重新搞。
(未完待续,请看后续文章)