2 xtc/2 program with checksum – INFICON XTC/3 Thin Film Deposition Controller Operating Manual User Manual

Page 161

Advertising
background image

5 - 49

PN

07

4-

44

6-

P1

J

XTC/3 Operating Manual

220 IF I$ = NAK$ THEN RETURN :’ CHARACTER IS RECEIVED
GOTO PRINT RESPONSE.
230 RESPONSE$ = RESPONSE$ + I$ :’--BUILD RESPONSE STRING
240 GOTO 200 :’ CHARACTER BY CHARACTER.
250 ’
260 ’----READ SERIALLY EACH CHARACTER FROM THE INSTRUMENT INTO VARIABLE I$----
270 ON TIMER (TOUT) GOSUB 300: TIMER ON
280 IF LOC(1) < 1 THEN 280 ELSE TIMER OFF: I$ = INPUT$(1,#1)
290 RETURN
300 TIMER OFF :’--INDICATE IF A CHARACTER
310 RESPONSE$ = "RECEIVE TIMEOUT" :’ IS NOT RECEIVED WITHIN
320 I$ = NAK$: RETURN 290 :’ 3 SECS.

5.3.5.7.2 XTC/2 Program With Checksum

10 ’--XTC/3 RS232 COMMUNICATIONS PROGRAM WITH CHECKSUM USING THE INFICON
FORMAT--
20 ’
30 ’------THIS PROGRAM IS DESIGNED TO TRANSMIT INDIVIDUAL COMMANDS TO XTC/3
AND ACCEPT THE APPROPRIATE RESPONSE FROM XTC/3, WRITTEN IN GWBASIC 2.32.
40 ’
50 OPEN "COM1:9600,N,8,1,cs,ds" AS #1 :’--OPEN COMM PORT 1
60 STX$ = CHR$(2) : NAK$ = CHR$(21) : ACK$ = CHR$(6) :’--DEFINE ASCII CODES
70 ’
80 INPUT "ENTER COMMAND"; CMD$ :’--ENTER COMMAND TO XTC/3
90 GOSUB 170 :’--GOTO TRANSMIT COMMAND SUBROUTINE
100 IF RESPONSE$ = "RECEIVE TIMEOUT" THEN 140
110 L = LEN(RESPONSE$): L = L-1 :’--STRIP OFF THE ACK OR
120 RESPONSE$ = RIGHT$(RESPONSE$,L) :’ NAK CHARACTER FROM THE
130 ’ :’ RESPONSE STRING.
140 PRINT RESPONSE$ :’--PRINT XTC/3 RESPONSE
150 GOTO 80 :’--LOOP BACK FOR ANOTHER COMMAND.
160 ’
170 ’----TRANSMIT COMMAND AND RECEIVE RESPONSE SUBROUTINE----
180 ’
190 ’--BUILD COMMAND MESSAGE STREAM AND SEND TO XTC/3--
200 SIZEM$ = CHR$(LEN(CMD$) / 256) :’--CALCULATE THE 2 BYTE
210 SIZEL$ = CHR$(LEN(CMD$) MOD 256) :’ SIZE OF THE COMMAND.
220 ’
230 CHECKSUM = 0 :’--INITIALIZE CHECKSUM TO
240 FOR X = 1 TO LEN(CMD$) :’ ZERO AND CALCULATE A
250 CHECKSUM = CHECKSUM + ASC(MID$(CMD$,X,1)) :’ CHECKSUM ON THE COMMAND
260 NEXT X :’ STRING.
270 CHECKSUM$ = CHR$(CHECKSUM AND 255) :’--USE LOW ORDER BYTE AS CHECKSUM.

Advertising