EasyManua.ls Logo

Campbell CR800 Series - Program Compiles; Does Not Run Correctly; NAN and ±INF; Measurements and NAN

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 10. Troubleshooting
466
doubt. The PC compiler version is shown on the first line of the
compile results.
The program has large memory requirements for data tables or variables
and the CR800 does not have adequate memory. This normally is
flagged at compile time, in the compile results. If this type of error
occurs, check the following:
o Copies of old programs on the CPU: drive. The CR800 keeps
copies of all program files unless they are deleted, the drive is
formatted, or a new operating system is loaded with DevConfig
(p.
103).
o That the USR: drive, if created, is not too large. The USR: drive
may be using memory needed for the program.
o that a program written for a 4 MB CR800 is being loaded into a 2
MB CR800.
10.5.2 Program Compiles / Does Not Run Correctly
If the program compiles but does not run correctly, timing discrepancies are often
the cause. Neither CRBasic Editor nor the CR800 compiler attempt to check
whether the CR800 is fast enough to do all that the program specifies in the time
allocated. If a program is tight on time, look further at the execution times.
Check the measurement and processing times in the Status table (MeasureTime,
ProcessTime, MaxProcTime) for all scans, then try experimenting with the
InstructionTimes() instruction in the program. Analyzing InstructionTimes()
results can be difficult due to the multitasking nature of the logger, but it can be a
useful tool for fine tuning a program.
10.5.3 NAN and ±INF
NAN (not-a-number) and ±INF (infinite) are data words indicating an exceptional
occurrence in datalogger function or processing. NAN is a constant that can be
used in expressions as shown in the following code snip that sets a CRBasic
control feature (a flag) if the wind direction is NAN:
If WindDir = NAN Then
WDFlag = False
Else
WDFlag = True
EndIf
NAN can also be used in conjunction with the disable variable (DisableVar) in
output processing (data storage) instructions as shown in CRBasic example Using
NAN to Filter Data
(p. 469).
10.5.3.1 Measurements and NAN
A NAN indicates an invalid measurement.

Table of Contents

Related product manuals