我已对设备(Trinket M0 3V)进行了编程,以通过虚拟COM端口与Python接口。当我在串行监视器中测试它时,它可以正常工作,但是当我切换到PySerial时,会遇到问题。具体来说,我执行以下操作:
import serial
ser = serial.Serial(physicalAddress, timeout = 5)
command = 'bogus\r'.encode()
ser.write(command)
response = ser.readline()
我得到的
response
只是我在其前面的行中编写的命令。但是,当我再次执行ser.readline()
时,我确实得到了所需的响应。因为当我尝试在串行监视器上进行通讯时一切正常,这表明我在使用PySerial时缺少某些东西,但是据我所知。 最佳答案
您是否找到https://www.thecodingforums.com/threads/pyserial-unexpected-local-echo.711453/的信息?
它必须链接到处理回波的方式,并且该链接提供了一些步骤以查看回波是本地的还是远程的,以及更多...
我没有发现有关PySerial完成的本地回声的任何信息!
但是在串行监视器(哪一个?)上,似乎可以对其进行配置,因此您没有看到它的原因! (https://community.platformio.org/t/solved-enable-just-local-echo-in-serial-monitor/539)
关于python - PySerial readline()首先返回命令,然后返回,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/54392262/