【发布时间】:2023-04-09 15:13:01
【问题描述】:
每次我在 Raspberry Pi 上运行此脚本时:
import curses
import RPi.GPIO as GPIO
GPIO.setwarnings(False)
GPIO.setmode(GPIO.BOARD)
motor1a = 7
motor1b = 11
motor1e = 22
motor2a = 13
motor2b = 16
motor2e = 15
GPIO.setup(motor1a,GPIO.OUT)
GPIO.setup(motor1b,GPIO.OUT)
GPIO.setup(motor1e,GPIO.OUT)
GPIO.setup(motor2a,GPIO.OUT)
GPIO.setup(motor2b,GPIO.OUT)
GPIO.setup(motor2e,GPIO.OUT)
screen = curses.initscr()
curses.noecho()
curses.cbreak()
curses.halfdelay(3)
screen.keypad(True)
try:
while True:
char = screen.getch()
if char == ord('q'):
break
elif char == curses.KEY_UP:
GPIO.output(motor1a,GPIO.HIGH)
GPIO.output(motor1b,GPIO.LOW)
GPIO.output(motor1e,GPIO.HIGH)
GPIO.output(motor2a,GPIO.HIGH)
GPIO.output(motor2b,GPIO.LOW)
GPIO.output(motor2e,GPIO.HIGH)
# except SOMEEXCEPTION is missing here, I am not sure why there is an exception in the first place
我收到一个错误:
_curses.error: setupterm: could not find terminal
我该如何解决这个问题?
我看到一个帖子说要执行以下操作:
你必须设置环境变量
TERM和TERMINFO,像这样:
export TERM=linux ; export TERMINFO=/etc/terminfo
但我不确定在哪里执行该步骤。
【问题讨论】:
-
这段代码不能工作——缩进在 Python 中是必不可少的。它最后也缺少一块(
try:的关闭)。我修复了它,希望它更像 python(except仍然丢失)
标签: terminal raspberry-pi ncurses python-curses