By: John Ernsberger. PURPOSE  The purpose of this project is to design an equalizer with both user controlled and hard set gains.

Slides:



Advertisements
Similar presentations
Lab 8 User Defined Function.
Advertisements

Digital Filters. Filters Filters shape the frequency spectrum of a sound signal. Filters shape the frequency spectrum of a sound signal. –Filters generally.
So far We have introduced the Z transform
EE 445S Real-Time Digital Signal Processing Lab Fall 2013 Lab #3.1 Digital Filters Chao Jia.
Dual Tone Multi-Frequency System Michael Odion Okosun Farhan Mahmood Benjamin Boateng Project Participants: Dial PulseDTMF.
Smart EQ Digital Stereo Equalizer Dustin Demontigny David Bull.
Digital 5-Band Equalizer Electrical Engineering 113D Authors: Gordon Tsui Michael Kim.
IIR Filters and Equalizers R.C. Maher ECEN4002/5002 DSP Laboratory Spring 2002.
Professor: Dr Kepuska Presented by Kyle Farnum. Audio Manipulation through utilizing three types of filters: Low-pass filters Band- pass filters High-
EE313 Linear Systems and Signals Fall 2010 Initial conversion of content to PowerPoint by Dr. Wade C. Schwartzkopf Prof. Brian L. Evans Dept. of Electrical.
Function: Definition A function is a correspondence from a first set, called the domain, to a second set, called the range, such that each element in the.
CMSC 104, Version 8/061L22Arrays1.ppt Arrays, Part 1 of 2 Topics Definition of a Data Structure Definition of an Array Array Declaration, Initialization,
SOLVING SYSTEMS OF LINEAR EQUATIONS REVIEW OF 3 METHODS.
0 - 1 © 2010 Texas Instruments Inc Practical Audio Experiments using the TMS320C5505 USB Stick “FIR Filters” Texas Instruments University Programme Teaching.
The Wavelet Tutorial: Part3 The Discrete Wavelet Transform
Multiplication is the process of adding equal sets together = 6 We added 2 three times.
16 Oct'09Comp30291 Section 31 University of Manchester School of Computer Science Comp30291: Digital Media Processing Section 3 : Discrete-time.
Chapter 6 Digital Filter Structures
259 Lecture 13 Spring 2013 Advanced Excel Topics – Arrays.
Digital Filters. Filters Filters shape the frequency spectrum of a sound signal. –Filters generally do not add frequency components to a signal that are.
MICROCOMPUTER SYSTEMS 1 SulTan BINHUMOOD Final Project Presentation.
Zhongguo Liu_Biomedical Engineering_Shandong Univ. Chapter 8 The Discrete Fourier Transform Zhongguo Liu Biomedical Engineering School of Control.
EE513 Audio Signals and Systems Complex Oscillator Kevin D. Donohue Electrical and Computer Engineering University of Kentucky.
Lecture 10a Infinite Impulse Response (IIR) Filters.
Copyright 2004 Ken Greenebaum Introduction to Interactive Sound Synthesis Lecture 20:Spectral Filtering Ken Greenebaum.
Digital filters Honza Černocký, ÚPGM. Aliases Numerical filters Discrete systems Discrete-time systems etc. 2.
Which one? You have a vector, a[ ], of random integers, which can modern CPUs do faster and why? //find max of vector of random ints max=0; for (inda=0;
 By: Stanley O. Abada Presented to: Dr. V Kepuska December 4, 2010 Microcomputer 1.
Notes – 2/13 Addition Method of solving a System of Equations Also called the Elimination Method.
Digital Filter Realization
ECE 3551 Microcomputer Systems 1. Preformed By: James Morton Sunita Ramnarinesingh Arthur Lyssenko.
ECE 3551 – Microcomputer Systems 1 Fall 2010 Siobhan Ireland.
* Collect the like terms 1. 2a = 2a x -2x + 9 = 6x z – – 5z = 2z - 6.
Microcomputer systems 1 ECE 3551 Dipesh Patel.  Activating Filters using the pushbuttons.  Combination of LEDs turned on with each pushbutton pressed.
Variables and Like Terms Section Variables  A variable holds a place for a number.  Any letter can be used.  x+6  3-7y  2t-3s+6r 2.
Looping I (while statement). CSCE 1062 Outline  Looping/repetition construct  while statement (section 5.1)
EE 445S Real-Time Digital Signal Processing Lab Fall 2013 Lab 3 IIR Filters Chao Jia Debarati Kundu Andrew Mark.
Electronic Devices Ninth Edition Floyd Chapter 15.
Advanced Excel Topics – Arrays
Digital Signal Processing
Discrete-time Systems
Solve Systems of Equations by Elimination
Notes 7.1 Day 1– Solving Two-Step Equations
Expressions and Equations Review Day 3
Lecture 12 Linearity & Time-Invariance Convolution
General Engineering Polytechnic University
Lecture 14 Digital Filtering of Analog Signals
Arrays, Part 1 of 2 Topics Definition of a Data Structure
2008/11/24: Lecture 19 CMSC 104, Section 0101 John Y. Park
2008/11/24: Lecture 19 CMSC 104, Section 0101 John Y. Park
Multiplying 3 digits by 2 digits
6-3 Solving Systems Using Elimination
Lab 5 Part II Instructions
Quantization in Implementing Systems
Binary Math Basic operations.
Solve Multi-step Equations
Arrays, Part 1 of 2 Topics Definition of a Data Structure
Solve Linear Equations by Elimination
TE2: Combining Like Terms
Arrays, Part 1 of 2 Topics Definition of a Data Structure
Arrays, Part 1 of 2 Topics Definition of a Data Structure
Arrays, Part 1 of 2 Topics Definition of a Data Structure
Signal Processing First
Writing Equations from Tables
Lecture 22 IIR Filters: Feedback and H(z)
Fixed-point Analysis of Digital Filters
Solve Multi-step Equations
7-2 Multiplying powers with the same base.
Arrays, Part 1 of 2 Topics Definition of a Data Structure
Chapter 15 Infinite Impulse Response (IIR) Filters
Presentation transcript:

By: John Ernsberger

PURPOSE  The purpose of this project is to design an equalizer with both user controlled and hard set gains

THEORY  Digital Equalizers  Second Order IIR Filters

DIGITAL EQUALIZERS  A Digital Equalizer functions by using two or more Band Pass Filters  After being multiplied by an individual gain the filters are added together and multiplied by a master gain  This produces an augmented output where specific frequencies are boosted

VISUAL REPRESENTATION 2 nd Order IIR Filter … Individual Gains Master Gain Output Input

IMPLEMENTATION IIRFilter100( pIn, buff100 ) ; IIRFilter200( pIn, buff200 ) ; IIRFilter400( pIn, buff400 ) ; IIRFilter800( pIn, buff800 ) ; IIRFilter1500( pIn, buff1500 ) ; IIRFilter3000( pIn, buff3000 ) ; IIRFilter5000( pIn, buff5000 ) ; IIRFilter7000( pIn, buff7000 ) ; IIRFilter10000( pIn, buff10000 ) ; for( l = 0 ; l < BUFLEN * 2 ; l++ ) { f100 = buff100[l] ; f200 = buff200[l] ; f400 = buff400[l] ; f800 = buff800[l] ; f1500 = buff1500[l] ; f3000 = buff3000[l] ; f5000 = buff5000[l] ; f7000 = buff7000[l] ; f10000 = buff10000[l] ; pOut[l] = 0.11 * ( f100 + f200 + f400 + f800 + f f f f f10000 ); }

SECOND ORDER IIR FILTERS  IIR Filters are perfect for equalizer design because they are very specific with a low coefficient order  These filters can be designed using the fdatool in MATLAB

MATHEMATICS  Basic Equation: Here we see that multiplying the input and previous inputs by coefficients will obtain the filtered output H(z)  This can be reduced too: wn = ( input ) - ( a1 * wn1 ) - ( a2 * wn2 ) ; yn = ( b1 * wn ) + ( b2 * wn1 ) + ( b3 * wn2 ) ; Here wn1 and wn2 are the previous modified inputs and wn is the currently being modified input

MATHEMATICS  When dealing with a multi sectioned IIR Filter use the following equation

VISUAL REPRESENTATION  One section second order Input Output b 1 d[n-1] b 2 d[n-2] a 1 d[n-1] a 2 d[n-2] b0b0 D D … To add more sections repeat process

IMPLEMENTATION void IIRFilter100( short *pIn, short *pOut ) { int i = 0, k = 0 ;// initializes the counters static double input = 0 ; double wn = 0, yn = 0 ;// initializes variables used within the filter doublea1, a2, b1, b2, b3 ;// initializes the variables to hold the filter coefficients doublewn1, wn2 ;// initializes variables to hold w(n -1) and w(n-2) values for( i = 0 ; i < BUFLEN ; i++ ) { input = (double)(pIn[i * 2]) ; // passes the input value from pIn to the filter for( k = 0 ; k <= (section ) ; k++ ) { a1 = DEN100[k][1] ;// uses the variable to hold the coefficient values a2 = DEN100[k][2] ;// uses the variable to hold the coefficient values b1 = NUM100[k][0] ;// uses the variable to hold the coefficient values b2 = NUM100[k][1] ;// uses the variable to hold the coefficient values b3 = NUM100[k][2] ;// uses the variable to hold the coefficient values wn1 = w100[k][0] ;// uses a variable to hold w(n-1) value wn2 = w100[k][1] ;// uses a variable to hold w(n-2) value wn = ( input ) - ( a1 * wn1 ) - ( a2 * wn2 ) ; // calculates wn value yn yn = ( b1 * wn ) + ( b2 * wn1 ) + ( b3 * wn2 ) ;// calculates the output value w100[k][1] = w100[k][0] ;// passes w(n-1) to w(n-2) w100[k][0] = wn ;// passes wn to w(n-1) input = yn ; // copies the new output to the new output } pOut[i * 2] = (short)(yn) ;// copies yn to the output pOut[i * 2 + 1] = (short)(yn) ;// copies yn to the output }

IMPROVEMENTS  Have a fully functioning equalizer with a clean output  Have more preset settings for different types of music  Have different types of equalizers with different ranges

THE END