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;
}
...

See Also

mpiPlatformMemorySet64