1

所以我有这个脚本来控制 LCD 板,我希望每次按下按钮时都会改变背光,但也想做其他事情。目前这不起作用,它不会显示我想要的消息。

这是代码的更改背光位:

while True:
    for b in btn:
        if lcd.buttonPressed(b):
            lcd.backlight(col[randint(0,5)])

然后我想继续运行一些代码,以这种方式将字符串打印到 lcd 和其他东西上:

lcd.message("This is a string")

但是脚本不会打印字符串,它只是停留在背光更改位上。

基本上,我正在创建一个字母索引,您可以使用 LCD 按钮在其中移动,并希望每次按下按钮时背光都会发生变化。

4

1 回答 1

2

标准方法是有一个包含两者的循环。在循环中,您首先处理任何输入或状态更改。然后在循环结束时更新显示。这是游戏编程中相当常见的范例,请参阅pygame大量示例。然后,您只会在程序终止时中断。值得指出的一件事是,您不想阻止检查按键(或任何输入),否则您会等待显示器等待输入。

sudo 代码将类似于:

while True:
    for event in key_presses():
        handle_event(event)  # stuff that happens as a result of input
    update_state()  # stuff that happens regardless of input
    update_display()  # everything that changes the display (backlight, text, anything)
于 2013-10-01T19:20:43.247 回答