Overview
The project utilizes a PIC16F870 microcontroller to create a function generator that would produce waveforms such as sine, triangle, square, and saw with burst sweep noise.
Details
Along with the PIC16F870 microcontroller are the R/2R resistor ladder network for a real fast and cheap DAC and a few other components. A full 256 byte by 8 bit lookup table is being used by all of the sine wave. It is also possible to use a full memory page in the PIC for a lookup table as contrary to what other people are saying.
The design of the low pass filter was the only real elaboration. The unit can produce accurate frequencies down to 1 Hz since the frequency is adjustable in steps of 1, 25, and 500 Hz. Over 60 kHz of very clean sine waves can be obtained with the present design that runs on a 20 MHz clock.
The interface of the user needs to be kept to a minimum since all of the waves are generated in software. The functions are indicated by the 3 LEDs which vary depending on the type of wave as selected using the select button.
EmoticonEmoticon