def open_serial(): global logger, ser, connected init_serial() # init serial port ''' open serial port with timeout ''' serialconfig = comportconfig_support.Readconfig() print(serialconfig) ser = serial.Serial(port=serialconfig['comport'], baudrate=serialconfig['baudrate'], parity=serial.PARITY_NONE, stopbits=serial.STOPBITS_ONE, bytesize=serial.EIGHTBITS, timeout=0.1) connected = True # logger.info('serial port open ' + serialconfig['comport'] + ' ' + serialconfig['baudrate'] ) print('serial port open ' + serialconfig['comport'] + ' ' + serialconfig['baudrate']) run_once() # run some commands at the start of communication to get version, labels, etc from power module
def do_connect_serial(): global t print('gui1_support.do_connect') if rbha.isportopen(): # close comport rbha.close_serial() w.txt_connect_indicator.configure(background="white") w.btn_connect.configure(text='''Connect''') updatetitle('Opteq Rosbee GUI V1') else: # open com port rbha.open_serial() serialconfig = comportconfig_support.Readconfig() w.txt_connect_indicator.configure(background="green") w.btn_connect.configure(text='''Diconnect''') connectionstr = rbha.get_connection_info() print('connection info _support' ,connectionstr) updatetitle("Opteq Rosbee GUI V1-->" + serialconfig['baudrate'] + ',' + serialconfig['comport']) sys.stdout.flush()
def __init__(self, master=None): global serialconfig _bgcolor = 'wheat' # X11 color: #f5deb3 _fgcolor = '#000000' # X11 color: 'black' _compcolor = '#d9d9d9' # X11 color: 'gray85' _ana1color = '#d9d9d9' # X11 color: 'gray85' _ana2color = '#d9d9d9' # X11 color: 'gray85' self.style = ttk.Style() if sys.platform == "win32": self.style.theme_use('winnative') self.style.configure('.', background=_bgcolor) self.style.configure('.', foreground=_fgcolor) self.style.configure('.', font="TkDefaultFont") self.style.map('.', background=[('selected', _compcolor), ('active', _ana2color)]) master.configure(background="#d0d0d0") master.configure(highlightbackground="#d9d9d9") master.configure(highlightcolor="black") self.btn_Save = Button(master) self.btn_Save.place(relx=0.34, rely=0.74, height=24, width=87) self.btn_Save.configure(activebackground="#c0c0c0") self.btn_Save.configure(activeforeground="#000000") self.btn_Save.configure(background="#d0d0d0") # self.btn_Save.configure(command=comportconfig_support.Close) self.btn_Save.configure(command=comportconfig_support.close) self.btn_Save.configure(disabledforeground="#a3a3a3") self.btn_Save.configure(foreground="#000000") self.btn_Save.configure(highlightbackground="#d0d0d0") self.btn_Save.configure(highlightcolor="black") self.btn_Save.configure(pady="0") self.btn_Save.configure(text='''Save&Close''') self.btn_Cancel = Button(master) self.btn_Cancel.place(relx=0.68, rely=0.74, height=24, width=87) self.btn_Cancel.configure(activebackground="#d0d0d0") self.btn_Cancel.configure(activeforeground="#000000") self.btn_Cancel.configure(background="#d0d0d0") self.btn_Cancel.configure(command=comportconfig_support.cancel) self.btn_Cancel.configure(disabledforeground="#a3a3a3") self.btn_Cancel.configure(foreground="#000000") self.btn_Cancel.configure(highlightbackground="#d0d0d0") self.btn_Cancel.configure(highlightcolor="black") self.btn_Cancel.configure(pady="0") self.btn_Cancel.configure(text='''Cancel''') self.Labelframe1 = LabelFrame(master) self.Labelframe1.place(relx=0.1, rely=0.06, relheight=0.58, relwidth=0.86) self.Labelframe1.configure(relief=GROOVE) self.Labelframe1.configure(foreground="black") self.Labelframe1.configure(text='''Comport settings''') self.Labelframe1.configure(background="#d0d0d0") self.Labelframe1.configure(highlightbackground="#d9d9d9") self.Labelframe1.configure(highlightcolor="black") self.Labelframe1.configure(width=255) self.Label1 = Label(self.Labelframe1) self.Label1.place(relx=0.04, rely=0.21, height=21, width=54) self.Label1.configure(activebackground="#f9f9f9") self.Label1.configure(activeforeground="black") self.Label1.configure(background="#d0d0d0") self.Label1.configure(disabledforeground="#a3a3a3") self.Label1.configure(foreground="#000000") self.Label1.configure(highlightbackground="#d9d9d9") self.Label1.configure(highlightcolor="black") self.Label1.configure(text='''Comport''') self.Label2 = Label(self.Labelframe1) self.Label2.place(relx=0.04, rely=0.53, height=21, width=53) self.Label2.configure(activebackground="#f9f9f9") self.Label2.configure(activeforeground="black") self.Label2.configure(background="#d0d0d0") self.Label2.configure(disabledforeground="#a3a3a3") self.Label2.configure(foreground="#000000") self.Label2.configure(highlightbackground="#d9d9d9") self.Label2.configure(highlightcolor="black") self.Label2.configure(text='''Baudrate''') comportconfig_support.Readconfig() baudrateindex = self.find_index( comportconfig_support.serialconfig['baudrate'], comportconfig_support.cbaudrates) # check if baudrate in list if baudrateindex < 0: baudrateindex = 0 # serial_portlist = serial.tools.list_ports.comports() # serial_ports = comportindex = self.find_index( comportconfig_support.serialconfig['comport'], listports.serial_ports()) # check if baudrate in list if comportindex < 0: print(' Port not found: ', serialconfig['comport']) comportindex = 0 print('Config: ', comportconfig_support.serialconfig) self.tc_baudrate = StringVar() self.tc_baudrate = ttk.Combobox(self.Labelframe1, textvariable=self.tc_baudrate) self.tc_baudrate.place(relx=0.35, rely=0.21, relheight=0.35, relwidth=0.56) self.tc_baudrate['values'] = comportconfig_support.cbaudrates self.tc_baudrate.current(baudrateindex) self.tc_baudrate.configure(takefocus="") self.tc_baudrate.bind('<<ComboboxSelected>>', self.set_baudrate) self.tc_comports = StringVar() self.tc_comport = ttk.Combobox(self.Labelframe1, textvariable=self.tc_comports) self.tc_comport.place(relx=0.35, rely=0.53, relheight=0.35, relwidth=0.56) self.tc_comport['values'] = listports.serial_ports() self.tc_comport.current(comportindex) self.tc_comport.bind('<<ComboboxSelected>>', self.set_comport) self.tc_comport.configure(takefocus="") print('baudrate: ', self.tc_baudrate['values']) print('ports: ', listports.serial_ports())