NOVA electronics Inc. MCX514 -
239
-
239
-
9. Example Program
The example of C program for MCX514 is shown in this chapter. This is a 16-bit bus configuration program.
This program can be downloaded from our web site (
). File name
:
MCX514Aple.c
////////////////////////////////////////////////////////////////////////////////
// Command code definition
////////////////////////////////////////////////////////////////////////////////
//////////////////////////////
// Commands for writing data
//////////////////////////////
#define
MCX514_CMD00_JK
0x0000
// Jerk setting
#define
MCX514_CMD01_DJ
0x0001
// Deceleration increasing rate setting
#define
MCX514_CMD02_AC
0x0002
// Acceleration setting
#define
MCX514_CMD03_DC
0x0003
// Deceleration setting
#define
MCX514_CMD04_SV
0x0004
// Initial speed setting
#define
MCX514_CMD05_DV
0x0005
// Drive speed setting
#define
MCX514_CMD06_TP
0x0006
// Drive pulse
number / Finish point setting
#define
MCX514_CMD07_DP
0x0007
// Manual deceleration point setting
#define
MCX514_CMD09_LP
0x0009
// Logical position counter setting
#define
MCX514_CMD0A_RP
0x000A
// Real position counter setting
#define
MCX514_CMD0B_SP
0x000B
// Software limit + setting
#define
MCX514_CMD0C_SM
0x000C
// Software limit
−
setting
#define
MCX514_CMD0D_AO
0x000D
// Acceleration counter offsetting
#define
MCX514_CMD0E_LX
0x000E
// Logical position counter maximum value setting
#define
MCX514_CMD0F_RX
0x000F
// Real position counter maximum value setting
#define
MCX514_CMD10_MR0
0x0010
// Multi-purpose register 0 setting
#define
MCX514_CMD11_MR1
0x0011
// Multi-purpose register 1 setting
#define
MCX514_CMD12_MR2
0x0012
// Multi-purpose register 2 setting
#define
MCX514_CMD13_MR3
0x0013
// Multi-purpose register 3 setting
#define
MCX514_CMD14_HV
0x0014
// Home search speed setting
#define
MCX514_CMD15_IV
0x0015
// Speed increasing / decreasing value setting
#define
MCX514_CMD16_TM
0x0016
// Timer value setting
#define
MCX514_CMD17_SP1
0x0017
// Split pulse setting 1
#define
MCX514_CMD18_SP2
0x0018
// Split pulse setting 2
#define
MCX514_CMD19_TX
0x0019
// Interpolation / Finish point maximum value
setting
#define
MCX514_CMD1A_HLN
0x001A
// Helical rotation number setting
#define
MCX514_CMD1B_HLV
0x001B
// Helical calculation value setting
//////////////////////////////
// Commands for writing mode
//////////////////////////////
#define
MCX514_CMD20_MRM
0x0020
// Multi-purpose register mode setting
#define
MCX514_CMD21_P1M
0x0021
// PIO signal setting 1
#define
MCX514_CMD22_P2M
0x0022
// PIO signal setting 2
・
Other settings
#define
MCX514_CMD23_H1M
0x0023
// Automatic home search mode setting 1
#define
MCX514_CMD24_H2M
0x0024
// Automatic home search mode setting 2
#define
MCX514_CMD25_FLM
0x0025
// Input signal filter mode setting
#define
MCX514_CMD26_S0M
0x0026
// Synchronous action SYNC0 setting
#define
MCX514_CMD27_S1M
0x0027
// Synchronous action SYNC1 setting
#define
MCX514_CMD28_S2M
0x0028
// Synchronous action SYNC2 setting
#define
MCX514_CMD29_S3M
0x0029
// Synchronous action SYNC3 setting
#define
MCX514_CMD2A_IPM
0x002A
// Interpolation mode setting
//////////////////////////////
// Commands for reading data
//////////////////////////////
#define
MCX514_CMD30_LP
0x0030
// Logical position counter reading
#define
MCX514_CMD31_RP
0x0031
// Real position counter reading
#define
MCX514_CMD32_CV
0x0032
// Current drive speed reading
#define
MCX514_CMD33_CA
0x0033
// Current acceleration / deceleration reading
#define
MCX514_CMD34_MR0
0x0034
// Multi-purpose register 0 reading
#define
MCX514_CMD35_MR1
0x0035
// Multi-purpose register 1 reading
#define
MCX514_CMD36_MR2
0x0036
// Multi-purpose register 2 reading
#define
MCX514_CMD37_MR3
0x0037
// Multi-purpose register 3 reading
#define
MCX514_CMD38_CT
0x0038
// Current timer value reading
#define
MCX514_CMD39_TX
0x0039
//
Interpolation / Finish point maximum value