2 memory conservation, 3 memory reset, 1 full memory reset – Campbell Scientific CR1000 Measurement and Control System User Manual
Page 339

Section 8. Operation
339
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
CR1000 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. 236).
8.3.3 Memory Reset
Four features are available for complete or selective reset of CR1000 memory.
8.3.3.1 Full Memory Reset
Full memory reset occurs when an operating system is sent to the CR1000 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
• Restores settings to default.