esp8266和cp2102 don';不能使用python串行接口

esp8266和cp2102 don';不能使用python串行接口,python,serial-port,esp8266,Python,Serial Port,Esp8266,esp8266和cp2102不工作!为什么? import serial sp="/dev/ttyUSB0" port = serial.Serial(sp) while True: port.write("AT+RST") rcv = port.read(10) print rcv 我按了“AT+RST”[Enter],但之后没有“READY”。打开串行端口时,您没有设置波特率。默认设置可能不适用于ESP8266。请确保在命令末尾包含CRLF(\r\n)字符。我

esp8266和cp2102不工作!为什么?

import serial

sp="/dev/ttyUSB0"

port = serial.Serial(sp)

while True:
    port.write("AT+RST")
    rcv = port.read(10)
    print rcv

我按了“AT+RST”[Enter],但之后没有“READY”。

打开串行端口时,您没有设置波特率。默认设置可能不适用于ESP8266。

请确保在命令末尾包含CRLF(\r\n)字符。我搞砸了一天才弄明白。我得到了命令的本地回显,但由于我从未发送过\r\n,因此无法获得更多数据。以下是我使用pyserial作为Python中的基本终端的工作原理:

导入序列号
导入时间
ser=serial.serial('/dev/tty.usbserial-A8004xaO',115200,超时=2.5)
尽管如此:
cmd=原始输入(“>”);
ser.write(cmd+“\r\n”)
ret=ser.read(len(cmd))#eat echo
睡眠时间(0.2)
while(ser.inWaiting()):
ret=ser.readline().rstrip()

print ret
是否出现错误?以前是否使用串行控制台进行过测试?我的是115200波特。固件:00150900尝试使用3.3 voltyes从控制台(非软件串行)发送。控制台在没有esp8266和tx rx autoself connectedI修改代码的情况下工作正常:
code
port=serial.serial(port=sp、\baudrate=9600、\\奇偶校验=serial.parity\u NONE、\\停止位=serial.stopbits\u ONE、\\字节大小=serial.EIGHTBITS、\超时=5000)
code
ESP8266默认使用115200波特,而不是9600波特。您确定吗?未使用115200,请参阅