130 likes | 294 Views
ECE 3551 Microcomputer systems 1 Audio Filtering System. Professor: Dr Kepuska Presented by Kyle Farnum. Introduction. Audio Manipulation through utilizing three types of filters: Low-pass filters Band- pass filters High- pass filters
E N D
ECE 3551 Microcomputer systems 1Audio Filtering System Professor: Dr Kepuska Presented by Kyle Farnum
Introduction • Audio Manipulation through utilizing three types of filters: • Low-pass filters • Band- pass filters • High- pass filters • The goal of this project was to separate the low, mid and high frequencies from the original audio signal.
Implementation • Without any of the buttons being pushed, the original audio signal will be played. Pressing PF8 • Once will initiate the first low-pass filter and turn on LED4. • Twice will initiate the second low-pass filter and turn on LED5. • Thrice will initiate the third low-pass filter and turn on LED6. After each time PF8 is pressed, the bass gets more and more distinct. Bass gets deeper and deeper.
Implementation • Pressing PF9 • Once will initiate the first band-pass filter and turn on LED4. • Twice will initiate the second band-pass filter and turn on LED5. • Thrice will initiate the third band-pass filter and turn on LED6. After each time PF9 is pressed, the mid range gets more and more distinct. All the high and low frequencies are neutralized. In the project especially when the third band-pass filter is initiated, the vocals of the singer are distinct as the higher and lower frequencies are neutralised.
Implementation • Pressing PF10 • Once will initiate the first high-pass filter and turns on LEDs 6& 7. • Twice will initiate the second high-pass filter and turns on LEDs 5&8. • Thrice will initiate the third high-pass filter and turns on LEDs 4&9. After each time PF10 is pressed, the high range gets more and more distinct. All the low and mid frequencies are neutralized. So the audio input gets progressively higher as each high-pass filter is activated.
Designing Filters • All of the 9 filters were designed in Matlab using the fdatool. • Chebychev type 2 was the design type utilized for all the filters. • The coefficients from the filters were exported and the integer values were placed in the code as floats in the Process_data section of the code.
Low-pass filters: cutoff frequencies: 4000Hz, 2400 Hz, 1200Hz • High-pass filters: cutoff frequencies: 5400Hz, 7200 Hz, 9600 Hz • Band-pass filters: 4000Hz and 5400Hz 5600 Hz and 7000Hz 7000Hz and 9000Hz
Below is the transfer function representation of the IIR filter: Where B and A are the filter coefficients and z represents the delays. • We implemented our filters in our code using the direct 2 formula equations:
Preparation • Made sure that all SW9 pins were on. First 4 controlled PF 8-11. Last two allow Sport0 to transmit and receive information. • Also make sure that SW12 pins are also activated so that the Sport0 would be connected to the audio codec. • Initialization and enabling the six LED’s and the four Push Buttons • Some of the interrupts were: • SPORT0_RX_ISR • FLAG A_ISR
Process • processor start at main() in main.c. This program calls a various initialization routines to set up the EZ-Lite boards in a configuration that is needed for audio input/output, then it executes an infinite loop. • This program is an interrupt driven program which means that the computer program only does something when a hardware interrupt is generated.
The Process_data file contains the user computational functions –( implementation of filters) • In ISR functions will facilitate calling the computational functions and give their output
Results and Conclusion • We were able t separate the low, mid and high frequencies with the three types of filters used in this project. • The only change that I would make would be to make the cutoff frequencies a bit more distinct. • This was done deliberately though as the idea was to achieve a gradual change in the filtered audio.