如何用Python从游戏端口读取数据?
我喜欢编程和机器人之类的东西。为了这个项目,我使用LPT端口来输出数据,Gameport端口来输入数据。
对于年轻的小伙伴们来说:这其实就是一些老式的USB端口 ;-)
游戏端口 http://img44.imageshack.us/img44/3650/da15dsubm.png 并行端口 http://img44.imageshack.us/img44/1369/800pxparallelport.jpg
使用Python(还有那个很棒的模块 pyParallel
),输出效果非常好。
现在我真的想从游戏端口获取数据(比如光电管、温度传感器等等)。我该怎么做呢?
哦,对了:我用的是Ubuntu系统来做这些事情。
3 个回答
1
你有没有看过pygame的摇杆包呢?可以在这里找到:http://www.pygame.org/docs/ref/joystick.html?
2
我帮不了你太多。我现在不再使用joy/并口了,几乎忘记了所有的相关知识。 我能告诉你的是,在Linux系统下,有一个专门的驱动和设备用于操纵杆接口。你可以在这里找到相关信息(谷歌缓存,主文档已经无法访问)。
我很确定内核模块仍然存在。一旦你加载它,你就可以访问到/dev/js0这个设备。你需要直接从这个设备读取数据,除非你找到更好的库来处理。
顺便说一下,记得如果我没记错的话,你可以从并口读取数字信号。这种做法不太常见,有点黑科技,但对于你的传感器来说,游戏端口更合适(因为你有模拟输入)。不过如果你想用数字信号,记得你可以选择使用并口,完全可以的。
1
如果你只是想获取控制器的输入(比如USB摇杆、游戏手柄等),那么PyGame有一个输入模块,使用起来非常方便。