0

嗨,我正在尝试使用此 python 脚本读取连接到我的 Raspberry Pi 的 USB 游戏杆:

import pygame
pygame.init()
print pygame.joystick.get_init()
print pygame.joystick.get_count()
j =  pygame.joystick.Joystick(0)
print j
j.init()
print j.get_init()
print j.get_id()
for i in range(0, j.get_numaxes()):
        j.get_axis(i)

pygame.quit()

我得到的输出是这样的:

1
1
<Joystick object at 0xb6cb2120>
1
0
SDL_JoystickGetAxis value:0:
SDL_JoystickGetAxis value:0:
SDL_JoystickGetAxis value:0:
SDL_JoystickGetAxis value:0:

我不知道为什么。

值不应为 0。

4

1 回答 1

0

带有SDL_的行由 SDL 生产。它们是由仍在生成的库中的调试选项引起的,我不知道为什么。

但是,要实际打印轴,您应该编写

print j.get_axis(i)

代替

j.get_axis(i)

最后,为了确保获得正确的值,您应该循环打印这些值(例如每秒)。

for j in range(10):
    for i in range(0, j.get_numaxes()):
        print j.get_axis(i)
        time.sleep(1)
于 2013-10-09T14:53:10.840 回答