波形转换为泰克DPO3000范围
问题描述:
我试图通过发送这些这些命令检索从DPO3034示波器数据:波形转换为泰克DPO3000范围
DATA:SOURCE CH1
DATA:ENCDG ASC
DATA:START
CURVE?
我得到98, 98, 98, 97, 97, 98, 98,...
我怎样才能将这些格式的ASCII值电压?
我也试着检索那些二进制格式
DATA:SOURCE CH1
DATA:ENCDG RIBINARY
DATA:START
CURVE?
我得到#520000a b a b b a b c b c a b a a a b^b b a b a b....
数据我怎么能转换这些适当的数据点?
答
您使用CURVE?
读取这些值是有增益和把他们变成(通常)伏偏移数字值。 你应该也看过这些值:
double YZero = double.Parse(io.Query("WFMO:YZE?"));
double YMult = double.Parse(io.Query("WFMO:YMU?"));
double YOff = double.Parse(io.Query("WFMO:YOF?"));
然后你应该从每个值rawValue
计算阵列中的实际电压从CURVE?
得到:
double voltValue = YZero - YOff * YMult + (YMult * double.Parse(rawValue));
同样适用于二进制数据,只是解析它转换为int16(取决于每个数字的位长)
PS 我相信你的手册不是最新的,我建议从Tektonix网站下载这些手册。