gpt4 book ai didi

python-3.x - PYVISA:如何传输二进制 block 数据,以便图片正确格式化并保存到我的电脑上?

转载 作者:行者123 更新时间:2023-12-02 20:59:40 26 4
gpt4 key购买 nike

我正在尝试将屏幕截图从 Rhode & Schwarz - FSV 信号分析仪传输到我的 PC。

如何传输二进制 block 数据,以便将仪器中的图片正确保存到我的 PC 上?我的代码如下。文件已保存到我的桌面,但我的计算机抛出错误并且无法打开,因为该文件格式不正确。

import visa
rm = visa.ResourceManager()
inst = rm.open_resource('TCPIP0::178.168.48.31::inst0::INSTR')

inst.write("mmem:name 'C:\eswScreen.wmf\'")
inst.write("MMEM:DATA? 'C:\eswScreen.wmf\'")
img = inst.read_raw()

target = open(r"C:\Users\myName\Desktop\screenShot.wmf", 'wb')
target.write(img)
target.close()

file shows up on Desktop

Error when trying to open file on Desktop

我确认屏幕截图已保存在仪器上。还用另一台仪器验证了 SCPI 语法是否正确。所以这一定是 binblock 数据的传输方式。非常感谢任何建议。

最佳答案

import pyvisa
rm = pyvisa.ResourceManager()
inst = rm.open_resource('TCPIP0::178.168.48.31::inst0::INSTR')

inst.values_format.is_binary = True
inst.values_format.datatype = 'B'
inst.values_format.is_big_endian = False
inst.values_format.container = bytearray

inst.write("mmem:name 'C:\eswScreen.wmf\'")
img = inst.query_values("MMEM:DATA? 'C:\eswScreen.wmf\'")

target = open(r"C:\Users\user\Desktop\screenShot.wmf", 'wb')
target.write(img)
target.close()

这对我有用。

关于python-3.x - PYVISA:如何传输二进制 block 数据,以便图片正确格式化并保存到我的电脑上?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42681731/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com