Table of Contents

Internal Variables and Expressions

Internal Variables

In the ComfileHMI, a Internal variable refers to a named location in the ComfileHMI hardware's memory.

If a Internal variable is used without first being declared, it will be implicitly declared and available for use immediately.

A list of variables in use can be obtained from Comfile Studio's main menu: ProjectView Addresses and Variables in Use.

String Variables

String variables were added in a subsequent version of Comfile Studio. They are declared and used with a $ prefix. For example $a="hello".

Internal Memory

Internal memory is a specific memory region in the ComfileHMI hardware. It is volatile, so it will be erased when the ComfileHMI hardware is powered off.

There are 1024 memory locations (indexed 0~1023) that can be written and read to. They can store 64-bit integers and double-precision floating point values.

Multiple values can be stored adjacently in internal memory by passing multiple value arguments to the set_mem function.

See the internal memory functions.

Conditional Expressions

Conditional expressions provide the ability to compare variables.

<, <=, ==, >=, >, != operators are supported. They are identical to the comparison operators used in the C programming language.
&& and || are boolean AND and boolean OR operators respectively.

(Example)
MotorStatus > 1
Heater1 == 0true if Heater1 is equal to 0
Heater1 != 0true if Heater1 does not equal 0

Mathematical Expressions

+, -, *, /, and % operators are supported for performing math on variables. They are identical to the arithmetic operators used in the C programming language.

(Example)
MotorStatus + 1

Bitwise Expressions

>>, <<, |, and & operators are supported for bitwise operations. They are identical to the bitwise operators used in the C programming language.

(Example)
(bits >> 2) & 1


Back to ComfileHMI