EE 451
Lab 4: Digital Oscillators on the 56002
A touchtone telephone uses two frequencies for each key pressed. The
frequencies are shown in the diagram below:
Thus, when you press the ``1'' key you get a tone
where f_{L} = 697 Hz and
f_{H} = 1209 Hz.
These tones are called dualtone multifrequency (DTMF) signals.
In this lab we want to use the 56002 to generate these DTMF signals.
We can do this by implementing a
discretetime system with an impulse response

(1) 
This is a fourthorder system and can be written in the zdomain as

(2) 
This can be implemented in several ways. It can be implemented as a
fourthorder system by the difference equation:

(3) 
It can be implemented as a cascade of secondorder systems  in the
zdomain this would look like:

(4) 
It can be implemented in parallel form  in the zdomain this would look
like:
H(z) = H_{1}(z) + H_{2}(z)

(5) 
For reasons of stability in a finite word length processor the form in
Equation 5 is
the best for implementing this system.
 1.
 Find the ztransform of Equation 1. Write it in the form of
Equation 5.
 2.
 Write a MATLAB mfile which will calculate the a_{jk} and b_{jk}coefficients when given the two frequencies
and ,
and
will calculate the first few values of h_{1}(n) and h_{2}(n): h_{1}(0),
h_{1}(1), h_{1}(2), h_{2}(0), h_{2}(1), and h_{2}(2).
Also, your MATLAB program should plot the impulse responses so you can see what
the signals should look like.
 3.
 Run your MATLAB program to find the a_{jk}'s and initial values
needed for several different DTMF tones.
 4.
 Write a program for the 56002 which will implement the difference
equation. Modify last week's lab to do this. Perhaps you can calculate
H_{1}(z) in Accumulator a and H_{2}(z) in Accumulator b,
and add the two together for the final result.
Note that your program needs no input. For n>2 the difference equation
for H_{1} is simply
h_{1}(n) = a_{11} h_{1}(n1)  a_{12} h_{1}(n2)
Thus, if you start your system at n = 3, with
h_{1}(1) and h_{1}(2) initialized in memory,
you do not need to use the b_{jk} coefficients.
 5.
 Test your program. Listen to the different outputs and see if they
sound like touchtone tones. Look at the outputs on an oscilloscope
to determine if the two correct frequencies are present.
Bill Rison
20000913