GD32F303之小波变换

[复制链接]
1129|1
 楼主| zeshoufx 发表于 2019-9-4 19:20 | 显示全部楼层 |阅读模式
一、信号输入
arm_sin_f32(2*3.1415926*50*i/1000)+arm_sin_f32(2*3.1415926*250*i/1000);

二、结果
348165d6f9d1ed12b2.png




858205d6f9d41259ef.png
三、测试函数
  1. void dwdt_test(void)
  2. {
  3.         static float32_t data[512];//输入信号
  4.     static float32_t temp[512];//中间结果
  5.     static float32_t data_output[512];//一维小波变换后的结果
  6.     u32 n = 512;//输入信号长度
  7.     u32 m = 6;//Daubechies正交小波基长度
  8.     u32 i = 0;

  9.     static float32_t h[] = {.332670552950, .806891509311, .459877502118, -.135011020010,
  10.                     -.085441273882, .035226291882};
  11.     static float32_t g[] = {.035226291882, .085441273882, -.135011020010, -.459877502118,
  12.                     .806891509311, -.332670552950};
  13.        
  14.         for(i=0;i<512;i++)
  15.         {
  16.                 data[i]=arm_sin_f32(2*3.1415926*50*i/1000)+arm_sin_f32(2*3.1415926*250*i/1000);
  17.         }
  18.         DWT1D(data, data_output, temp, h, g, n, m);
  19.         for(i = 0; i < n; i++)
  20.     {
  21.         printf("%f\r\n", data_output[i]);
  22.         
  23.     }
  24.        
  25. }


四、主函数

  1. /*
  2.     昆明电器科学研究所 张恩寿 2019年5月3日
  3.        
  4.        
  5. */
  6. #include "bitband.h"
  7. #include "led_config.h"
  8. #include "systick.h"
  9. #include "usart.h"
  10. #include "spi_flash.h"
  11. #include "tft.h"
  12. #include "key_lookup.h"
  13. #include "dsp_dwdt.h"




  14. int main(void)
  15. {                       
  16.         systick_config(120);
  17.         nvic_priority_group_set(NVIC_PRIGROUP_PRE2_SUB2);
  18.         usart0_init(115200);
  19.     led_init();
  20.         dwdt_test();
  21.         
  22.         while(1)
  23.         {
  24.                 led_on();
  25.                 delay_nms(600);
  26.                 led_off();
  27.                 delay_nms(600);
  28.         }
  29.                
  30. }




五、总结分析
总体上来说,基本可以,,由于小波变换并非arm提供的dsp,自己编写,还存在一定的优化空间

评论

自己先顶一个  发表于 2019-9-5 11:04
您需要登录后才可以回帖 登录 | 注册

本版积分规则

67

主题

1991

帖子

15

粉丝
快速回复 在线客服 返回列表 返回顶部