【发布时间】:2016-03-29 16:09:58
【问题描述】:
我创建了一个连接到超声波传感器的 Arduino nano 和一个 Raspberry Pi 2 Model B 的设置。Arduino 正在触发和读取超声波传感器,并通过 USB 每隔 0.1 秒发送一次数据。连接一切正常,当我通过 Python Shell 与 Arduino 交谈时,我得到了结果。现在我想创建一个漂亮的 Python GUI 来读取距离,这里是代码:
from Tkinter import *
import time
import serial
DEVICE = '/dev/ttyUSB0'
BAUD = 9600
ser = serial.Serial(DEVICE, BAUD)
root = Tk()
labeldat = IntVar(value=1)
def getdata() :
labeldat = 0
while labeldat == 0 :
labeldat = ser.readline()
root.update_idletasks()
root.title("Abstandsmessung mit Ultraschall")
Label(text="Der Abstand zum naechsten Objekt betraegt:", fg="#0A116B").pack()
Label(root, textvariable=labeldat, fg="#0A116B").pack()
Button(text='Hole Abstand!', command=getdata, background="#33D63B", fg="#FFFFFF").pack()
root.mainloop()
现在我得到带有“Der Abstand zum naechsten Objekt betraegt:”的第一个标签和带有文本的第二个标签:“1”。当然,我也得到一个标有“Hole Abstand!”的按钮。
问题是,当我单击按钮时没有任何反应。每次更改labeldat 时如何更新标签?
谢谢你帮助我, 最好的祝福 阿明
【问题讨论】:
-
抱歉,亲爱的先生,但您确实意识到,对于我们中的许多人来说,“Der Abstand zum...”这句话毫无意义。毕竟不是每个人都是德国人。我建议您尽可能翻译这些错误。
标签: python tkinter arduino usb