Labfans是一个针对大学生、工程师和科研工作者的技术社区。 | 论坛首页 | 联系我们(Contact Us) |
![]() |
|
![]() |
#1 |
初级会员
注册日期: 2009-09-29
年龄: 38
帖子: 3
声望力: 0 ![]() |
![]()
clear;
%设计滤波器% N=160; fc=8000; fp=4000; wp=0.5*pi; fs=5000; ws=0.625*pi; wc=(wp+ws)/2/pi; n=ceil(11/0.125); h=fir1(n-1,wc,blackman(n));%滤波器设计完成% %分段读入文件% m=length(h); m1=m-1; fid=fopen('assignment090929.pcm','r'); y=zeros(1,N+m1); x=zeros(1,N+m1); x1=zeros(1,m1); x2=zeros(1,N); y1=zeros(1,N); b=fopen('lz.pcm','wb'); while(feof(fid)~=1) x2=fread(fid,[1,N],'int 16'); x=[x1,x2]; y=filter(h,1,x); y1=y(m1+1:N+m1); fwrite(b,y1,'int 16'); x1=x2(N-m1+1:N); end 我这程序显示??? Index exceeds matrix dimensions. Error in ==> liuzhao3 at 29 y1=y(m1:N+m1);的错误 我觉得没错呢 请高手帮忙哈 谢谢 |
![]() |
![]() |