C/c++ code, C/c++ code -30 – National Instruments NI-Motion User Manual

Page 238

Advertising
background image

Chapter 14

Onboard Programs

NI-Motion User Manual

14-30

ni.com

C/C++ Code

The following example code is not necessarily complete, and may
not compile if copied exactly. Refer to the

examples

folder on the

NI-Motion CD for files that are complete and compile as is.

// Main Function

void main(void)

{

u8

boardID;// Board identification number

u8

axis; // Axis number

u16

csr = 0;// Communication status register

i32

targetPosition;

i32

multiplier;

u16

axisStatus;

u16

moveCompleteStatus;

//Variables for modal error handling

u16

commandID;// The commandID of the function

u16

resourceID;// The resource ID

i32

errorCode;// Error code

///////////////////////////////

// Set the board ID

boardID = 1;

// Set the axis number

axis = NIMC_AXIS1;

// Set the move length

targetPosition = 5000;

// Set the multiplier

multiplier = -1;

//------------------------------------------------

// Onboard program. This onboard program moves an

axis back and //forth between targetPosition and

-targetPosition. Before //reversing directions it

//indicates to the host computer that it //is about

to do so.

//-------------------------------------------------

// Initialize onboard variable 2 to the multiplier

used to change //the target position

err = flex_load_var(boardID, multiplier, 2);

CheckError;

// Initialize onboard variable 1 to the target

position

Advertising