MPI 04.00 Reference >> mpiPlatform
mpiPlatformMemoryGet64
Declaration
int32_t mpiPlatformMemoryGet64(MPIPlatform platform, void *dst, const void *src)
Required Header: stdmpi.h
Change History: Added in the 03.04.00
Description
mpiPlatformMemoryGet64 gets (reads) 8 bytes of platform memory (starting at address src) to application memory (starting at address dst).
This function should be used to get/read any 64-bit data from the controller. This function can take up to one foreground cycle to complete. This function will take a platform lock blocking all other tasks from accessing the controller.
platform | the handle to the controller's platform object. |
---|---|
*dst | address of host data storage area. Storage MUST be two words (64 bits). |
*src | address of data (in host space) on the controller to be read. |
Returns | |
---|---|
MPIMessageOK | |
MPIPlatformMessageDEVICE_ERROR | The board type is not an XMP or ZMP controller. 64-bit data is only supported on XMP and ZMP controllers. |
MPIPlatformMessageCOPY64_FAILURE | The 64-bit value could not be read successfully. |
MPIMessageFATAL_ERROR | The platform type does not exist. |
Sample Code
... /* axisPosition.actual is defined as MPIInt64 which is 64 bits */ if (returnValue == MPIMessageOK) {
returnValue = mpiPlatformMemoryGet64(axis->platform,
&axis->axisPosition.actual,
&axis->Axis->ActualPosition);
} if (returnValue == MPIMessageOK) {
*actual = (double)axis->axisPosition.actual;
}
...