Here is a basic outline of how this thing works. Everything comes in through the BNC jack on the front. The signal is then attenuated/amplified by the attenuator and amplifier. For the ultimate in excitement and because I dislike switches, the gain of the input stage is controlled by the PIC. The input stage also level shifts the input so it centers around 2.5v (half of full scale) to enable reading negative voltages. The front panel controls ( potentiometers ) are also read by the ADC. Finally, all the exciting info the PIC gathers is displayed on a handy 128×64 Graphics LCD.
The ‘scope can sample an input at up to 750,000 samples per second allowing for signals up to 375kHz to be viewed (sort of). The RMS value of the input is displayed on the main Oscilloscope screen. The FFT function separates the input into 128 frequency bins, and displays the frequency of the bin with the highest amplitude. [via]
Scopey II: Build a dsPIC Oscilloscope and Spectrum Analyzer - [Link]