Echelon Mini EVK User Manual
Page 42

the look and feel of a normal variable to the C program, with the addition of
controlled access by network configuration tools.
Neuron C also provides a way to organize the network variables and
configuration properties in the device into functional blocks, each of which
provides a collection of network variables and configuration properties, that
are used together to perform one task. These network variables and
configuration properties are called the functional block members.
Each network variable, configuration property, and functional block is
defined by a type definition contained in a resource file. Network variables
and configuration properties are defined by network variable types (NVTs)
and configuration property types (CPTs). Functional blocks are defined by
functional profiles.
Network variables, configuration properties, and functional blocks in Neuron
C can use standardized, interoperable types. The use of standardized data
types promotes the interconnection of disparate devices on a L
ON
W
ORKS
network. For configuration properties, the standard types are called
standard configuration property types (SCPTs). For network variables, the
standard types are called standard network variable types (SNVTs). For
functional blocks, the standard types are called standard functional profiles.
If you cannot find standard types or profiles that meet your requirements,
Neuron C also provides full support for user network variable types (UNVTs),
user configuration property types (UCPTs), and user functional profiles.
A Neuron C application executes in the environment provided by the Neuron
firmware. This firmware provides an event-driven scheduling system as part of
the Neuron C language’s run-time environment. Therefore, a Neuron C
application does not use a single entry point, as is common with ANSI C’s
main() function. Instead, a Neuron C application uses when statements to
specify application code to be executed in response to various system events,
much in the way of an interrupt handler or .NET event handler. The Neuron
firmware contains a scheduler, which executes these when tasks in an
orderly and deterministic fashion as and if needed. Neuron C when tasks can
be triggered by system events (such as reset), network events (such as a
network variable update or network error), I/O events (such as a new reading
from an I/O input), timer events, or any arbitrary application-defined event.
Neuron C also provides a lower-level application messaging service integrated
into the language in addition to the network variable model. While the
network variable model has the advantage of being a standardized method of
information interchange that promotes interoperability between multiple
devices from multiple vendors, application messaging is available for
proprietary and standard special-purpose solutions. Application messages
are used with the L
ON
W
ORKS
file transfer protocol, a standard mechanism
for transfer of large amounts of data, and the ISI protocol, a standard
mechanism to manage networks without intervention of a dedicated tool or
specialist.
Another Neuron C data object is the timer. Timers can be declared and
manipulated like variables. When a timer expires, the system firmware
automatically manages the timer events and notifies the program of those
events. Timers may be automatically reloading (repeating), or one-shot
timers, with a resolution ranging from 0.001 – 65,535 seconds.
36
Mini EVK User’s Guide