Galil DMC-1700 Manual De Usuario

Descargar
Página de 253
154 • Chapter 7 Application Programming DMC-1700/1800 
of the fraction.  The characters can be individually separated by using bit-wise operations as illustrated in the 
following example: 
#TEST 
Begin main program 
IN “ENTER”,LEN{S6} 
Input character string of up to 6 characters into variable ‘LEN’ 
FLEN=@FRAC[LEN] 
Define variable ‘FLEN’ as fractional part of variable ‘LEN’ 
FLEN=$10000*FLEN 
Shift FLEN by 32 bits (IE - convert fraction, FLEN, to integer) 
LEN1=(FLEN&$00FF) 
Mask top byte of FLEN and set this value to variable ‘LEN1’ 
LEN2=(FLEN&$FF00)/$100 Let 
variable, 
‘LEN2’ = top byte of FLEN 
LEN3=LEN&$000000FF 
Let variable, ‘LEN3’ = bottom byte of LEN 
LEN4=(LEN&$0000FF00)/$100 Let 
variable, 
‘LEN4’ = second byte of LEN 
LEN5=(LEN&$00FF0000)/$10000 Let 
variable, ‘LEN5’ = third byte of LEN 
LEN6=(LEN&$FF000000)/$1000000 Let 
variable, 
‘LEN6’ = fourth byte of LEN 
MG LEN6 {S4} 
Display ‘LEN6’ as string message of up to 4 chars 
MG LEN5 {S4} 
Display ‘LEN5’ as string message of up to 4 chars 
MG LEN4 {S4} 
Display ‘LEN4’ as string message of up to 4 chars 
MG LEN3 {S4} 
Display ‘LEN3’ as string message of up to 4 chars 
MG LEN2 {S4} 
Display ‘LEN2’ as string message of up to 4 chars 
MG LEN1 {S4} 
Display ‘LEN1’ as string message of up to 4 chars 
EN  
 
This program will accept a string input of up to 6 characters, parse each character, and then display each character.  
Notice also that the values used for masking are represented in hexadecimal (as denoted by the preceding ‘$’).  For 
more information, see section Sending Messages. 
To illustrate further, if the user types in the string “TESTME” at the input prompt, the controller will respond with 
the following: 
Response from command MG LEN6 {S4} 
Response from command MG LEN5 {S4} 
Response from command MG LEN4 {S4} 
Response from command MG LEN3 {S4} 
Response from command MG LEN2 {S4} 
Response from command MG LEN1 {S4} 
 Functions 
FUNCTION DESCRIPTION 
@SIN[n] 
Sine of n (n in degrees, with range of -32768 to 32767 and 16-bit fractional resolution) 
@COS[n] 
Cosine of n (n in degrees, with range of -32768 to 32767 and 16-bit fractional resolution) 
@TAN[n] 
Tangent of n (n in degrees, with range of -32768 to 32767 and 16-bit fractional resolution) 
@ASIN*[n] 
Arc Sine of n,  between -90
° and +90°.   Angle resolution in 1/64000 degrees. 
@ACOS* [n} 
Arc Cosine of n,  between 0 and 180
°.   Angle resolution in 1/64000 degrees. 
@ATAN* [n] 
Arc Tangent of n, between -90
° and +90°.  Angle resolution in 1/64000 degrees  
@COM[n] 
1’s Complement of n 
@ABS[n] 
Absolute value of n 
@FRAC[n] 
Fraction portion of n