SendConfiguration Method - neoVI API
This method sends configuration information to the hardware.
int _stdcall icsneoSendConfiguration(int hObject, unsigned char *pData, int lNumBytes);
Parameters
hObject
[in] Specifies the driver object created by OpenNeoDevice.
pData
[in] This is an array configuration bytes. The format of this array is defined in the Configuration Array help topic. This data should be filled in with a call to GetConfiguration before calling SendConfiguration. The size of this array must always be 1024 bytes.
lNumBytes
[in] This must always be set to 1024.
Return Values
Returns 1 if successful, 0 if an error occurred. GetLastAPIError must be called to obtain the specific error. The errors that can be generated by this function are:
NEOVI_ERROR_DLL_NEOVI_NO_RESPONSE = 75
Remarks
This method will only update the configuration defined in the Configuration Array topic. It will also apply checking to the data so that a neoVI is not programmed to an illegal state. For example, setting the CAN controller to an illegal operating mode.
Examples
unsigned char bConfigBytes[1024];
int iNumConfigBytes = 1024;
if(m_bPortOpen)
{
lResult = icsneoGetConfiguration(hObject, bConfigBytes, &iNumConfigBytes);
if (lResult == 0)
MessageBox(hWnd,TEXT("Problem Reading Configuration"),TEXT("neoVI Example"),0);
else
{
iOldCNF1=bConfigBytes[NEO_CFG_MPIC_HS_CAN_CNF1];
iOldCNF2=bConfigBytes[NEO_CFG_MPIC_HS_CAN_CNF2];
iOldCNF3=bConfigBytes[NEO_CFG_MPIC_HS_CAN_CNF3];
// 250 K for Value CAN 500k for neoVI (neoVI and valuecan use different CAN controller rates)
bConfigBytes[NEO_CFG_MPIC_HS_CAN_CNF1] = 0x03;
bConfigBytes[NEO_CFG_MPIC_HS_CAN_CNF2] = 0xB8;
bConfigBytes[NEO_CFG_MPIC_HS_CAN_CNF3] = 0x05;
lResult = icsneoSendConfiguration(hObject, bConfigBytes, iNumConfigBytes);
if (lResult == 0)
MessageBox(hWnd,TEXT("Problem Updating Configuration"),TEXT("neoVI Example"),0);
else
{
wsprintf(szOut,TEXT("Old Values: HSCAN CNF1 = %x HSCAN CNF2 = %x HSCAN CNF3 = %x \n\nNew Values HSCAN CNF1 = %x HSCAN CNF2 = %x HSCAN CNF3 = %x "),
iOldCNF1,
iOldCNF2,
iOldCNF3,
bConfigBytes[NEO_CFG_MPIC_HS_CAN_CNF1],
bConfigBytes[NEO_CFG_MPIC_HS_CAN_CNF2],
bConfigBytes[NEO_CFG_MPIC_HS_CAN_CNF3]);
MessageBox(hWnd,szOut,TEXT("neoVI Example"),0);
}
}
}
else
MessageBox(hWnd,TEXT("Port Not Open"),TEXT("neoVI Example"),0);
Last updated