السلام عليكم ورحمة الله وبركاته
لدي كود بلغة الماتلاب لم افهمه ارجو المساعدة في شرح هذا البرنامج وشكرا
[SIZE=4][COLOR=forestgreen][FONT="]% dsp filter coefficent calculations[/font][/color][/size][SIZE=4]
[/size][SIZE=4][COLOR=black][FONT="]clc;[/font][/color][/size][SIZE=4]
[/size][SIZE=4][COLOR=black][FONT="]ntaps = 350; [/font][/color][/size][SIZE=4][COLOR=forestgreen][FONT="]% adjust for desired passband/stopband performance[/font][/color][/size][SIZE=4]
[/size][SIZE=4][COLOR=black][FONT="]fs = 48000;[/font][/color][/size][SIZE=4]
[/size][SIZE=4][COLOR=black][FONT="]fxlp = 130; [/font][/color][/size][SIZE=4][COLOR=forestgreen][FONT="]% lowpass transition freq[/font][/color][/size][SIZE=4]
[/size][SIZE=4][COLOR=black][FONT="]fxhp = 100; [/font][/color][/size][SIZE=4][COLOR=forestgreen][FONT="]% highpass transition freq[/font][/color][/size][SIZE=4]
[/size][SIZE=4][COLOR=black][FONT="]df = 60;[/font][/color][/size][SIZE=4]
[/size][SIZE=4][COLOR=black][FONT="]blp = firpm(ntaps, [ 0 (fxlp-df)/(fs/2) (fxlp+df)/(fs/2) .5]*2, [ 1 1 0 0]);[/font][/color][/size][SIZE=4]
[/size][SIZE=4][COLOR=black][FONT="]bhp = firpm(ntaps, [ 0 (fxhp-df)/(fs/2) (fxhp+df)/(fs/2) .5]*2, [ 0 0 1 1]);[/font][/color][/size][SIZE=4]
[/size][SIZE=4][COLOR=black][FONT="][hlp wlp] = freqz(blp, 1, 2048);[/font][/color][/size][SIZE=4]
[/size][SIZE=4][COLOR=black][FONT="][hhp whp] = freqz(bhp, 1, 2048);[/font][/color][/size][SIZE=4]
[/size][SIZE=4][COLOR=black][FONT="]plot(wlp/(2*pi)*(fs/2),db(abs(hlp)), whp/(2*pi)*(fs/2),db(abs(hhp)));[/font][/color][/size][SIZE=4]
[/size][SIZE=4][COLOR=black][FONT="]title([/font][/color][/size][SIZE=4][COLOR=#A020F0][FONT="]'FIR Filter Frequency Responses'[/font][/color][/size][SIZE=4][COLOR=black][FONT="]);[/font][/color][/size][SIZE=4]
[/size][SIZE=4][COLOR=black][FONT="]xlabel([/font][/color][/size][SIZE=4][COLOR=#A020F0][FONT="]'Frequency (Hz)'[/font][/color][/size][SIZE=4][COLOR=black][FONT="]);[/font][/color][/size][SIZE=4]
[/size][SIZE=4][COLOR=black][FONT="]ylabel([/font][/color][/size][SIZE=4][COLOR=#A020F0][FONT="]'Magnitude (dB)'[/font][/color][/size][SIZE=4][COLOR=black][FONT="]);[/font][/color][/size][SIZE=4]
[/size][SIZE=4][COLOR=black][FONT="]axis([0 800 -60 3]);[/font][/color][/size][SIZE=4]
[/size][SIZE=4][COLOR=black][FONT="]grid;[/font][/color][/size][SIZE=4]
[/size][SIZE=4][COLOR=forestgreen][FONT="]% dump the coefficients to text files[/font][/color][/size][SIZE=4]
[/size][SIZE=4][COLOR=black][FONT="]fp1 = fopen(sprintf([/font][/color][/size][SIZE=4][COLOR=#A020F0][FONT="]'firlp%d.txt'[/font][/color][/size][SIZE=4][COLOR=black][FONT="], ntaps), [/font][/color][/size][SIZE=4][COLOR=#A020F0][FONT="]'w'[/font][/color][/size][SIZE=4][COLOR=black][FONT="]);[/font][/color][/size][SIZE=4]
[/size][SIZE=4][COLOR=black][FONT="]fp2 = fopen(sprintf([/font][/color][/size][SIZE=4][COLOR=#A020F0][FONT="]'firlp%dq15.txt'[/font][/color][/size][SIZE=4][COLOR=black][FONT="], ntaps), [/font][/color][/size][SIZE=4][COLOR=#A020F0][FONT="]'w'[/font][/color][/size][SIZE=4][COLOR=black][FONT="]);[/font][/color][/size][SIZE=4]
[/size][SIZE=4][COLOR=blue][FONT="]for[/font][/color][/size][SIZE=4][COLOR=black][FONT="] i=1:length(blp),[/font][/color][/size][SIZE=4]
[/size][SIZE=4][COLOR=black][FONT="] comma = [/font][/color][/size][SIZE=4][COLOR=#A020F0][FONT="]','[/font][/color][/size][SIZE=4][COLOR=black][FONT="];[/font][/color][/size][SIZE=4]
[/size][SIZE=4][COLOR=blue][FONT="]if[/font][/color][/size][SIZE=4][COLOR=black][FONT="] (i==length(bhp))[/font][/color][/size][SIZE=4]
[/size][SIZE=4][COLOR=black][FONT="] comma = [/font][/color][/size][SIZE=4][COLOR=#A020F0][FONT="]''[/font][/color][/size][SIZE=4][COLOR=black][FONT="];[/font][/color][/size][SIZE=4]
[/size][SIZE=4][COLOR=blue][FONT="]end[/font][/color][/size][SIZE=4]
[/size][SIZE=4][COLOR=black][FONT="] fprintf(fp1, [/font][/color][/size][SIZE=4][COLOR=#A020F0][FONT="]'%f%s
'[/font][/color][/size][SIZE=4][COLOR=black][FONT="], blp(i), comma);[/font][/color][/size][SIZE=4]
[/size][SIZE=4][COLOR=black][FONT="] fprintf(fp2, [/font][/color][/size][SIZE=4][COLOR=#A020F0][FONT="]'%d%s
'[/font][/color][/size][SIZE=4][COLOR=black][FONT="], round(2^15 * blp(i)), comma);[/font][/color][/size][SIZE=4]
[/size][SIZE=4][COLOR=blue][FONT="]end[/font][/color][/size][SIZE=4]
[/size][SIZE=4][COLOR=black][FONT="]fclose(fp1);[/font][/color][/size][SIZE=4]
[/size][SIZE=4][COLOR=black][FONT="]fclose(fp2);[/font][/color][/size][SIZE=4]
[/size][SIZE=4][COLOR=black][FONT="]fp1 = fopen(sprintf([/font][/color][/size][SIZE=4][COLOR=#A020F0][FONT="]'firhp%d.txt'[/font][/color][/size][SIZE=4][COLOR=black][FONT="], ntaps), [/font][/color][/size][SIZE=4][COLOR=#A020F0][FONT="]'w'[/font][/color][/size][SIZE=4][COLOR=black][FONT="]);[/font][/color][/size][SIZE=4]
[/size][SIZE=4][COLOR=black][FONT="]fp2 = fopen(sprintf([/font][/color][/size][SIZE=4][COLOR=#A020F0][FONT="]'firhp%dq15.txt'[/font][/color][/size][SIZE=4][COLOR=black][FONT="], ntaps), [/font][/color][/size][SIZE=4][COLOR=#A020F0][FONT="]'w'[/font][/color][/size][SIZE=4][COLOR=black][FONT="]);[/font][/color][/size][SIZE=4]
[/size][SIZE=4][COLOR=blue][FONT="]for[/font][/color][/size][SIZE=4][COLOR=black][FONT="] i=1:length(bhp),[/font][/color][/size][SIZE=4]
[/size][SIZE=4][COLOR=black][FONT="] comma = [/font][/color][/size][SIZE=4][COLOR=#A020F0][FONT="]','[/font][/color][/size][SIZE=4][COLOR=black][FONT="];[/font][/color][/size][SIZE=4]
[/size][SIZE=4][COLOR=blue][FONT="]if[/font][/color][/size][SIZE=4][COLOR=black][FONT="] (i==length(bhp))[/font][/color][/size][SIZE=4]
[/size][SIZE=4][COLOR=black][FONT="] comma = [/font][/color][/size][SIZE=4][COLOR=#A020F0][FONT="]''[/font][/color][/size][SIZE=4][COLOR=black][FONT="];[/font][/color][/size][SIZE=4]
[/size][SIZE=4][COLOR=blue][FONT="]end[/font][/color][/size][SIZE=4]
[/size][SIZE=4][COLOR=black][FONT="] fprintf(fp1, [/font][/color][/size][SIZE=4][COLOR=#A020F0][FONT="]'%f%s
'[/font][/color][/size][SIZE=4][COLOR=black][FONT="], bhp(i), comma);[/font][/color][/size][SIZE=4]
[/size][SIZE=4][COLOR=black][FONT="] fprintf(fp2, [/font][/color][/size][SIZE=4][COLOR=#A020F0][FONT="]'%d%s
'[/font][/color][/size][SIZE=4][COLOR=black][FONT="], round(2^15 * bhp(i)), comma);[/font][/color][/size][SIZE=4]
[/size][SIZE=4][COLOR=blue][FONT="]end[/font][/color][/size][SIZE=4]
[/size][SIZE=4][COLOR=black][FONT="]fclose(fp1);[/font][/color][/size][SIZE=4]
[/size][SIZE=4][COLOR=black][FONT="]fclose(fp2);[/font][/color][/size][SIZE=4]
[/size][SIZE=4][COLOR=black][FONT="]disp([/font][/color][/size][SIZE=4][COLOR=#A020F0][FONT="]'wrote coefficients to text files.'[/font][/color][/size][SIZE=4][COLOR=black][FONT="]);[/font][/color][/size]