由Matlab SPTool产生的滤波器结构包括直接Ⅱ型的filt.tf.num分子系数和filt.tf.den分母系数。如果滤波器设计成FIR滤波器,则只需要分子系数,使用fir_dump2c.m输出浮点系数,或者使用fir_dump2c_Qxx.m输出定点系数。
为使用fir_dump2c.m,要执行以下几步:
●从SPTool输出滤波器的设计到workspace。确定已经指定了一个FIR滤波器设计(剩下的过程就假设滤波器设计以filt1名字输出)。
●执行Matlab的cd命令来改变输出文件所需的目的路径。
●在Matlab命令行输入
fir_dump2c(′coeff′,′B′,filt1.tf.num,length(filt1.tf.num))并执行该m-file。
这将会产生两个文件———coeff.c和coeff.h,它声明了一个B_SIZE长度的浮点阵列B。
为使用fir_dump2c.m_Qxx,需要执行以下几步:
●从SPTool写入滤波器设计到workspace。确定已经指定了一个FIR滤波器设计(剩下的过程就假设滤波器设计以filt1名字输出)。
●执行MATLAB cd命令来改变输出文件所需目的路径。
●在MATLAB命令行输入(www.xing528.com)
fir_dump2c_Qxx(′coeff′,′B′,filt1.tf.num,length(filt1.tf.num),15)并执行该m-file。
这将会产生两个文件———coeff.c和coeff.h,声明了一个B_SIZE长度的定点阵列B。最后一个参数(Qxx)决定了二进制点的位置。在本书附录C中讨论了定点数字表示。
如果滤波器设计成IIR滤波器,分子和分母系数可以使用上述FIR滤波器描述的方法分别得到,或者使用df2_dump2c.m同时得到。
为使用df2_dump2c.m,需要执行以下几步:
●从SPTool写入滤波器设计到workspace(剩下的过程就假设滤波器设计以filt1名字输出)。
●执行Matlab cd命令来改变输出文件所需的目的路径。
●在Matlab命令行输入
df2_dump2c(′HPF_coeff′,′HPF′,filt1.tf)并执行该m-file。
这将产生两个文件———HPF_coeff.c和HPF_coeff.h,它们声明了HPF_A_SIZE长度的浮点阵列HPF_A(分母系数)和HPF_B_SIZE长度的阵列HPF_B(分子系数)。数组的长度是由filt1分子和分母矢量长度来决定的。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。