EasyManua.ls Logo

Rigol DP831A - Page 121

Rigol DP831A
134 pages
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Loading...
Chapter 4 Programming Demos RIGOL
DP800 Programming Guide 4-17
status = viWrite(instr, (unsigned char *)SendBuf, strlen(SendBuf), &retCount);
//close the instrument
status = viClose(instr);
status = viClose(defaultRM);
return bWriteOK;
}
2) Encapsulate the read operation of VISA for easier operation.
bool CDP800_DEMO_VCDlg::InstrRead(CString strAddr, CString *pstrResult)
//Read from the instrument
{
ViSession defaultRM,instr;
ViStatus status;
ViUInt32 retCount;
char * SendAddr = NULL;
unsigned char RecBuf[MAX_REC_SIZE];
bool bReadOK = false;
CString str;
//Change the address's data style from CString to char*
SendAddr = strAddr.GetBuffer(strAddr.GetLength());
strcpy(SendAddr,strAddr);
strAddr.ReleaseBuffer();
memset(RecBuf,0,MAX_REC_SIZE);
//open the VISA instrument
status = viOpenDefaultRM(&defaultRM);
if (status < VI_SUCCESS)
{
// Error Initializing VISA...exiting
AfxMessageBox("No VISA instrument was opened !");
return false;
}
//open the instrument
status = viOpen(defaultRM, SendAddr, VI_NULL, VI_NULL, &instr);
//read from the instrument
status = viRead(instr, RecBuf, MAX_REC_SIZE, &retCount);
//close the instrument
status = viClose(instr);
status = viClose(defaultRM);
(*pstrResult).Format("%s",RecBuf);
return bReadOK;
}

Table of Contents

Other manuals for Rigol DP831A

Related product manuals