The aim of this book is to teach the basic principles of Digital Signal Processing (DSP) and to introduce it from a practical point of view using the bare minimum of mathematics. Only the basic level of discrete-time systems theory is given, sufficient to implement DSP applications in real time. The practical implementations are described in real time using the highly popular ESP32 DevKitC microcontroller development board. With the low cost and extremely popular ESP32 microcontroller, you should be able to design elementary DSP projects with sampling frequencies within the audio range. All programming is done using the popular Arduino IDE in conjunction with the C language compiler.
After laying a solid foundation of DSP theory and pertinent discussions on the main DSP software tools on the market, the book presents the following audio-based sound and DSP projects:
- Using an I²S-based digital microphone to capture audio sound
- Using an I²S-based class-D audio amplifier and speaker
- Playing MP3 music stored on an SD card through an I²S-based amplifier and speaker
- Playing MP3 music files stored in ESP32 flash memory through an I²S-based amplifier and speaker
- Mono and stereo Internet radio with I²S-based amplifiers and speakers
- Text-to-speech output with an I²S-based amplifier and speaker
- Using the volume control in I²S-based amplifier and speaker systems
- A speaking event counter with an I²S-based amplifier and speaker
- An adjustable sinewave generator with I²S-based amplifier and speaker
- Using the Pmod I²S2 24-bit fast ADC/DAC module
- Digital low-pass and band-pass real-time FIR filter design with external and internal A/D and D/A conversion
- Digital low-pass and band-pass real-time IIR filter design with external and internal A/D and D/A conversion
- Fast Fourier Transforms (FFT)