问题描述
我正在使用树莓派pi 4控制器(4GB内存)使用模拟传感器进行一个项目。我目前已连接9个传感器,我正在使用while循环进行无限循环。该代码非常简单,可以从传感器获取信息,并使用画布库在按下按钮时更改形状的颜色,而在不使用时保持不变。问题是经过500-550次循环后,速度越来越慢。随着周期数的增加,响应速度越来越慢。有人可以建议我如何解决这个问题吗?
我也是编码方面的菜鸟,所以如果我做错了,请指导我。我只为一个传感器编写代码,因为所有传感器都相同。
代码:
from tkinter import *
import Rpi.GPIO as GPIO
import time
import tkinter as tk
GPIO.setwarnings(False)
GPIO.setmode(GPIO.BOARD)
GPIO.setup(7,GPIO.IN,pull_up_down=GPIO.PUD_DOWN)
.
.
.
GPIO.setup(18,pull_up_down=GPIO.PUD_DOWN)
root=tk.Tk()
canvas = tk.Canvas(root,bg='white',width=500,height=500)
canvas.grid()
canvas.bind('<key>',lambda event: root.destroy() if (event.char == 'q') else 0)
while True:
def sense1(on):
square1= canvas.create_rectangle(5,5,105,width=0,fill='red' if on else 'green')
.
.
.
def sense9(on):
square9= canvas.create_rectangle(235,235,335,fill='red' if on else 'green')
global S1,...,S9
if GPIO.input(7) == GPIO.HIGH:
S1 = sense1(True)
else:
S1 = sense1(False)
.
.
.
if GPIO.input(18) == GPIO.HIGH:
S9 = sense9(True)
else:
S9 = sense9(False)
root.update_idletasks()
root.update()
我为其他8个传感器编写了相同的代码。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)