Top Banner
EE 113D Fall 2008 Patrick Lundquist Ryan Wong http://weep.wikidot.com/
22

Digital Tuner

Jan 02, 2016

Download

Documents

Digital Tuner. EE 113D Fall 2008 Patrick Lundquist Ryan Wong http://weep.wikidot.com/. Background. The notes in the music are distinguished by their frequency The note in each octave is twice the frequency of the same note in the previous octave. - PowerPoint PPT Presentation
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Digital Tuner

EE 113D Fall 2008Patrick Lundquist

Ryan Wong

http://weep.wikidot.com/

Page 2: Digital Tuner

The notes in the music are distinguished by their frequency

The note in each octave is twice the frequency of the same note in the previous octave.

Ex: C = 32.7 Hz, 65.4 Hz, 130.8 Hz, 261.6 Hz, 523.2 Hz … etc.

EE 113D Fall 2008 2

Page 3: Digital Tuner

The frequencies of the C notes are actually 32.7 Hz, 65.4 Hz, 130.8 Hz, 261.6 Hz… etc.

But we use C = 2x Hz, where X = 5, 6, 7, 8, 9… for the sake of simplicity.

EE 113D Fall 2008 3

C = 32 Hz, 64 Hz, 128 Hz, 256 Hz, etc.

Page 4: Digital Tuner

A tuner can be aplied to anything that can be measured on a specturm analyzer

Ex: instruments, function generator, human voice.

We can start testing our finished product with a function generator and then move onto the more complicated human voice.

EE 113D Fall 2008 4

Page 5: Digital Tuner

Human vocal range: 80-1100 Hz Piano note frequency range: 27.5 – 4186 Hz Human hearing 20 Hz – 20 KHz

EE 113D Fall 2008 5

Page 6: Digital Tuner

We are going to start with the simplest case◦ Tuning to C (32 Hz, 64 Hz… etc.)

We wish to output high if the input is very close to a C in frequency

Output will be low if input is anything else. The sampling frequency of the tuner will be

8000 Hz.◦ We chose this frequency because it is twice the

maximum frequency of most instruments.

EE 113D Fall 2008 6

Page 7: Digital Tuner

Output signal magnitude generation is exponential:

|2x -2x+a|, -0.5<a<0.5

Since notes are base 2 logarithmic, not linear

C – 7th octave

C – 8th octave

C – 6th octave

Our output signal varies exponentiallywith the input signal’s relative distancefrom the tuning frequency.

EE 113D Fall 2008 7

Page 8: Digital Tuner

Since we are dealing with frequencies, we know a Fourier Transform will be involved. ◦ The rest is just manipulation to get the correct output

from various inputs

The result of the Fourier Transform is a delta function at a memory index. ◦ We calculate frequency based on this index:

A/B x F = frequency of signal

where F is the sampling frequency, A is the index locationB is the total number of indices

EE 113D Fall 2008 8

Page 9: Digital Tuner

EE 113D Fall 2008 9

Page 10: Digital Tuner

Simulation: generated a sine wave

Testing: generated sine wave from function generator

Real Life: microphone signal input

EE 113D Fall 2008 10

Page 11: Digital Tuner

Simulation: generated a sine wave

Testing: sample.asm from lab

EE 113D Fall 2008 11

Page 12: Digital Tuner

Simulation: FFT function in matlab

Testing: RFFT.asm files from experiment 5. Uses a Radix-2, DIT

EE 113D Fall 2008 12

Page 13: Digital Tuner

Simulation: Loop through array find max frequency

Testing: getfreq.asm file uses finds max frequency index and converts it

EE 113D Fall 2008 13

We calculate frequency based on this index:A/B x F = frequency of signal

where F is the sampling frequency, A is the index location B is the total number of indices

Page 14: Digital Tuner

Simulation: Scaling max frequency to known scale: ~16khz

Testing: thold.asm file performs a series of bitwise shifts to scale to reference freq.

EE 113D Fall 2008 14

Page 15: Digital Tuner

Simulation: Scaling max frequency to known scale: ~16khz

Testing: thold.asm file performs a series of bitwise shifts to scale to reference freq.

EE 113D Fall 2008 15

Page 16: Digital Tuner

Simulation: Compare to tuning key and output ratio

Testing: thold.asm implements lookup table for comparison and lookup table for resultEE 113D Fall 2008 16

Page 17: Digital Tuner

Simulation: Compare to tuning key and output ratio

Testing: thold.asm implements lookup table for comparison and lookup table for resultEE 113D Fall 2008 17

Lookup .word 11585, 11994, 12417, 12855 .word 13308, 13777, 14263, 14766 .word 15287, 15826, 16384, 16962 …

Magnup .word 16, 32, 64, 128 .word 256, 512, 1024, 2048 .word 4096, 8192, 16384, 8192

Page 18: Digital Tuner

Simulation: Scaling max frequency to known scale: ~16khz

Testing: thold.asm file

EE 113D Fall 2008 18

Page 19: Digital Tuner

Integrate all modules into one continuous program.◦ Need to add calling and linking of each module.◦ Timing issues and assembly syntax problems◦ Also, nops and @ operator provided initial trouble.

Optimizing program to run in real time.

◦ FFT is a time expensive process that reduces the potential for real time tuning.

◦ Difficult to determine when FFT is finished running.

EE 113D Fall 2008 19

Page 20: Digital Tuner

FFT algorithm does not work with a voice input from microphone. ◦ Further testing required.

EE 113D Fall 2008 20

Page 21: Digital Tuner

Tune to multiple notes Determine what note is being played Convert output to sheet music Play sheet music

EE 113D Fall 2008 21

Page 22: Digital Tuner

Questions?

EE 113D Fall 2008 22