These keywords may be used in an applications program to decode data and they may also be used in conditional statements with logical operators.

Example

Instruction

Interpretation

JP #LOOP,P2CD< >3

Checks to see if status code is 3 (number received)

JP #P,P1CH="V"

Checks if last character received was a V

PR P2NM

Assigns received number to position

JS #XAXIS,P1ST="X"

Checks to see if received string is X

Using Communication Interrupt

The DMC-2x00 provides a special interrupt for communication allowing the application program to be interrupted by input from the user. The interrupt is enabled using the CI command. The syntax for the command is CI n:

n = 0 n = 1 n = 2 n = -1

Don't interrupt Port 2 Interrupt on <enter> Port 2 Interrupt on any character Port 2 Clear any characters in buffer

The #COMINT label is used for the communication interrupt. For example, the DMC-2x00 can be configured to interrupt on any character received on Port 2. The #COMINT subroutine is entered when a character is received and the subroutine can decode the characters. At the end of the routine the EN command is used. EN,1 will re-enable the interrupt and return to the line of the program where the interrupt was called, EN will just return to the line of the program where it was called without re- enabling the interrupt. As with any automatic subroutine, a program must be running in thread 0 at all times for it to be enabled.

Example

A DMC-2x00 is used to jog the A and B axis. This program automatically begins upon power-up and allows the user to input values from the main serial port terminal. The speed of either axis may be changed during motion by specifying the axis letter followed by the new speed value. An S stops motion on both axes.

Instruction

Interpretation

#AUTO

Label for Auto Execute

speedA=10000

Initial A speed

speedB=10000

Initial B speed

CI 2

Set Port 2 for Character Interrupt

JG speedA, speedB

Specify jog mode speed for A and B axis

BGXY

Begin motion

#PRINT

Routine to print message to terminal

MG{P2}"TO CHANGE SPEEDS"

Print message

MG{P2}"TYPE A OR B"

 

MG{P2}"TYPE S TO STOP"

 

#JOGLOOP

Loop to change Jog speeds

JG speedA, speedB

Set new jog speed

JP #JOGLOOP

 

EN

End of main program

DMC-2X00

Chapter 7 Application Programming y 107

Page 162
Image 162
Galil DMC-2X00 user manual Using Communication Interrupt