This sample application is a digital frequency synthesizer that generates frequencies in the range of 0 to 20 MHz in 0.1 Hz steps. The frequency is set with a rotary encoder and displayed on an LCD. In addition there is an RS-232 serial port input which accepts commands from a PC. Accompanying PC applications implement more advanced features such as a sweep generator.

It's well documented and contains a wide variety of programming techniques including:
Remarkably, it all fits inside a PIC 16F84.

The files in this package:
README.HTML- This overview file.
README.TXT- Texte overview file.
DDS.PRJ- Project file used by Compiler IDE.
DDS.C- The PIC application.
SG_CMD.H- Commands sent thru serial port. Used by DDS.C and others below.
WEIGHT.C- Generates WEIGHT.H, depending on the clock frequency.
WEIGHT.EXE
WEIGHT.H- Mapping from BCD display to binary codes sent to the frequency synthesizer chip.
These run on PC and send commands to PIC thru serial port:
MESSAGE.C
MESSAGE.EXE
- Display message on LCD.
FREQ.C
FREQ.EXE
- Set frequency.
DAC.C
DAC.EXE
- Set D/A converter.
SWEEP.C
SWEEP.EXE
- Sweep generator.

Converted to HTML by Philippe Corbes (Email:philippe.corbes@laposte.net) 01/12/2002.