Ошибка при не обновлении значений в графическом интерфейсе из TkinterPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Ошибка при не обновлении значений в графическом интерфейсе из Tkinter

Сообщение Anonymous »

Я новичок в программировании и в настоящее время пытаюсь разработать дисплей производительности турбины с помощью Arduino Uno, который будет передавать показания напряжения с помощью входа контакта A1.
Затем это показание отправляется в Python, а затем графический интерфейс Python отображает показания тока и т. д. на основе исходного последовательного ввода от Arduino. Основываясь на том немногом, что я узнал, я выполнил простое кодирование со стороны Arduino, а затем спроектировал графический интерфейс с помощью Figma и преобразовал его. Моя проблема в том, что данные отображаются только в виде образца напряжения и тока, но я не могу постоянно автоматически обновлять данные при изменении значений тока или напряжения. Что мне не хватает? Когда я попытался выполнить цикл, весь код выдал ошибку.
Это код, который я пробовал с циклом:
# Tkinter-Designer

from pathlib import Path

# from tkinter import *
# Explicit imports to satisfy Flake8
import serial

ser = serial.Serial ('COM4', baudrate = 9600, timeout = 1)

while:1

arduinoData = ser.readline().decode('ascii')
int(float(arduinoData))

voltageval = int(arduinoData)/204.6
currentval = int(arduinoData)/1.96

from tkinter import Tk, Canvas, Entry, Text, Button, PhotoImage

OUTPUT_PATH = Path(__file__).parent
ASSETS_PATH = OUTPUT_PATH / Path(r"C:\Users\haeyl\Downloads\tkinter\build\assets\frame0")

def relative_to_assets(path: str) -> Path:
return ASSETS_PATH / Path(path)

window = Tk()

window.geometry("1280x720")
window.configure(bg = "#600000")

canvas = Canvas(
window,
bg = "#600000",
height = 720,
width = 1280,
bd = 0,
highlightthickness = 0,
relief = "ridge"
)

canvas.place(x = 0, y = 0)
canvas.create_rectangle(
0.0,
0.0,
1280.0,
90.0,
fill="#474646",
outline="")

canvas.create_text(
423.0,
37.0,
anchor="nw",
text="TURBINE PERFORMANCE DISPLAY",
fill="#FFFFFF",
font=("Inter", 24 * -1)
)

image_image_1 = PhotoImage(
file=relative_to_assets("image_1.png"))
image_1 = canvas.create_image(
262.0,
182.0,
image=image_image_1
)

image_image_2 = PhotoImage(
file=relative_to_assets("image_2.png"))
image_2 = canvas.create_image(
909.0,
182.0,
image=image_image_2
)

image_image_3 = PhotoImage(
file=relative_to_assets("image_3.png"))
image_3 = canvas.create_image(
909.0,
344.0,
image=image_image_3
)

image_image_4 = PhotoImage(
file=relative_to_assets("image_4.png"))
image_4 = canvas.create_image(
262.0,
348.0,
image=image_image_4
)

image_image_5 = PhotoImage(
file=relative_to_assets("image_5.png"))
image_5 = canvas.create_image(
262.0,
519.0,
image=image_image_5
)

canvas.create_text(
105.0,
168.0,
anchor="nw",
text="VOLTAGE",
fill="#FFFFFF",
font=("Inter", 32 * -1)
)

canvas.create_text(
752.0,
168.0,
anchor="nw",
text="RPM",
fill="#FFFFFF",
font=("Inter", 32 * -1)
)

canvas.create_text(
740.0,
330.0,
anchor="nw",
text="POWER",
fill="#FFFFFF",
font=("Inter", 32 * -1)
)

canvas.create_text(
105.0,
335.0,
anchor="nw",
text="CURRENT",
fill="#FFFFFF",
font=("Inter", 32 * -1)
)

canvas.create_text(
105.0,
506.0,
anchor="nw",
text="TORQUE",
fill="#FFFFFF",
font=("Inter", 32 * -1)
)

canvas.create_text(
323.0,
168.0,
anchor="nw",
text=(0 + voltageval),
fill="#FFFFFF",
font=("Inter", 32 * -1)
)

canvas.create_text(
970.0,
168.0,
anchor="nw",
text="rpmval",
fill="#FFFFFF",
font=("Inter", 32 * -1)
)

canvas.create_text(
970.0,
330.0,
anchor="nw",
text="0 W ",
fill="#FFFFFF",
font=("Inter", 32 * -1)
)

canvas.create_text(
323.0,
335.0,
anchor="nw",
text=(0 + currentval),
fill="#FFFFFF",
font=("Inter", 32 * -1)
)

canvas.create_text(
323.0,
506.0,
anchor="nw",
text="0 N/M",
fill="#FFFFFF",
font=("Inter", 32 * -1)
)

image_image_6 = PhotoImage(
file=relative_to_assets("image_6.png"))
image_6 = canvas.create_image(
1132.0,
563.0,
image=image_image_6
)

button_image_1 = PhotoImage(
file=relative_to_assets("button_1.png"))
button_1 = Button(
image=button_image_1,
borderwidth=0,
highlightthickness=0,
command=lambda: print("button_1 clicked"),
relief="flat"
)
button_1.place(
x=709.0,
y=476.0,
width=264.0,
height=108.0
)

window.resizable(False, False)
window.mainloop()



Подробнее здесь: https://stackoverflow.com/questions/788 ... om-tkinter
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»