Как мне распечатать данные, полученные через последовательный порт?

enter image description here Ниже приведен код Python, который я написал:

import serial,time
#initialization and open the port
ser = serial.Serial()
ser.port = "/dev/ttyUSB0"
ser.baudrate = 1152000
ser.bytesize = serial.EIGHTBITS #number of bits per bytes
ser.parity = serial.PARITY_NONE #set parity check: no parity
ser.stopbits = serial.STOPBITS_TWO #number of stop bits
    #ser.timeout = None          #block read
ser.timeout = 5               #non-block read
    #ser.timeout = 2              #timeout block read
ser.xonxoff = False     #disable software flow control
ser.rtscts = False     #disable hardware (RTS/CTS) flow control
ser.dsrdtr = False       #disable hardware (DSR/DTR) flow control

try: 
    ser.open()

except Exception, e:
    print "error open serial port: " + str(e)
    exit()

if ser.isOpen():
    read_data = ser.read(10)
   # response  = ser.readline()
    print"Data received : " + read_data

else:
   print "Can not open serial port"

После выполнения он показывает, что полученные данные слишком странные для чтения. Снимок экрана с ответом был прикреплен выше, прямо под вопросом.

0
20.01.2016, 07:32
1 ответ

Попробуйте следующие:

sudo apt-get install python-serial

import serial

port = serial.Serial("/dev/ttyUSB0", baudrate=115200, timeout=3.0)

while True:
    port.write("\r\nSay something:")
    rcv = port.read(10)
    port.write("\r\nYou sent:" + repr(rcv))
2
28.01.2020, 02:35

Теги

Похожие вопросы