## ECE 4760: Questions related to lab exercise 1

This is the implicit contract you are agreeing to by taking the course.
2. Further reading for lab 1 is at Reading assignments and includes
Reference Manual sections 12, 14, 15
PIC32 Peripheral Libraries for MPLAB C32 Compiler sections 10, 11, 12
3. Read all of Lab 1.
4. From the PIC32 data sheet:
What is the maximum current you can draw from any i/o pin?
What is the maximum current you can source from the sum of all pins.
5. Estimate the Thevinin equvalent output resistance of an i/o pin from the PIC32 data sheet. Use table 29-9.
There will be two separate estimates corresponding to whether the output is logic-high or logic-low.

Standard musical note frequencies vary over a large range of frequencies, but we will use the range C4 to C6:

• The just-noticable-difference for frequency is about 0.1% to 0.6% of the nominal note frequency,
depending on frequency, loudness, spectral purity, note timing, and the listener's training.
We are going to set the frequency accuracy requirement to about 0.5% because it is hard to
measure much better than that using our oscilloscopes.
• For every fundamental frequency generated, all spurous frequencies must be lower
than -20 db from the amplitude of the fundmental. This distortion requirement sets a lower bound
on the synthesis sample rate (see question 1 below), but we will specify the standard audio rate of
44 KHz as the synthesis sample rate for all audio produced.
• To surpress broadband noise (clicks), every sound produced must have an amplitude rise/fall time long
compared to 1 period of the fundamental. I suggest a linear rise from zero amplitude to full amplitude,
flat sustain, and linear fall back to zero amplitude. (see Fig 1.18)
• Pure sine waves are boring to listen to, so you are required in lab 1 to use additive or FM synthesis to make more
interesting sounds.
Given these specifications:
1. what minimum DDS sample frequency is required, based on the above specs?
You will choose ONE DDS sample frequency for all tones produced.
A matlab program which computes spectrum versus number of samples/cycle.
When you run the program, notice that the first large spectral errors are at approximately
first_error_frequency = steps_per_cycle * frequency - frequency
Program output examples: 8 samples/cycle, 16 samples/cycle
2. Should you add a low pass filter to the DAC output? If so, what cutoff frequency?
3. How accurate is the internal PIC32 oscillator? Does it meet the frequency accuracy spec?
4. What kind of amplitude modulation will you use and why. Linear ramp? Cosine? Exponential? Hanning?
A matlab program computes spectrum for different envelopes. Listen to the resulting waveforms.

August 27, 2019