i have an array of 16*16 of fixed point hexadecimal and i want to store it in coe file as 1D values
1 view (last 30 days)
Show older comments
0a9eb 06666 03c3c 06666
03c3c 0d8df 06666 06666
0a9eb 0a9eb 0d8df 03c3c
03c3c 03c3c 0a9eb 06666
1 Comment
Walter Roberson
on 23 Nov 2019
Is this a cell array of character vectors, such as
{'0a9eb' '06666' '03c3c' '06666'}
Are the values intended as uint16 ?
Answers (1)
Walter Roberson
on 23 Nov 2019
Assuming a cell array of character vectors, you can
cellfun(@dec2hex, YourCellArray)
and post process that however is suitable for your situation.
2 Comments
Walter Roberson
on 23 Nov 2019
%reference: https://www.xilinx.com/support/documentation/sw_manuals/xilinx11/cgn_r_coe_file_syntax.htm
fid = fopen('YourOutput.coe', 'w');
fprintf(fid, 'memory_initialization_radix=16;\n');
fprintf(fid, 'memory_initialization_vector=\n');
for row = 1 : size(YourCellArray,1)
for col = 1 : size(YourCellArray,2)-1
fprintf(fid, '%s ', YourCellArray({row, col}));
end
if row == size(YourCellArray,1)
fprintf(fid, '%s;\n', YourCellArray{row,end});
else
fprintf(fid, '%s\n', YourCellArray{row,end});
end
end
fclose(fid);
See Also
Categories
Find more on Standard File Formats in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!