16进制 dat matlab_用MATLAB生成DAT文件
用MATLAB生成DAT文件
f1=10;f2=100;fs=400;N=400;
x = linspace(0,N/fs,N);
y1 = sin(2*pi*f1*x);
y2 = sin(2*pi*f2*x);
y=y1+y2;
figure
plot(x,y)
%创建文件sine.dat,可写入
fid=fopen(‘sine.dat’,‘w’);
%将文件头写入文件,将生成的y信号写入到文件,格式四位小数
fprintf(fid,‘1651 4 0 1 0\n’);
fprintf(fid,‘%.4f\n’,y);
%将文件头写入文件,将生成的y信号写入到文件,格式十六进制,负数用补码
fprintf(fid,‘1651 1 0 1 0\n’);
fprintf(fid,‘0x%x\n’, round(y*100) + (y《0)*2^16);
设置两个叠加信号的频率分别为10hz,100hz,采样频率400hz,采样点数400,采样时间1S。
linspace(x1,x2,N)用法:linspace是Matlab中的一个指令,用于产生x1,x2之间的N点行矢量。其中x1、x2、N分别为起始值、终止值、元素个数。若缺省N,默认点数为100。在matlab的命令窗口下输入help linspace或者doc linspace可以获得该函数的帮助信息。
y1,y2为频率不同的两个正弦信号,y=y1+y2为叠加后信号。Plot画图显示信号y。

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐


所有评论(0)