//****************************************************************** // DEMO1.cpp // Chi-Mou Chao 2/17/2001 //****************************************************************** #include #include #include #include #include "mstep2.h" #define CARD1 0 //-------------define display color for color unsigned char DDA,AD; unsigned int LSP,HSP; unsigned char xmode,ymode; unsigned char xdir,ydir; unsigned char xson,yson; //#################################################################### void main() { unsigned char x_limit, y_limit; clrscr(); DDA = 3; AD = 5; LSP = 10; HSP = 150; xmode = CW_CCW; ymode = CW_CCW; xdir = NORMAL_DIR; ydir = NORMAL_DIR; xson = ON; yson = ON; cprintf("*** STEP-200 Simple demonstration program ***\r\n"); //----initial setting----------------------- MSTEP2_REGISTRATION(CARD1, 0x300); MSTEP2_RESET_SYSTEM(CARD1); MSTEP2_SET_VAR(CARD1, DDA, AD, LSP, HSP); MSTEP2_SET_DEFDIR(CARD1, xdir, ydir); MSTEP2_SET_MODE(CARD1, xmode, ymode); MSTEP2_SET_SERVO_ON(CARD1, xson, yson); MSTEP2_SET_NC(CARD1, NO); //----motion command------------------------ cprintf("Constant speed move...\r\n"); MSTEP2_CSP_MOVE(CARD1,CW,X_axis,20); delay(2000); MSTEP2_CSP_MOVE(CARD1,CW,X_axis,100); delay(2000); MSTEP2_CSP_MOVE(CARD1,CW,X_axis,50); delay(2000); MSTEP2_SLOW_STOP(CARD1,X_axis); do {} while (MSTEP2_IS_X_STOP(CARD1)==NO); delay(500); cprintf("High speed pulse move...\r\n"); MSTEP2_HSP_PULSE_MOVE(CARD1,X_axis,-20000); do {} while (MSTEP2_IS_X_STOP(CARD1)==NO); delay(500); cprintf("Interpolation line...\r\n"); MSTEP2_INTP_LONG_LINE(CARD1,-20000,20000, 150); do {} while (MSTEP2_IS_X_STOP(CARD1)==NO); delay(500); cprintf("State-machine type interpolation line...\r\n"); MSTEP2_INTP_LINE02(CARD1,20000,-20000, 150, 0); do {} while (MSTEP2_INTP_STOP()!=READY); do {} while (MSTEP2_IS_X_STOP(CARD1)==NO); delay(500); //----get limit switch --------------------- x_limit = MSTEP2_LIMIT_X(CARD1); cprintf("X limit = %d \r\n", x_limit); y_limit = MSTEP2_LIMIT_Y(CARD1); cprintf("Y limit = %d \r\n", y_limit); MSTEP2_RESET_SYSTEM(CARD1); }