HP E1340A Service Manual page 96

Function generator
Hide thumbs Also See for E1340A:
Table of Contents

Advertisement

98 Verification Tests - C Programs
/*--------------------Set up Spectrum Analyzer-----------------------------*/
printf ("\n\nSet up Spectrum Analyzer");
printf ("\n\n 1. Ref Level = 25 dBm");
printf ("\n 2. Span = 1 kHz");
printf ("\n 3. Resolution BW = 30 Hz");
printf ("\n 4. Video BW = 30 Hz");
printf ("\n 5. Connect Spectrum Analyzer to AFG Output");
printf ("\n\nPress ENTER when ready");
getchar ();
/*--------------------Perform Test-----------------------------------------*/
for (i = 0;i <= 5;i ++)
{
if (i == 3)
{
dbm_out = 10;
iprintf (id, "VOLT %uDBM", dbm_out);
printf ("\n\nSet Spectrum Analyzer Ref Level to 12 dbm");
printf ("\nPress ENTER to continue");
getchar ();
}
iprintf (id, "ABORT\n");
iprintf (id, "FREQ %lf\n", freq[i]);
iprintf (id, "INIT:IMM\n");
printf ("\n\nFUNDAMENTAL");
printf ("\n\n Set Spectrum Analyzer center frequency to %.2e Hz", freq[i]);
printf ("\n Measure amplitude at the center frequency");
printf ("\n Enter amplitude (in dBm) : ");
scanf ("%lf", &baseline);
sum = 0;
for (harmonic = 2;harmonic <= 5;harmonic ++)
{
printf ("\n\nHARMONIC = %u", harmonic); /* Enter harmonic amplitude */
printf ("\n\n Set Spectrum Analyzer center frequency to %.2e Hz",
freq[i]*harmonic);
printf ("\n Measure amplitude at the center frequency");
printf ("\n Enter amplitude (in dBm) : ");
scanf ("%lf", &reading);
result = reading - baseline;
sum = sum + pow (10,(result/10));
}
thd = 20 * log10(sqrt(sum));
printf ("\n\nAmplitude = %u dBm", dbm_out);
printf ("\nFundamental Frequency = %.2e Hz", freq[i]);
printf ("\nTHD = %4lf dBc", thd);
printf ("\n\nPress ENTER to continue");
/* Set AFG output to 10dBm */
/* Set Frequency */
/* Enter fundamental amplitude */
/* Sum squared voltages */
/* Calculate THD in dBc */
/* Display results */
Appendix A

Advertisement

Table of Contents
loading

Table of Contents