2 memory conservation, 3 memory reset, 1 full memory reset – Campbell Scientific CR800 and CR850 Measurement and Control Systems User Manual
Page 323: Table 70. cr800 memory allocation

Section 8. Operation
323
empty string. There will be one descriptor for each field name given on
Header Line 2.
Record Element 1 – Timestamp
Data without timestamps are usually meaningless. Nevertheless, the
TableFile() instruction optionally includes timestamps in some formats.
Record Element 2 – Record Number
Record numbers are optionally provided in some formats as a means to
ensure data integrity and provide an up‐count data field for graphing
operations. The maximum record number is &hffffffff (a 32‐bit
number), then the record number sequence restarts at zero. The CR800
reports back to the datalogger support software 31 bits, or a maximum
of &h7fffffff, then it restarts at 0. If the record number increments once
a second, restart at zero will occur about once every 68 years.
8.3.2 Memory Conservation
One or more of the following memory-saving techniques can be used on the rare
occasions when a program reaches memory limits:
• Declare variables as DIM instead of Public. DIM variables do not require
buffer memory for data retrieval.
• Reduce arrays to the minimum size needed. Arrays save memory over the
use of scalars as there is less "meta-data" required per value. However, as a
rough approximation, 192000 (4-kB memory) or 87000 (2-kB memory)
variables will fill available memory.
• Use variable arrays with aliases instead of individual variables with unique
names. Aliases consume less memory than unique variable names.
• Confine string concatenation to DIM variables.
• Dimension string variables only to the size required.
Read More! More information on string variable-memory use and conservation is
available in String Operations
(p. 237).
8.3.3 Memory Reset
Four features are available for complete or selective reset of CR800 memory.
8.3.3.1 Full Memory Reset
Full memory reset occurs when an operating system is sent to the CR800 using
DevConfig or when entering 98765 in the Status table field FullMemReset. A
full memory reset does the following:
• Clears and formats CPU: drive (all program files erased).
• Clears SRAM data tables.
• Clears Status-table elements