制作Retropie系统树莓派掌机(四)

制作Retropie系统树莓派掌机(四)

解决按键的识别问题

这回到了软件部分,要解决按键的识别问题,需要将GPIO的按键开关识别为系统的JOYSTICK设备。

为了实现这个东西,上网查了好多资料。把Retropie的官方文档看了好多遍。好像官方的Retropie镜像只支持串口的,不支持直接连接到GPIO口的这种开关,也许是因为这种方式太low太暴力了。

然后搜了broadcom芯片对GPIO的说明,也没怎么理解透。原理倒是明白了。

最后发现,Recalbox这个系统上有对直连GPIO按键的支持,然后找到了一个开源的叫mk_arcade_joystick的驱动程序。

github上的这个好像是有问题的,源码语法就有错,又找找找,找着了另一个版本的,比较了下,选了一个新一点的,修改了里面的错误,又删除了一些代码,把选定的GPIO引脚编号,写死到了驱动程序源码里去了。

开机启动retropie,用电脑用ssh连接上去,在字符控制台下,把c代码传上去,编译成ko文件,再用insmod或modpro装载进去。然后测试,发现有部分按键可以识别,有些不识别,有些没按却被识别为按下。

最后,检查了电路板的电路,更换了部分按键使用的引脚之后,总算是有10个按键可以使用了。上下左右,ABCD,START,SELECT,基本够用了。

驱动程序代码等有时间时详细说一下,l软件的东西比较多,这里就先这么样吧...

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值