Practical DSP in C: FFT, Filter Design, Convolution, IIR, FIR, Hamming Window, Linear Systems, Chebyshev filters, etc
What you’ll learn
Digital Signal Processing (DSP) From Ground Up™ in C
-
Be able to develop the Convolution Kernel algorithm in C
-
Be able to develop the Discrete Fourier Transform (DFT) algorithm in C
-
Be able to develop the Inverse Discrete Fourier Transform (IDFT) algorithm in C
-
Be able to develop the Fast Fourier Transform (FFT) algorithm in C
-
Be able to perform spectral analysis on ECG signals in C
-
Be able to design and develop Windowed-Sinc filters in C
-
Be able to design and develop Finite Impulse Response (FIR) filters in C
-
Be able to design and develop Infinite Impulse Response (IIR) filters in C
-
Be able to develop the FFT Convolution algorithm in C
-
Be able to develop the First Difference algorithm in C
-
Be able to develop the Running Sum algorithm in C
-
Be able to develop the Moving Average filter algorithm in C
-
Be able to develop the Recursive Moving Average filter algorithm in C
-
Be able to develop signal statistical algorithms in C
-
Be able to build passive Low-pass and High-pass filters
-
Be able to build Modified Sallen-Key filters
-
Be able to build Bessel, Chebyshev, and Butterworth filters
-
Understand all about Linear Systems and their characteristics
-
Understand how to synthesize and decompose signals
-
Understand the relationship between the delta function and the Impulse response
-
Be able to plot signals with gnuplot
-
Be able to give a lecture on Digital Signal Processing (DSP)
-
Be able to suppress noise in signals
Requirements
-
Having basic C programming skills is a plus
Description
With a programming-based approach, this course is designed to give you a solid foundation in the most useful aspects of Digital Signal Processing (DSP) in an engaging and easy to follow way. The goal of this course is to present practical techniques while avoiding obstacles of abstract mathematical theories. To achieve this goal, the DSP techniques are explained in plain language, not simply proven to be true through mathematical derivations.
Still keeping it simple, this course comes in different programming languages and hardware architectures so that students can put the techniques to practice using a programming language or hardware architecture of their choice. This version of the course uses the C programming language.
By the end of this course, you should be able to develop the Convolution Kernel algorithm in C, develop the Discrete Fourier Transform (DFT) algorithm in C, develop the Inverse Discrete Fourier Transform (IDFT) algorithm in C, design and develop Finite Impulse Response (FIR) filters in C, design and develop Infinite Impulse Response (IIR) filters in C, develop Windowed-Sinc filters in C, build Modified Sallen-Key filters, build Bessel, Chebyshev and Butterworth filters, develop the Fast Fourier Transform (FFT) algorithm in C , even give a lecture on DSP and so much more. Please take a look at the full course curriculum.
Who this course is for:
- Engineering Students
- C Developers
- Embedded Systems Engineers
- Computer Engineering students
- Hobbyists
- Embedded Systems Instructors