Full examples of using pySerial package [closed]
Blog post Serial RS232 connections in Python
import timeimport serial# configure the serial connections (the parameters differs on the device you are connecting to)ser = serial.Serial( port='/dev/ttyUSB1', baudrate=9600, parity=serial.PARITY_ODD, stopbits=serial.STOPBITS_TWO, bytesize=serial.SEVENBITS)ser.isOpen()print 'Enter your commands below.\r\nInsert "exit" to leave the application.'input=1while 1 : # get keyboard input input = raw_input(">> ") # Python 3 users # input = input(">> ") if input == 'exit': ser.close() exit() else: # send the character to the device # (note that I happend a \r\n carriage return and line feed to the characters - this is requested by my device) ser.write(input + '\r\n') out = '' # let's wait one second before reading output (let's give device time to answer) time.sleep(1) while ser.inWaiting() > 0: out += ser.read(1) if out != '': print ">>" + out
import serialser = serial.Serial(0) # open first serial portprint ser.portstr # check which port was really usedser.write("hello") # write a stringser.close() # close port
use https://pythonhosted.org/pyserial/ for more examples
#!/usr/bin/pythonimport serial, time#initialization and open the port#possible timeout values:# 1. None: wait forever, block call# 2. 0: non-blocking mode, return immediately# 3. x, x is bigger than 0, float allowed, timeout block callser = serial.Serial()#ser.port = "/dev/ttyUSB0"ser.port = "/dev/ttyUSB7"#ser.port = "/dev/ttyS2"ser.baudrate = 9600ser.bytesize = serial.EIGHTBITS #number of bits per bytesser.parity = serial.PARITY_NONE #set parity check: no parityser.stopbits = serial.STOPBITS_ONE #number of stop bits#ser.timeout = None #block readser.timeout = 1 #non-block read#ser.timeout = 2 #timeout block readser.xonxoff = False #disable software flow controlser.rtscts = False #disable hardware (RTS/CTS) flow controlser.dsrdtr = False #disable hardware (DSR/DTR) flow controlser.writeTimeout = 2 #timeout for writetry: ser.open()except Exception, e: print "error open serial port: " + str(e) exit()if ser.isOpen(): try: ser.flushInput() #flush input buffer, discarding all its contents ser.flushOutput()#flush output buffer, aborting current output #and discard all that is in buffer #write data ser.write("AT+CSQ") print("write data: AT+CSQ") time.sleep(0.5) #give the serial port sometime to receive the data numOfLines = 0 while True: response = ser.readline() print("read data: " + response) numOfLines = numOfLines + 1 if (numOfLines >= 5): break ser.close() except Exception, e1: print "error communicating...: " + str(e1)else: print "cannot open serial port "