错误来源:合宙Air103与上位机进行python串口通讯。
1,串口发送HEX
直接使用的bytes.fromhex():
import serial
ser = serial.Serial("COM8", 921600, 8, "N", stopbits=1)
Pycmd1 = bytes.fromhex("50 4c 41")
ser.write(Pycmd1) # 指令
ser.close()
详情请见优雅的发送十六进制命令。
2,RST需要单独设置
问题描述:在ser = serial.Serial()函数体中设置RTS电平并不能输出想要的电平。
解决:使用ser对象函数 .serRTS() 单独设置:
import serial
import time
ser = serial.Serial(
port='COM8',
baudrate=921600,
bytesize=serial.EIGHTBITS,
parity=serial.PARITY_NONE,
stopbits=serial.STOPBITS_ONE)
ser.setRTS(False)
Pycmd1 = bytes.fromhex("50 4c 41") # PLA
ser.write(Pycmd1)
print(Pycmd1)
time.sleep(0.5)
ser.close()