# Basic Math Example (See the README.md file in the upper level 'examples' directory for more information about examples.) This example demonstrates how to use basic math functions from esp-dsp library. Example does the following steps: 1. Initialize the library 2. Initialize input signals with 1024 samples 3. Apply window to input signal by standard C loop. 4. Calculate FFT for 1024 complex samples and show the result 5. Show results on the plots 6. Apply window to input signal by basic math functions dsps_mul_f32 and dsps_mulc_f32. 7. Calculate FFT for 1024 complex samples 8. Show results on the plots ## How to use example ### Hardware required This example does not require any special hardware, and can be run on any common development board. ### Configure the project If using Make based build system, run `make menuconfig` and set serial port under Serial Flasher Options. If using CMake based build system, no configuration is required. Also, under Component Config ---> DSP Library ---> Optimization for ESP32, it's possible to select optimized or ansi implementation to compare. ### Build and flash Build the project and flash it to the board, then run monitor tool to view serial output: ``` make -j4 flash monitor ``` Or, for CMake based build system (replace PORT with serial port name): ``` idf.py -p PORT flash monitor ``` (To exit the serial monitor, type ``Ctrl-]``.) See the Getting Started Guide for full steps to configure and use ESP-IDF to build projects. ## Example output Here is an typical example console output. ```bash I (132) main: *** Start Example. *** I (132) main: *** Multiply tone signal with Hann window by standard C loop. *** I (152) view: Data min[432] = -173.749878, Data max[205] = 23.849705 ________________________________________________________________ 0 | | 1 | | 2 | | 3 || | 4 | | | 5 || | | 6 ||| || | 7 ||||| |||| | 8||||||||||||||| |||||| | 9 ||||||||||||||||||||||||| 0123456789012345678901234567890123456789012345678901234567890123 I (162) view: Plot: Length=512, min=-120.000000, max=40.000000 I (162) main: *** Multiply tone signal with Hann window by esp-dsp basic math functions. *** I (162) view: Data min[432] = -173.749878, Data max[205] = 23.849705 ________________________________________________________________ 0 | | 1 | | 2 | | 3 || | 4 | | | 5 || | | 6 ||| || | 7 ||||| |||| | 8||||||||||||||| |||||| | 9 ||||||||||||||||||||||||| 0123456789012345678901234567890123456789012345678901234567890123 I (172) view: Plot: Length=512, min=-120.000000, max=40.000000 I (172) main: *** End Example. *** ```
To create a project from this example, run:
idf.py create-project-from-example "espressif/esp-dsp=1.2.1:basic_math"