'Main Program 
BeginProg 
 Scan(1,Sec,1,0) 
 
 'Reset and Increment Counter 
 If Oscillator = 2 Then Oscillator = 0 
 Oscillator = Oscillator + 1 
 
 'Process and Control 
 If Flag(1) = True Then 
 DisableVar = True 
 EndIf 
 Else 
 DisableVar = False 
 EndIf 
 
 'Call Data Tables and Store Data 
 CallTable(OscAvgData) 
 
 NextScan 
 
 
Numbers of Records 
The exact number of records that can be stored in a data table is governed by a 
complex set of rules, the summary of which can be found in the appendix 
Numbers of Records in Data Tables
 (p. 466). 
 
7.8.4.10.2  Declaring Subroutines 
Read More  See section Subroutines (p. 288) for more information on programming 
with subroutines. 
Subroutines allow a section of code to be called by multiple processes in the main 
body of a program. Subroutines are defined before the main program body of a 
program. 
Note A particular subroutine can be called by multiple program sequences 
simultaneously. To preserve measurement and processing integrity, the CR1000 
queues calls on the subroutine, allowing only one call to be processed at a time in 
the order calls are received. This may cause unexpected pauses in the conflicting 
program sequences. 
 
7.8.4.10.3  'Include' File 
An alternative to a subroutine is an 'include' file.  An 'include' file is a CRBasic 
program file that resides on the CR1000 CPU: drive and compiles as an insert to 
the CRBasic program.  It may also run on its own 
(p. 116). It is essentially a 
subroutine stored in a file separate from the main program file.  It can be used 
once or multiple times by the main program, and by multiple programs.  The file 
begins with the SlowSequence instruction and can contain any code. 
Procedure to use the "Include File": 
1. Write the file, beginning with the SlowSequence instruction followed by any 
other code. 
147