matlab使用的版本:matlab 2018A
txt文件内的数据格式:
00 00 00 00 00
00 00 00 00 00
00 00 00 00 00
等多维数组。
matlab代码:
clc;clear;close all;a
temp = textread(\'a.txt\',\'%s\');
n=length(temp(:));%计算数组的长度
a=cell2mat(temp);
b = hex2dec(a);
d3 = reshape(b,3,11520);
d12 = reshape(b,12,2880);
%------------ 产生一个 24 bit 的mif 文件
fid=fopen(\'dsc_data_24bit.mif\',\'w\');%打开待写入的.mif文件
fprintf(fid,\'WIDTH=24;\n\');%写入存储位宽24位
fprintf(fid,\'DEPTH=8192;\n\');%写入存储深度8192
fprintf(fid,\'ADDRESS_RADIX=UNS;\n\');%写入地址类型为无符号整型
fprintf(fid,\'DATA_RADIX=HEX;\n\');%写入数据类型为16进制
fprintf(fid,\'CONTENT BEGIN\n\');%起始内容
for i = 0:8191
fprintf(fid,\'\t%d\t:\',i);
fprintf(fid,\'\t%x\',d3(1,i+1));
fprintf(fid,\'%x\',d3(2,i+1));
fprintf(fid,\'%x\',d3(3,i+1));
fprintf(fid,\';\n\');
end
fprintf(fid,\'END;\n\');
fclose(fid);%关闭文件
mif的文件就是一个24bit数据宽度的数据。