MATLAB: как сгенерировать таблицу синуса |
|
Добавил(а) microsin
|
Процесс по шагам на примере MatLab Version 6.5.0.180913a Release 13.
1. File -> New -> M-file. Откроется новое окно редактора кода программы MatLab.
2. Скопипастите в окно редактора код:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
function GenerateSinusTable (size)
% Генерирует таблицу синуса в файле sinus.c
% Пример вызова:
% GenerateSinusTable(256)
stream_c = fopen('sinus.c' ,'wt');
fprintf (stream_c , '__flash char SINUS_ML [%i] = \n{\n', size);
for k=0:size-1
if (0==bitand(k, 7))
fprintf(stream_c , ' ');
end;
sinus = round(127 + 124*sin(2*pi*k/size));
fprintf(stream_c , '%i', sinus);
if (not((k+1)==size))
fprintf(stream_c , ',');
end;
if (7==bitand(k, 7))
fprintf(stream_c , '\n');
end;
end
fprintf (stream_c, '};\n');
fclose(stream_c);
% Построение графика полученной таблицы:
x=0:1:size; y=round(127 + 124*sin(2*pi*x/size)); plot (x,y)
|
3. Сохраните наш файл кода под именем GenerateSinusTable.m (важно, чтобы имя файла совпадало с именем функции), запускаем на выполнение в консоли MatLab: >> GenerateSinusTable(128) [нажмите Enter]
После запуска появится окошко с графикой периода синусоиды, и в текущей папке появится сгенерированный файл sinus.c. |