beautypg.com

Teledyne 7600 - Infrared gas analyzer - communication manual User Manual

Page 38

background image

Teledyne Analytical Instruments

38

1510 '------------- Data receive ----------------------------

1520 PRINT
1530 LENGTH=LOC(1) 'Number of data in receiving buffer

1540 IF LENGTH=0 THEN PRINT "No answer" :END

1550 PRINT " Receiving data < ";
1560 FOR I=1 TO LENGTH

1570 X$=INPUT$(1,#1) 'Taking data from receiving buffer

1580 CC(I)=ASC(X$) 'Digitizing and storing

1590 PRINT RIGHT$("0"+HEX$(CC(I)),2);" "; 'Displaying on screen
1600 NEXT I

1610 CLOSE #1

1620 COUNT=LENGTH-2
1630 GOSUB *CRC.CALC

1700 '

1710 '------------- Transmission error check -----------------------
1720 PRINT

1730 CRC.L$=RIGHT$("0"+HEX$(CRC.L),2)

1740 CRC.H$=RIGHT$("0"+HEX$(CRC.H),2)

1750 PRINT "CRC calculation = ";CRC.L$;" ";CRC.H$
1760 IF CC(LENGTH-1)<>CRC.L THEN GOTO *ER.MESSAGE

1770 IF CC(LENGTH)<>CRC.H THEN GOTO *ER.MESSAGE

1780 GOTO *PRT.RESULT
1790 *ER.MESSAGE

1800 PRINT "Communication error"

1810 END
1900 '

1910 '------------- Display of result ---------------------------

1920 *PRT.RESULT
1930

1940 PRINT

1950 VALUE=HEX$(CC(4))+RIGHT$("0"+HEX$(CC(5)),2) '2byte Å® 1word

1960 DE$=HEX$(CC(6))+RIGHT$("0"+HEX$(CC(7)),2) '2byte Å® 1word
1970 UN$=HEX$(CC(8))+RIGHT$("0"+HEX$(CC(9)),2) '2byte Å® 1word

1980

1990 Select Case Val("&H"+DE$)
2000 Case 0

2010 CONC=Val("&H"+Value$)/1

2020 Case 1
2030 CONC=Val("&H"+Value$)/10

2040 Case 2

2050 CONC=Val("&H"+Value$)/100

2060 Case 3
2070 CONC=Val("&H"+Value$)/1000

2080 End Select

2090
2100 Select Case Val("&H"+UN$)

2110 Case 0

2120 UNIT="vol%"
2130 Case 1

2140 UNIT="ppm%"

This manual is related to the following products: