def find_available_port(self, port_list): ''' Look for the ports in the given port_list among the connected serial ports. ''' for available_port in list_ports.serial_ports(): for port_to_try in port_list: if port_to_try == available_port: return available_port return None
def readPorts(self): self.infoLabel.setText('Now reading ports') ser.close() self.openCloseButton.setText('Open') self.portsList.clear() ports = serial_ports() # ports.remove('COM1') for port in range(len(ports)): self.portsList.addItem(str(ports[port]))
def user_dmx(): #get dmx devices from user input available_ports = serial_ports() if len(available_ports ) > 0: pprint([ (i, available_ports[i]) for i in range(len(available_ports))] ) which_port = int(raw_input('select port number: ')) dmx_port = dmx.DMXConnection(available_ports[which_port]) else: print("no_dmx") dmx_port = {} return(dmx_port)
def user_serial(): #get dmx devices from user input available_ports = serial_ports() if len(available_ports) > 0: pprint([(i, available_ports[i]) for i in range(len(available_ports))]) which_port = int(raw_input('select serial port number: ')) dmx_port = serial.Serial(available_ports[which_port], 115200, parity=serial.PARITY_NONE, stopbits=serial.STOPBITS_ONE, bytesize=serial.EIGHTBITS, timeout=0.1) else: print("no_dmx") dmx_port = {} return (dmx_port)
if __name__ == '__main__': reading_thread = threading.Thread(target=reading, daemon=True) # reading_event = reading_thread.Event() app = QtWidgets.QApplication(sys.argv) dialog = QtWidgets.QDialog() prog = MyFirstGuiProgram(dialog) # prog.infoLabel.setText(prog.parityList.currentText()) ports = serial_ports() # ports.remove('COM1') # prog.infoLabel.setText('Ports list:' + str(ports)) ser = serial.Serial(baudrate = 115200, parity = serial.PARITY_NONE, xonxoff = False, dsrdtr = False, rtscts = False, stopbits = serial.STOPBITS_ONE, timeout = 1.0, bytesize = serial.EIGHTBITS) # sio = io.TextIOWrapper(io.BufferedRWPair(ser, ser), newline='\n') for port in range(len(ports)): prog.portsList.addItem(str(ports[port])) dialog.show() sys.exit(app.exec_()) ser.close() # close port
import serial import list_ports running = True com = list_ports.serial_ports() print(com) 'input port number' port = input("Please enter port number(e.g COM8): ").upper() 'input bound rate' bound_rate = int(input("Please enter bound rate(9600, 19200, 57600): ")) 'input parity' print("1. PARITY_NONE") print("2. PARITY_EVEN") print("3. PARITY_ODD") num = int(input("Please select parity: ")) if num == 1: str = serial.PARITY_NONE elif num == 2: str = serial.PARITY_EVEN elif num == 3: str = serial.PARITY_ODD else: str = serial.PARITY_NONE ser = serial.Serial(port, bound_rate, parity=str, timeout=1) while running: cmd = input("Please enter the command(or enter '0' to quit): ") if cmd == "0": break ser.write(cmd.encode()) line = 0 while True: res = ser.readline()
def refresh_ports( self, event): # wxGlade: BreathRateMonitorWindow.<event_handler> ports = serial_ports() self.port_choice.Clear() self.port_choice.Append(ports)