通过matlab处理Tek示波器导出的.tss波形文件

通过matlab处理Tek示波器导出的.tss波形文件

Author: PNJIE

Date: 2026/01/02

码字不易,转载请注明出处

泰科示波器导出的.tss文件包含了当前示波器页面所有的波形,设置以及截图,可以通过泰科自己的Tekscope软件直接打开,非常方便。不过设计到波形后处理就有点麻烦了,中文社区对这方面的交流几乎没有,最近捣鼓了一阵子,通过Matlab解码.tss文件进行后处理,因此无偿分享一下。

.tss 文件可以看作一个压缩包文件,可以通过所有解压文件打开,也可以通过matlab的解压指令打开

matlab 复制代码
% 定义文件名和路径
filename = 'demo.tss';
outputFolder = pwd; % 当前路径
% 解压缩文件
unzip(filename, outputFolder);
disp('解压缩完成');

解压完成后会出现若干个.wfm文件即波形文件,以及一个.set设置文件和一个图片png

这里主要处理.wfm文件,直接用txt打开.wfm是乱码,需要通过泰科自带的解码软件将CSV文件转换成csv文件,这里参考了这篇帖子如何将TEK示波器记录的.WFM文件转为.CSV文件-CSDN博客

使用Tek官方插件:TEKTRONIX WINDOWS OSCILLOSCOPE WFM CONVERTER | Tektronix

下载好插件后,在对应wfm路径下启用cmd指令,输入:

cmd 复制代码
ConvertTekWfm [ /? | InputFile [ /TXT | /CSV | /MCAD | /MLAB ] [OutputFile] ]

例如:

cmd 复制代码
ConvertTekWfm Tek001.wfm /CSV Tek001.csv

意思是将Tek001.wfm转化成 Tek001.csv,如果直接

cmd 复制代码
ConvertTekWfm Tek001.wfm /CSV

则默认名字保持一致,格式转化为CSV。因为需要Matlab统一处理,这里给出通过Matlab调用cmd指令进行解码的例程:

matlab 复制代码
% 设置ConvertTekWfm.exe的完整路径
exePath = 'C:\path\to\ConvertTekWfm.exe';  % 替换为实际exe路径
% 设置包含wfm文件的文件夹路径
wfmFolderPath = 'D:\path\to\wfm\files';    % 替换为实际wfm文件夹路径
% 设置要转换的wfm文件名
wfmFileName = 'Tek001.wfm';
% 构建完整的wfm文件路径
fullWfmPath = fullfile(wfmFolderPath, wfmFileName);
% 构建完整的命令
command = [exePathQuoted, ' ', wfmPathQuoted, ' /CSV'];
% 显示执行的命令
fprintf('执行命令: %s\n', command);
% 执行命令
[status, cmdout] = system(command);
% 检查命令执行状态
if status == 0
    fprintf('转换成功!\n');
    fprintf('命令输出:\n%s\n', cmdout);
else
    fprintf('转换失败,错误代码: %d\n', status);
    fprintf('错误信息:\n%s\n', cmdout);
end
失败,错误代码: %d\n', status);
    fprintf('错误信息:\n%s\n', cmdout);
end

这里的路径也可以设置为相对路径,这里不展开。转化完成后,后续的操作就是枯燥的数据处理了。

相关推荐
Evand J7 小时前
【2026课题推荐】基于累计概率方法匹配轨迹的飞行目标轨迹定位,附MATLAB代码的演示效果
开发语言·matlab·目标跟踪·定位·轨迹匹配
Sumerking7 小时前
DMM 高精度采样部分
单片机·mcu
点灯小铭7 小时前
基于单片机的蔬菜大棚温湿度远程测报系统设计
单片机·嵌入式硬件·毕业设计·课程设计·期末大作业
v先v关v住v获v取7 小时前
自动搬运车结构设计9张cad+三维图+设计说明书
科技·单片机·51单片机
别了,李亚普诺夫8 小时前
ADC-学习笔记
笔记·stm32·学习
Zeku8 小时前
20251231 - Linux 字符设备驱动开发笔记:分层设计
stm32·freertos·linux驱动开发·linux应用开发
一路往蓝-Anbo9 小时前
STM32单线串口通讯实战(二):链路层核心 —— DMA环形缓冲与收发切换时序
c语言·开发语言·stm32·单片机·嵌入式硬件·物联网
Zeku9 小时前
20251230 - 为什么Linux驱动开发中必须要用到ioremap来访问硬件?
stm32·freertos·linux驱动开发·linux应用开发
悠哉悠哉愿意10 小时前
【嵌入式学习笔记】UART
笔记·单片机·嵌入式硬件·学习