beautypg.com

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

background image

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