シリアル デバイスと通信するための GUI を作成しようとしています。このために、Tkinter を使用しています。私の問題は、スクリプトを実行するたびに estCon 関数とメインループのみが実行されるため、GUI が開始されないことです。メイン ループの後に estCon 関数の定義を配置すると、estCon 関数が見つからなかったと表示されます。
def estCon():
# establish connection
while True:
try:
ser = serial.Serial(port, baud, bytesize)
print('Connected.')
break
except serial.SerialException:
print('waiting for device ' + port + ' to be available.')
time.sleep(3)
starttime = time.time()
outfile = open(filename, 'a')
doprint = True
root = Tk()
estConButton = Button(root, text="Establish serial connection",
command=estCon())
estConButton.pack()
root.mainLoop()