Agilent Technologies 66319b Video Games User Manual


 
D – Example Programs
170
viPrintf(instrumentHandle, "SENS:FUNC \"VOLT\"\n");
viPrintf(instrumentHandle, "TRIG:ACQ:LEV:VOLT %.5lg\n", 2.75);
viPrintf(instrumentHandle, "TRIG:ACQ:HYST:VOLT %.5lg\n", 0.1);
viPrintf(instrumentHandle, "TRIG:ACQ:SLOP:VOLT POS\n");
viPrintf(instrumentHandle, "TRIG:ACQ:COUN:VOLT %ld\n", 1);
viPrintf(instrumentHandle, "TRIG:ACQ:SOUR INT\n");
/* initiate the acquisition system for measurement trigger */
printf ("Arm acquisition system...\n");
viPrintf(instrumentHandle, "INIT:NAME ACQ\n");
/* must allow time for pre-triggered samples */
printf ("Pre-trigger delay...\n");
/* trigger the acquisition by changing the output voltage level to 5V */
printf ("Trigger acquisition...\n");
viPrintf(instrumentHandle, "VOLT %.5lg\n", 5.0);
/* fetch dynamic measurements from the same measurement data */
viQueryf(instrumentHandle, "FETC:VOLT?\n", "%lf", &resultDC);
viQueryf(instrumentHandle, "FETC:VOLT:ACDC?\n", "%lf", &resultRMS);
viQueryf(instrumentHandle, "FETC:VOLT:MAX?\n", "%lf", &resultMAX);
viQueryf(instrumentHandle, "FETC:VOLT:MIN?\n", "%lf", &resultMIN);
viQueryf(instrumentHandle, "FETC:VOLT:HIGH?\n", "%lf", &resultHIGH);
viQueryf(instrumentHandle, "FETC:VOLT:LOW?\n", "%lf", &resultLOW);
/* display measurement results */
printf("Dynamic voltage measurements:\n");
printf("dc=%f V\n rms=%f V\n max=%f V\n min=%f V\n high=%f V\n low=%f
V\n",
resultDC, resultRMS, resultMAX, resultMIN, resultHIGH, resultLOW);
/* fetch first 10 data points from the measurement */
numReadings = 10;
viQueryf(instrumentHandle, "FETC:ARR:VOLT?\n", "%,#lf%*t", &numReadings,
&voltArray[0]);
for (i=0; i<numReadings; i++)
printf(" Array Data[%d] = %f V\n", i, voltArray[i]);
/* reset sweep parameters for faster measurement */
viPrintf(instrumentHandle, "SENS:SWE:TINT %.5lg;POIN %ld;OFFS:POIN %ld\n",
15.6E-6, /* sampling rate */
2048, /* sweep size */
0); /* pre-trigger points */
/* Measure final dc voltage level at the output terminals */
viQueryf(instrumentHandle, "MEAS:VOLT?\n", "%lf", &measvoltage);
printf (" Output Voltage = %f V\n", measvoltage);
/* close all opened sessions */
viClose(instrumentHandle);
viClose(defRM);
printf ( "PROGRAM COMPLETED \n");
printf("Press Enter key to continue...\n");
getchar();
return VI_SUCCESS ;
}