我正在使用python代码控制一个远程玩具车
def getkey():
fd = sys.stdin.fileno()
old = termios.tcgetattr(fd)
new = termios.tcgetattr(fd)
new[3] = new[3] & ~TERMIOS.ICANON & ~TERMIOS.ECHO
new[6][TERMIOS.VMIN] = 1
new[6][TERMIOS.VTIME] = 0
termios.tcsetattr(fd, TERMIOS.TCSANOW, new)
c = None
try:
c = os.read(fd, 1)
finally:
termios.tcsetattr(fd, TERMIOS.TCSAFLUSH, old)
return c
def car():
while True:
key = getkey()
if key == 's': #Down arrow
print "Down"
Backward()
elif key == 'w': #Up arrow
print "Up"
forward()
elif key == 'a':
print "left"
Left()
elif key == 'd':
print "Right"
Right()
elif key == 'q': #Quit
print "That's It"
break
def forward():
GPIO.output(11,True) #Move forward
当我按下'w'forward()时,调用方法,汽车向前移动,但直到我 退出程序或从其他方法调用GPIO.output(11,Flase)。
是否有任何密钥侦听器检测任何特定密钥的密钥释放。
例如,如果按下'w'则调用此方法,如果释放则调用其他方法
Sudo代码
if w_isPressed()
forward()
else if w_isReleased()
stop()
面临着类似的问题(我不是Python专家),但这对我有效
相关问题 更多 >
编程相关推荐