我一直在使用 python candas 将 blf 转换为 csv,但是花费的时间太长。谁能建议我最好的解决方案。
将 candas 导入为 cd
db = cd.load_dbc(“dbc_folder”)
log = cd.from_file("my_file")
打印(日志[“AVGcell温度”])
我不熟悉 candas,但对于这个简单的用例,您可以用几行 python-can 进行转换:
import can
with open('trace.blf', 'rb') as f_in:
log_in = can.io.BLFReader(f_in)
with open("trace.csv", 'w') as f_out:
log_out = can.io.CSVWriter(f_out)
for msg in log_in:
log_out.on_message_received(msg)
log_out.stop()
请注意,数据列是 Base64 编码的(请参阅doc)
如果您发现任何性能改进,请告诉我们!