04.01.2015 Views

CR1000 Manual - Campbell Scientific

CR1000 Manual - Campbell Scientific

CR1000 Manual - Campbell Scientific

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Section 10. Troubleshooting<br />

incremented by all events that leave gaps in data, including cycling power to the<br />

<strong>CR1000</strong>.<br />

10.3.1.5 ProgErrors<br />

10.3.1.6 MemoryFree<br />

If not zero, investigate.<br />

A number less than 4 kB is too small and may lead to memory buffer-related<br />

errors.<br />

10.3.1.7 VarOutOfBounds<br />

10.3.1.8 WatchdogErrors<br />

10.3.1.8.1 Status Table WatchdogErrors<br />

When programming with variable arrays, care must be taken to match the array<br />

size to the demands of the program. For instance, if an operation attempts to write<br />

to 16 elements in array ExArray(), but ExArray() was declared with only 15<br />

elements (for example, Public ExArray(15)), the VarOutOfBound runtime error<br />

counter is incremented in the Status table each time the absence of a sixteenth<br />

element is encountered.<br />

The <strong>CR1000</strong> attempts to catch VarOutOfBound errors at compile time (not to be<br />

confused with the CRBasic Editor pre-compiler, which does not). When a<br />

VarOutOfBound error is detected at compile time, the <strong>CR1000</strong> attempts to<br />

document which variable is out of bounds at the end of the CompileResults<br />

message in the Status table. For example, the <strong>CR1000</strong> may detect that<br />

ExArray() is not large enough and write Warning:Variable ExArray out of<br />

bounds to the Status table.<br />

The <strong>CR1000</strong> does not catch all out-of-bounds errors.<br />

Watchdog errors indicate the <strong>CR1000</strong> has crashed, which can be caused by power<br />

or transient voltage problems, or an operating system or hardware problem.<br />

Watchdog errors may cause telecommunications disruptions, which can make<br />

diagnosis and remediation difficult. The external keyboard / display will often<br />

work as a user interface when telecommunications fail. Information on <strong>CR1000</strong><br />

crashes may be found in three places.<br />

• WatchdogErrors register in the Status table (p. 527)<br />

• Watchdog.txt file on the CPU: drive (p. 333)<br />

• Crash information may be posted at the end of the CompileResults register<br />

in the Status (p. 527) table<br />

Non-zero indicates the <strong>CR1000</strong> has crashed, which can be caused by power or<br />

transient-voltage problems, or an operating-system or hardware problem. If<br />

power or transient problems are ruled out, the <strong>CR1000</strong> probably needs an<br />

operating-system update or repair (p. 3) by <strong>Campbell</strong> <strong>Scientific</strong>.<br />

426

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!