| |||||
Technical Support On-Line Manuals µVision® User's Guide | Sine WaveThe following signal function template may be used to generate a sine wave signal. The input signal is provided to the VTREG ADC0. The variables volts, frequency, offset, and duration allow to adjust the sine wave signal.
//
// Generate Sine Wave Signal on AD Channel 0
//
signal void ADC0_Sine (void) {
float volts; // peak-to-peak voltage
float frequency; // output frequency in Hz
float offset; // voltage offset
float duration; // duration in Seconds
float val;
long i, end;
volts = 1.4;
offset = 1.6;
frequency = 1800;
duration = 0.1;
printf ("Sine Wave Signal on AD Channel 0.\n");
end = (duration * 100000);
for (i = 0 ; i < end; i++) {
val = __sin (frequency * (((float) STATES) / CLOCK) * 2 * 3.1415926);
ADC0 = (val * volts) + offset;
swatch (0.00001); // in 10 uSec steps
}
}
The above setting generates the following output.
| ||||
| |||||