beautypg.com

Fill function, Fill( to, val, len ) – Delta RMC151 User Manual

Page 370

background image

RMC70/150 and RMCTools User Manual

5.14.2.20. FILL Function

FILL(to, value, length)
Sets length registers starting at the to address to the specified value (value). Typically used

to fill an array with values. A maximum of 32 registers can be filled.

Parameters

to (Address)
The address to begin filling at. Typically an array element.
value (REAL, DINT, or DWORD)
The value to set the elements to.
length (DINT)
The number of elements to fill. A maximum of 32 registers can be filled.

Return Value

The FILL function does not return a value.

Remarks

The FILL function is typically used to fill an array with the same value, for example,

setting all array items to zero. The to location can be any location in the Variable Table or

an element in a local array.
If the to location is a local array or an element of a local array, then if length exceeds

the end of the local array, the task will fault, an error will be logged in the Event Log and

the user program running on the task will stop.
If the to location is in the Variable Table, length values will be written, even if it exceeds

the end of an array. If length exceeds the end of the Variable Table, the task will fault,

an error will be logged in the Event Log and the user program running on the task will

stop.
A maximum of 32 registers can be filled. To fill more than 32 registers, use multiple FILL

statements.

Examples

Set each of the first 4 elements in an array to one (1):
FILL(MyArray, 1, 4);

Set all elements in an array to zeroes:
FILL(MyArray, 0, LENGTH(MyArray));

Set each of elements 5 to 9 in an array to 100:
FILL(MyArray[5], 100, 5);

Fill an array of unknown size:
This example assumes the following variable have been declared in the Variable Table:

MyArray: an array

FillValue: the value with which to fill the array


This example is limited to arrays of length 128. To increase the max size, simply duplicate

the last 4 lines in the expression as many times as necessary.
Caution: It is possible to exceed the allotted execution time for the step. However, the

Verify will catch this prevent downloading to the RMC. If you do exceed the loop time,

350

Delta Computer Systems, Inc.

This manual is related to the following products: