Python 连接到设备时是否更改pySerial中的波特率?

Python 连接到设备时是否更改pySerial中的波特率?,python,usb,pyserial,lcd,baud-rate,Python,Usb,Pyserial,Lcd,Baud Rate,我正在尝试为一个名为uLCD32 pt的LCD设备编写一个脚本,问题是您需要以9600的波特率连接到它,为了获得更高的波特率,您必须连接到它,发送一个更改波特率命令,然后以新设置的波特率发送新命令。我的lcd显示器在绘制像素时速度非常慢,我知道这是因为波特率,所以他们在连接到设备后有没有改变波特率的方法?这是到目前为止我的代码 import serial import time #Connect to uLCD32-pt with autobaud ser = serial.Serial(

我正在尝试为一个名为uLCD32 pt的LCD设备编写一个脚本,问题是您需要以9600的波特率连接到它,为了获得更高的波特率,您必须连接到它,发送一个更改波特率命令,然后以新设置的波特率发送新命令。我的lcd显示器在绘制像素时速度非常慢,我知道这是因为波特率,所以他们在连接到设备后有没有改变波特率的方法?这是到目前为止我的代码

import serial
import time

#Connect to uLCD32-pt with autobaud
ser = serial.Serial(
    port='/dev/ttyUSB0', 
    baudrate=9600, 
    timeout=1,
    parity=serial.PARITY_NONE,
    stopbits=serial.STOPBITS_ONE,
    bytesize=serial.EIGHTBITS
)
ser.write("U")


while(True):
    #15 x white pixels
    ser.write(chr(0x0050)+chr(0x0000)+chr(0x0001)+chr(0x0000)+chr(0x000A)+chr(0x00FF)+chr(0x00FF))#1
    ser.write(chr(0x0050)+chr(0x0000)+chr(0x0002)+chr(0x0000)+chr(0x000A)+chr(0x00FF)+chr(0x00FF))#2
    ser.write(chr(0x0050)+chr(0x0000)+chr(0x0003)+chr(0x0000)+chr(0x000A)+chr(0x00FF)+chr(0x00FF))#3
    ser.write(chr(0x0050)+chr(0x0000)+chr(0x0004)+chr(0x0000)+chr(0x000A)+chr(0x00FF)+chr(0x00FF))#4
    ser.write(chr(0x0050)+chr(0x0000)+chr(0x0005)+chr(0x0000)+chr(0x000A)+chr(0x00FF)+chr(0x00FF))#5
    ser.write(chr(0x0050)+chr(0x0000)+chr(0x0006)+chr(0x0000)+chr(0x000A)+chr(0x00FF)+chr(0x00FF))#6
    ser.write(chr(0x0050)+chr(0x0000)+chr(0x0007)+chr(0x0000)+chr(0x000A)+chr(0x00FF)+chr(0x00FF))#7
    ser.write(chr(0x0050)+chr(0x0000)+chr(0x0008)+chr(0x0000)+chr(0x000A)+chr(0x00FF)+chr(0x00FF))#8
    ser.write(chr(0x0050)+chr(0x0000)+chr(0x0009)+chr(0x0000)+chr(0x000A)+chr(0x00FF)+chr(0x00FF))#9
    ser.write(chr(0x0050)+chr(0x0000)+chr(0x000A)+chr(0x0000)+chr(0x000A)+chr(0x00FF)+chr(0x00FF))#10
    ser.write(chr(0x0050)+chr(0x0000)+chr(0x000B)+chr(0x0000)+chr(0x000A)+chr(0x00FF)+chr(0x00FF))#11
    ser.write(chr(0x0050)+chr(0x0000)+chr(0x000C)+chr(0x0000)+chr(0x000A)+chr(0x00FF)+chr(0x00FF))#12
    ser.write(chr(0x0050)+chr(0x0000)+chr(0x000D)+chr(0x0000)+chr(0x000A)+chr(0x00FF)+chr(0x00FF))#13
    ser.write(chr(0x0050)+chr(0x0000)+chr(0x000E)+chr(0x0000)+chr(0x000A)+chr(0x00FF)+chr(0x00FF))#14
    ser.write(chr(0x0050)+chr(0x0000)+chr(0x000F)+chr(0x0000)+chr(0x000A)+chr(0x00FF)+chr(0x00FF))#15
    ser.write(chr(0x0050)+chr(0x0000)+chr(0x0010)+chr(0x0000)+chr(0x000A)+chr(0x00FF)+chr(0x00FF))#16
在中,波特率属性的描述表示:

读取或写入当前波特率设置

因此,我希望这条路线能够奏效:

ser.baudrate = 115200

您可以调用
setBaudrate
,执行一些检查,并在端口已打开时重新配置端口

ser.setBaudrate(115200)

我得到一个错误:AttributeError:“Serial”对象没有使用python 3.6.4的属性“setBaudrate”。也许这段代码只与Python 2兼容?这个方法不再有效,因为它被移动到了另一段代码中的一个属性。