你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

查看: 2721|回复: 2

关于STM32 DSP库系数的获取

[复制链接]

2

主题

11

回帖

0

蝴蝶豆

中级会员

最后登录
2020-11-19
发表于 2013-6-7 17:57:43 | 显示全部楼层 |阅读模式
              很多人对DSP库的系数获取很迷惑,大家知道通过matlab获取  滤波器的权系数,可是获取到的是浮点型的系数。要怎样转换才能在stm32 的DSP库上使用呢。??
回复

使用道具 举报

0

主题

14

回帖

0

蝴蝶豆

初级会员

最后登录
1970-1-1
发表于 2013-6-8 09:48:48 | 显示全部楼层

回复:关于STM32 DSP库系数的获取

第一:采用MATLAB设计出你所需要的IIR滤波器,通过[S,G]=tf2sos(B,A)将直接型转换到级联型
第二:由于CMSIS-DSP要就系数在[+1 -1)之间,且分母a系数a1k和a2k,与matlab不同,需要把两系数
变号,而为了使系数b0k、b1k、b2k、a1k、a2k在[+1 -1)之间,需要对所以系数除2缩放,每除2一次
滤波器系数PostShift加一,其启始为0。,详细细节请参考"CMSIS-DSP"使用指南。
第三:设计时由于G系数固定为1,而MATLAB得出的不为1,需将G系数分解到若干个二阶子系统函数的
分子向量中。
第四: 根据设计ADC的位数不同需合理选择滤波器的位数 如:
arm_biquad_cascade_df1_f32
arm_biquad_cascade_df1_fast_q15
arm_biquad_cascade_df1_fast_q31
arm_biquad_cascade_df1_q15
arm_biquad_cascade_df1_q31
arm_biquad_cas_df1_32x64_q31
其中arm_biquad_cas_df1_32x64_q31为高精度滤波器,运算耗时较大,不一般不选用
而快速型的速度虽快,但滤波特性不好
对于F4来说
arm_biquad_cascade_df1_f32
是不错的选择
回复 支持 反对

使用道具 举报

0

主题

14

回帖

0

蝴蝶豆

初级会员

最后登录
1970-1-1
发表于 2013-6-8 09:52:21 | 显示全部楼层

RE:关于STM32 DSP库系数的获取

其中FIR滤波器设计系数得出比较容易,但要实现实时的FIR滤波器,其滤波阶数很难做到很高,100阶算不错了,不像FPGA可做到2000多阶以上
回复 支持 反对

使用道具 举报

关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版