![](https://pdfstore-manualsonline.prod.a.ki/pdfasset/5/d7/5d720816-19b5-4859-9a46-b543c4868a04/5d720816-19b5-4859-9a46-b543c4868a04-bg8f.png)
Chapter 3 143
Programming Examples
Measuring Noise
/*Program Variables*/
ViStatus viStatus = 0;
double dMarkAmp =0.0;
long lOpc=0L;
/*Open a GPIB session at address 18*/
viStatus=viOpenDefaultRM(&defaultRM);
viStatus=viOpen(defaultRM,"GPIB0::18",VI_NULL,VI_NULL,&viESA);
if(viStatus)
{
printf("Could not open a session to GPIB device at address 18!\n");
exit(0);
}
/*Clear the Instrument*/
viClear(viESA);
/*Reset the Instrument*/
viPrintf(viESA,"*RST\n");
/*Display the program heading */
printf("\n\t\t Noise Program \n\n" );
/* Check for the instrument model number and route the 50MHz signal accordingly*/
Route50MHzSignal();
/*Set the analyzer center frequency to 50MHz*/
viPrintf(viESA,"SENS:FREQ:CENT 50e6\n");
/*Set the analyzer span to 10MHz*/
viPrintf(viESA,"SENS:FREQ:SPAN 10e6\n");
/*Set the analyzer in a single sweep mode*/
viPrintf(viESA,"INIT:CONT 0 \n");
/*Trigger a sweep and wait for sweep completion*/
viPrintf(viESA,"INIT:IMM;*WAI \n");
/*Set the marker to the maximum peak*/
viPrintf(viESA,"CALC:MARK:MAX \n");
/*Check for operation complete*/
viQueryf(viESA, "*OPC?\n", "%d", &lOpc);
if (!lOpc)
{
printf("Program Abort! error ocurred: last command was not completed!\n");
exit(0);