python pyserial如何在某个特定值之后存储数据
我正在使用python pyserial包通过计算机的串行端口读取数据。源代码是一块FPGA板 源发送24个字节,然后有一个空闲时间。这个过程会重复。所以要找出24次传输的第一个字节,有一个0字节,它是一种标记字节。所以当我得到这个标记字节时,我想开始记录下24个字节,并在下24个字节中实时重复这个。我可以识别第0个字节,但仍停留在下一步 您可以在下面看到当前代码 提前谢谢python pyserial如何在某个特定值之后存储数据,python,real-time,pyserial,Python,Real Time,Pyserial,我正在使用python pyserial包通过计算机的串行端口读取数据。源代码是一块FPGA板 源发送24个字节,然后有一个空闲时间。这个过程会重复。所以要找出24次传输的第一个字节,有一个0字节,它是一种标记字节。所以当我得到这个标记字节时,我想开始记录下24个字节,并在下24个字节中实时重复这个。我可以识别第0个字节,但仍停留在下一步 您可以在下面看到当前代码 提前谢谢 import serial port = serial.Serial('/dev/ttyUSB1', 115200) fi
import serial
port = serial.Serial('/dev/ttyUSB1', 115200)
file = open("my_file.txt","a")
i=0
j=0
while True:
i=i+1
print " i --> % d " % (i)
raw_data = ord(port.read())
if raw_data==127:
j=j+1
print('-----',j,'------------------------------')
else :
print(raw_data,a)
file.write(str(raw_data) + "\n")
file.close()
问题:…如何在某个特定值之后存储数据
将24个字节聚合到列表中
,例如:
# Get in Sync with Byte == 127
while True:
raw_data = ord(port.read())
if raw_data == 127:
break
record = []
while True:
raw_data = ord(port.read())
if raw_data != 127:
record.append(raw_data)
else:
# Write Record
print('record[{}]:{}'.format(len(record), record))
# Empty Record List
record = []
Python»3.6.2文档:
用Python测试:3.4.2没有看到如何识别第0个字节,
如果原始数据==127:
不是零?127是指示符或第0位告诉hte usefull 24字节在这之后。“1字节指示器+24字节”
Lists may be constructed in several ways:
Using a pair of square brackets to denote the empty list: []
Using square brackets, separating items with commas: [a], [a, b, c]
Using a list comprehension: [x for x in iterable]
Using the type constructor: list() or list(iterable)