National Instruments NI-Motion User Manual
Page 231

Chapter 14
Onboard Programs
© National Instruments Corporation
14-23
err = flex_load_target_pos(boardID, axis, 5000,
0xFF);
CheckError;
// Wait for line 1 on port 1 to go active to finish
executing
err = flex_wait_on_event(boardID, NIMC_IO_PORT1,
NIMC_WAIT, NIMC_CONDITION_IO_PORT_MATCH,
(u8)(1<<1)/*Indicates line 1*/, 0, NIMC_MATCH_ALL,
10000 /*time out*/, 0);
CheckError;
// Start the move
err = flex_start(boardID, axis, 0);
CheckError;
// Wait for move to complete
err = flex_wait_on_event(boardID, 0, NIMC_WAIT,
NIMC_CONDITION_MOVE_COMPLETE, (u8)(1< NIMC_MATCH_ALL, 1000 /*time out*/, 0); CheckError; // Jump unconditionally to label 1 and check IO line again err = flex_jump_on_event (boardID, 0, NIMC_CONDITION_TRUE, 0, 0, NIMC_MATCH_ALL, 1/*label number*/); CheckError; // End Program Storage err = flex_end_store(boardID, 1); CheckError; return ;// Exit the Application ////////////////////// // Error Handling nimcHandleError; //NIMCCATCHTHIS: // Check to see if there were any Modal Errors if (csr & NIMC_MODAL_ERROR_MSG){ do { //Get the command ID, resource ID, and the error code of the //modal error from the error stack on the device flex_read_error_msg_rtn (boardID,&commandI D,&resourceID, &errorCode); nimcDisplayError(errorCode,commandID,res ourceID);