在Raspberry Pi上持续为Pimoroni buttonhim运行Python代码导致冻结

时间:2019-05-13 10:05:42

标签: python raspberry-pi

我正在使用Raspberry Pi 3B +在屏幕上显示一个或多个网站,并且最近附加了Pimoroni Button-Shim

自从编写了一些Python代码(如下)以来,我一直可以使用这些按钮,但是Raspberry Pi似乎在大约18小时后冻结了。我从没见过这种情况发生,但是返回时已经冻结了三遍。

在我编写此代码之前,从未做过此事,并认为它可能与编写不良的代码有关,而不是焊接本身。

我对Python有一定的经验,但对于连续运行的程序却从未有过,处理程序对我来说是一个新概念。

代码为Python 3,使用Pimoroni提供的库,并通过LXDE-pi / autostart启动。

如果您有关于如何帮助的任何想法,将不胜感激,我有一些Google,但实际上不知道任何资源或键入什么来找到解决方案。

它在硬重启后立即可用,我不确定下一步该怎么做。


#!usr/bin/python3
import buttonshim
from time import sleep
import os

sleep(10)
os.system('chromium-browser --noerrdialogs --incognito --kiosk  url1')
buttonshim.set_pixel(221,36,33)

@buttonshim.on_press(buttonshim.BUTTON_A)
def handler(button, pressed):
    os.system('pkill chromium-browser')
    os.system('chromium-browser --noerrdialogs --incognito --kiosk https://www.nytimes.com')
    buttonshim.set_pixel(33, 106, 224)

@buttonshim.on_press(buttonshim.BUTTON_B)
def handler(button, pressed):
    os.system('pkill chromium-browser')
    os.system('chromium-browser --noerrdialogs --incognito --kiosk url1')
    buttonshim.set_pixel(0xFF, 0x00, 0xFF)


@buttonshim.on_press(buttonshim.BUTTON_C)
def handler(button, pressed):
    os.system('vcgencmd display_power 0')

@buttonshim.on_press(buttonshim.BUTTON_D)
def handler(button, pressed):
    os.system('vcgencmd display_power 1')

while True:
    sleep(10)

该代码一开始就按预期工作,但最终却没有。

1 个答案:

答案 0 :(得分:0)

跟进:

我的睡眠时间显着增加-到2000年,并按照有关numpy库占用大量CPU的另一次讨论中的指示进行操作-link

从那时起,我就没遇到冻结的麻烦