我想从RS485串行端口获取设备数据
使用RS485到USB转换器。
我在Windows和Linux上使用相同的代码。
我可以在windows上获取数据,但在Linux上无法获取任何数据。
为什么。。。?我用同样的代码。。。
只有不同的Windows端口是“COM7”,
Linux端口是'/dev/ttyUSB0'
这是我的代码:# -*- coding: UTF-8 -*-
import serial
import binascii
import time
ser = serial.Serial()
def initSerial():
global ser
ser.baudrate = 9600
#ser.port = '/dev/ttyUSB0'
ser.port = 'COM7'
#ser.timeout =0
ser.stopbits = serial.STOPBITS_ONE
ser.bytesize = 8
ser.parity = serial.PARITY_NONE
ser.rtscts = 0
def main():
initSerial()
global ser
ser.open()
while True:
mHex = ser.read()
if len(mHex)!= 0:
print("get",binascii.hexlify(bytearray(mHex)))
time.sleep(0.1)
if __name__ == "__main__":
main()
windows可以获取如下数据:('get', '01')
('get', 'ab')
('get', 'ba')
('get', '01')
('get', '01')