screen.nodelay (True) заполняет терминал диагональными линиями -1 и блокирует ввод - PullRequest
0 голосов
/ 30 сентября 2019

Я использую Raspberry Pi и пытаюсь сделать так, чтобы при нажатии клавиши светодиод включался и выключался, когда я отпускаю эту клавишу. Нажатие клавиши (в данном случае «а») ничего не делает, но, как ни странно, нажатие «q» останавливает программу

Вот мой код

import curses
import RPi.GPIO as GPIO

GPIO.setwarnings(False)
GPIO.setmode(GPIO.BOARD)
GPIO.setup(12,GPIO.OUT)

screen = curses.initscr()
curses.noecho()
screen.nodelay(True)
screen.keypad(True)

screen.keypad(True)

try:
    while True:

        char = screen.getch()
        print char
        if char == ord('q'):
            break
        elif char == ord('a'):
            GPIO.output(12,True)

        else:
            GPIO.output(12,False)

finally:
    curses.nocbreak();screen.keypad(0);curses.echo()
    curses.endwin()
    GPIO.cleanup()
...