EasyManua.ls Logo

Campbell CR800 Series - Serial I;O Q & a

Campbell CR800 Series
598 pages
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Loading...
Section 7. Installation
300
'Assign +/- Sign
For i=1 To 6
If OneMinData(i) < 0 Then
'Note: chr45 is - sign
OutFrag(i)=CHR(45) & FormatFloat(ABS(OneMinData(i)),"%05g")
Else
'Note: chr43 is + sign
OutFrag(i)=CHR(43) & FormatFloat(ABS(OneMinData(i)),"%05g")
EndIf
Next i
'Concatenate Printable ASCII string, then push string out RS-232
'(first 2 fields are ID, hhmm):
OutString = "01+0115." & " 02+" & FormatFloat(rTime(4),"%02.0f") & _
FormatFloat(rTime(5),"%02.0f")
OutString = OutString & " 03" & OutFrag(1) & " 04" & OutFrag(2) & _
" 05" & OutFrag(3)
OutString = OutString & " 06" & OutFrag(4) & " 07" & OutFrag(5) & _
CHR(13) & CHR(10) & "" 'add CR LF null
'Send printable ASCII string out RS-232 port
SerialOut(ComRS232,OutString,"",0,220)
EndIf
NextScan
EndProg
7.7.17.7 Serial I/O Q & A
Q: I am writing a CR800 program to transmit a serial command that contains a
null character. The string to transmit is:
CHR(02)+CHR(01)+"CWGT0"+CHR(03)+CHR(00)+CHR(13)+CHR(10)
How does the logger handle the null character?
Is there a way that we can get the logger to send this?
A: Strings created with CRBasic are NULL terminated. Adding strings together
means the second string will start at the first null it finds in the first string.
Use SerialOutBlock() instruction, which lets you send null characters, as shown
below.
SerialOutBlock(COMRS232, CHR(02) + CHR(01) + "CWGT0" +
CHR(03),8)
SerialOutBlock(COMRS232, CHR(0),1)
SerialOutBlock(COMRS232, CHR(13) + CHR(10),2)
Q: Please summarize when the CR800 powers the RS-232 port. I get that there is
an "always on" setting. How about when there are beacons? Does the
SerialOpen() instruction cause other power cycles?
A: The RS-232 port is left on under the following conditions:
When the setting RS-232Power
(p. 548) is set
When a SerialOpen() with argument COMRS232 is used in the program

Table of Contents

Related product manuals