Document Type
Poster Session
Department
Engineering
Faculty Mentor
Dr. Mariusz Jankowski
Abstract
This project's goal is to create a visual representation of digital signal processing using a Raspberry Pi Pico board. External components will interface with the Pico to supply digital signals and display the results after processing the signal. A microphone will supply the signal to the Pico which will perform a Fourier Transform on the data and output a spectrogram to a display. The display is named ILI9341 which includes an SPI interface, micro SD card slot, and a 2.2 inch screen. The spectrogram includes the magnitudes of the transformed signal at each frequency and time. Each magnitude is illustrated as a color that indicates what the magnitude is in decibels. Each color also has 32 different shades which also indicates if the magnitude is less or greater. Additionally, each of the 12 colors represents decibel ranges between 0 and 10. The frequency axis of the spectrogram ranges from 0 to 20,000Hz as this is the range for audio signals. In order to program the raspberry pi pico, the computer programming language C++ is used. C++ allows the user to implement instructions that will be executed. C++ can control the entire board with access to input and output pins. The code will read data sent by a microphone to an ADC pin and store the data as digital values. A Fourier Transform is performed on the input data which is sent to the pins connected to the ILI9341 LCD display. The sent data tells the display to draw pixels with color for each frequency and magnitude. The screen is refreshed as new data is collected and sent.
Real-Time Filters
This project's goal is to create a visual representation of digital signal processing using a Raspberry Pi Pico board. External components will interface with the Pico to supply digital signals and display the results after processing the signal. A microphone will supply the signal to the Pico which will perform a Fourier Transform on the data and output a spectrogram to a display. The display is named ILI9341 which includes an SPI interface, micro SD card slot, and a 2.2 inch screen. The spectrogram includes the magnitudes of the transformed signal at each frequency and time. Each magnitude is illustrated as a color that indicates what the magnitude is in decibels. Each color also has 32 different shades which also indicates if the magnitude is less or greater. Additionally, each of the 12 colors represents decibel ranges between 0 and 10. The frequency axis of the spectrogram ranges from 0 to 20,000Hz as this is the range for audio signals. In order to program the raspberry pi pico, the computer programming language C++ is used. C++ allows the user to implement instructions that will be executed. C++ can control the entire board with access to input and output pins. The code will read data sent by a microphone to an ADC pin and store the data as digital values. A Fourier Transform is performed on the input data which is sent to the pins connected to the ILI9341 LCD display. The sent data tells the display to draw pixels with color for each frequency and magnitude. The screen is refreshed as new data is collected and sent.