Уведомления

Группа в Telegram: @pythonsu

#1 Май 15, 2014 14:25:24

Aris_P@
От:
Зарегистрирован: 2010-07-24
Сообщения: 46
Репутация: +  2  -
Профиль   Отправить e-mail  

Периодическое считывание данных с COM порта с помощью signal?

тут похожая тема была http://python.su/forum/topic/22485/?page=2



Офлайн

#2 Май 15, 2014 15:04:05

JOHN_16
От: Россия, Петропавловск-Камчатск
Зарегистрирован: 2010-03-22
Сообщения: 3292
Репутация: +  221  -
Профиль   Отправить e-mail  

Периодическое считывание данных с COM порта с помощью signal?

нет нет. О чем вообще речь?
Блин. Ребят. Вы что то путаете. Я вот лично работал и работаю с 5+ разными COM устройствами, как с обратной связью так и нет. И сейчас пока я пишу это сообщение есть некий компьютер, который стоит где то, в котором python программа, которая работает с COM (RS232) устройством которая считывает раз в 10 (десять) минут значение с прибора (температура и давление) и , к слову, рядом устройство которое считывает 50 значений за секунду (особое давление). Плюс к тому же есть другие приборы которые так же успешно работают. Например мои GPS антенны, хоть 1 раз в час, хоть 1 раз в секунду. Их работоспособность не зависит от чего либо, кроме как аппаратных возможностей.
Так вот, к чему я, в первую очередь нужно понимать в чем перво причина проблемы, к GUI я думаю, это относится на 0%. А насколько хороша/умна ваша железка вы уверенны? м.б. у нее аппаратный сбой после каждого замера, связанный с нехваткой питания или еще что.

Я думаю что проблема не так где вы ищите. Напишите мне в персональные сообщения ваши контакты, я постараюсь помочь разобраться.



_________________________________________________________________________________
полезный блог о python john16blog.blogspot.com

Офлайн

#3 Май 16, 2014 15:34:55

romario82
Зарегистрирован: 2013-04-10
Сообщения: 56
Репутация: +  2  -
Профиль   Отправить e-mail  

Периодическое считывание данных с COM порта с помощью signal?

Прогу изменил:

import serial
import os
from tkinter import *
def send (event):
        dat1 = str(dat.get())
        print (dat1)
        ser = serial.Serial('COM1', 9600)
        data = (bytes(dat1, encoding='ascii'))
        ser.write (data)
def temp ():
        ser = serial.Serial('COM1', 9600)
        s=str(ser.readline())
        s=s[2:5]
        t = s
        lab1['text'] = t
        lab1.after(900, temp)
        #return s
root = Tk()
t = StringVar()
#t = temp()
dat = StringVar()
lab1 = Label(root, font="Arial 22",)
#lab1['text'] = temp()
lab2 = Label(root, text = "Температура", font="Arial 18",)
but = Button(root, text="SEND", width=8, height=5)
ent = Entry(root,textvariable = dat, width=20, bd=3)
lab1.grid(row=0, column=0)
lab2.grid(row=1, column=0)
but.grid(row=0, column=1)
ent.grid(row=1, column=1)
lab1.after(250, temp)
but.bind("<Button-1>", send)
ent["textvariable"] = dat  
root.title("Terminal")
root.geometry('300x200')
root.maxsize(300, 200)
lab1.after_idle(temp)
root.mainloop()
Порт не закрывается и идёт постоянное считывание, но выводится пустая форма, виджеты не прогужаются?

Офлайн

#4 Май 17, 2014 07:31:41

JOHN_16
От: Россия, Петропавловск-Камчатск
Зарегистрирован: 2010-03-22
Сообщения: 3292
Репутация: +  221  -
Профиль   Отправить e-mail  

Периодическое считывание данных с COM порта с помощью signal?

romario82
вы впустую тратите ваше же время, решая на форуме вопросы типа 2+2. Вставьте после считывания нужного значения print и смотрите. Если есть ваши значения, то дело в том как вы их выводите в ГУИ, если нет - то проблема в другом.



_________________________________________________________________________________
полезный блог о python john16blog.blogspot.com

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version