我寫了一段代碼從我的arduino中讀取模擬值,並在一個簡單的Python應用程序中監視結果,但是當我在應用程序中點擊「開始」按鈕時,出現此錯誤:Tkinter回調中出現異常 回溯(最近通話最後一個)在Tkinter回調中的例外
和編譯器所在的錯誤在這instraction:analoglabel.config(文= STR(pin.read()))
對不起,我coudn't填充全部錯誤信息
這是我的代碼:
import pyfirmata
from pyfirmata import util
import Tkinter
from time import sleep
def press():
it = util.Iterator(board)
it.start()
while True:
if flag.get():
analoglabel.config(text=str(pin.read()))
analoglabel.update_idletasks()
root.update()
else:
break
board.exit()
root.destroy()
def exit_command():
flag.set(False)
port = '/dev/ttyACM0'
board = pyfirmata.Arduino(port)
sleep(5)
pin = board.get_pin('a:0:i')
root = Tkinter.Tk()
root.title("Analog read by hamzawi")
root.minsize(300, 50)
startbutton = Tkinter.Button(root,
text="START",
command=press)
startbutton.grid(column=1, row=2)
exitbutton = Tkinter.Button(root,
text="EXIT",
command=exit_command)
exitbutton.grid(column=2, row=2)
label = Tkinter.Label(root,
text="The value is: ")
label.grid(column=1, row=1)
analoglabel = Tkinter.Label(root, text=" ")
analoglabel.grid(column=2, row=1)
flag = Tkinter.BooleanVar()
flag.set(True)
root.mainloop()
請我需要幫助!!並且非常感謝
你好,歡迎來到StackOverflow。請花一些時間閱讀幫助頁面,尤其是名爲[「我可以詢問什麼主題?」(http://stackoverflow.com/help/on-topic)和[「我應該問什麼類型的問題避免問?「](http://stackoverflow.com/help/dont-ask)。更重要的是,請閱讀[Stack Overflow問題清單](http://meta.stackexchange.com/q/156810/204922)。您可能還想了解[最小,完整和可驗證示例](http://stackoverflow.com/help/mcve)。 –
您將不得不告訴我們我們能夠幫助您的實際錯誤。 –
這裏是第1部分,因爲它很長:在Tkinter回調中的例外 回溯(最近呼叫最後): 文件「/usr/lib/python2.7/lib-tk/Tkinter.py」,行1489,在__call__中 返回自我.func(* args) 文件「/home/hamzawi/Documents/Python_projects/potentioPython/pot.py」,第13行,按 analoglabel.config(text = str(val)) –