September
1998, Issue 98
PIC'Spectrum
Audio
Spectrum Analyzer
WRAP
UP
I
got the display looking quite good, with an interrupt
routine taking ~50% of the available CPU time for video
generation. The main program has time to do more than
10 FFT calculations per second, giving a true real-time
display.
With
my technique, the time spent in the video-generation
code depends greatly on the image being displayed. If
the screen is full of information, the time left for
the main program is near zero. So, you cant use
this technique for all video-based projects.
To
get satisfactory results with the video-display code,
I sacrificed maintainability. Changes to the display
may require tremendous efforts in keeping the real-time
constraints unchanged. However, it works, and the basic
principles may be used to get cheap video display devices
like PICSpectrum.
For
your next video-based project, try to do it with a software
video only. If you have strict maintainability requirements,
add a CRT controller chip or select a microcontroller
with one built in. On the other hand, the FFT implementation
is easily reused.
A
final note: Im sure this project wouldnt
be possible without a good simulator or an ICE. Thanks
to Microchip for providing a good simulator for free
on the Web!