Fast Fourier Transform using the ARM CMSIS Library within the STM32 MCUs

แชร์
ฝัง
  • เผยแพร่เมื่อ 31 ธ.ค. 2024

ความคิดเห็น •

  • @metrogman2409
    @metrogman2409 ปีที่แล้ว +1

    Thank you for the FFT demo.

  • @michaelalex5235
    @michaelalex5235 ปีที่แล้ว +1

    This is great stuff - thank you and continue the good work!

  • @ArgaAridarma
    @ArgaAridarma ปีที่แล้ว +1

    Thank you! I need to try this for my next project.

  • @padakathu2882
    @padakathu2882 5 หลายเดือนก่อน

    thank you, excellent, very clear explanations

  • @sizuziledlamini1852
    @sizuziledlamini1852 2 หลายเดือนก่อน +1

    Does the stm32f103c8 "Blue pill" support the arm_math library?

    • @steppeschool3629
      @steppeschool3629  2 หลายเดือนก่อน

      I am afraid it does not support

  • @dasunisaparamadu2876
    @dasunisaparamadu2876 หลายเดือนก่อน

    I'm using Cube IDE version 1.15.0.
    The microcontroller version I'm using is STM32 NUCLEO L073RZ
    DSP library is not listed under software component class.
    Which version are you using?

  • @vix_s_hnu
    @vix_s_hnu 6 หลายเดือนก่อน

    I got error " undefined reference to 'arm_rfft_fast_init_f32'. I imported the DSP library as you mentioned in the other videos. Why i am stille getting the error?

  • @kamarmeredow7644
    @kamarmeredow7644 2 หลายเดือนก่อน +1

    Thank you for the video. I tried to use this dsp lib with my stm32f103c8t6 cortex m3 with clock speed 64mhz. But i could not install it because bluepill has only 20kb. I wrote recursive fft code myself. but it took almost 70ms to finish and i lost some values from adc. sampling rate was 8khz. and window size is 128 or even with 64 it was still slow. i think arm dsp uses some kind of hardware accelerated things to make the calculations much faster for example in 1-2ms. But i could not use it as bluepill has only 64kb of flash. What can you suggest? Appreciate that thanks.

    • @steppeschool3629
      @steppeschool3629  2 หลายเดือนก่อน

      The easiest solution would be to upgrade your microcontroller. Try more powerful microcontrollers, such as STM32F4, STM32L4, etc. They are not expensive and you can easily implement FFT.

    • @kamarmeredow7644
      @kamarmeredow7644 2 หลายเดือนก่อน +1

      @@steppeschool3629 Hi. Thank you for the answer. Yes i had also F407 with 512kb of flash. But i wanted to try it with 64kb. Because i saw someone got fft working even with atmel processor with good performance. In the end i wrote my fft function with float type which took 70ms to calculate which is very slow. There is no fpu in bluepill. And after working 2 days i rewrote my functions in fixed point numbers and got it working. Fft took 3-4 ms for calculation, flash usage is 34kb with whole code.

    • @steppeschool3629
      @steppeschool3629  2 หลายเดือนก่อน

      What you did is quite impressive

  • @JohnJ-zj8ol
    @JohnJ-zj8ol 6 หลายเดือนก่อน +1

    Thanks a lot! what is the rest of line 106? printf("frequency %f: %f
    ", ((float32_t)(i * SAMPLING_RAT) / FFT_LENGTH), out...

    • @steppeschool3629
      @steppeschool3629  6 หลายเดือนก่อน

      just bracket with a semicolon

    • @batosato
      @batosato 3 หลายเดือนก่อน

      @@steppeschool3629 It is difficult what is the rest. Is it printf("freq %f: %f
      ", ((float32_t)(i * SAMPLING_RATE) / FFT_LENGTH), output_fft_mag[i]); ??

    • @tolpow
      @tolpow หลายเดือนก่อน

      for (int i = 0; i < FFT_LENGTH / 2; ++i)
      {
      printf("frequency: %f", ((float32_t) (i * SAMPLING_RATE) / FFT_LENGTH ));
      printf(" magnitude(float): %f",output_fft_mag[i]);
      printf(" magnitude: %d
      ", (uint8_t)output_fft_mag[i]);
      }

  • @hasanoktem8792
    @hasanoktem8792 5 หลายเดือนก่อน

    the repository is not public

  • @gcenter1552
    @gcenter1552 หลายเดือนก่อน

    does it work on stm32f103x ?