How to use unsupported function when using Coder

조회 수: 1 (최근 30일)
BERKAY
BERKAY 2023년 5월 17일
답변: Kanishk 2024년 8월 9일
Hi,
I wanna use fdesign.audioweighting('WT','ITUT041',..) and design() function. However both of them are not supported by Matlab coder.
How can i create C .dll with these function in 2023a?

답변 (1개)

Kanishk
Kanishk 2024년 8월 9일
Hi @BERKAY,
Yes, ‘fdesign.audioweightingis not supported by MATLAB coder for code generation. But you can follow a hybrid approach. This involves designing the filter in MATLAB, extracting the filter coefficients, and then using these coefficients in a MATLAB function that can be converted to C code.
d = fdesign.audioweighting('WT', 'ITUT041');
Hd = design(d, 'butter');
[b, a] = tf(Hd);
save('filterCoefficients.mat', 'b', 'a');
You can use these saved variables with ‘filter’ function which is supported by MATLAB coder for code generation.
filter(b, a, x);
To load variables from MAT file during compile time in MATLAB Coder see coder.load: https://www.mathworks.com/help/simulink/slref/coder.load.html
Also to learn more about ‘filter’ function you can refer: https://www.mathworks.com/help/releases/R2024a/matlab/ref/filter.html

카테고리

Help CenterFile Exchange에서 MATLAB Coder에 대해 자세히 알아보기

제품


릴리스

R2023a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by