Neuron c overview – Echelon Neuron C User Manual
Page 19
Neuron C Reference Guide
xix
Neuron C Overview
Neuron C is a programming language based on ANSI C that is designed for
Neuron Chips and Smart Transceivers. It includes network communication,
input/output (I/O), and event- and interrupt-handling extensions to ANSI C,
which make it a powerful tool for the development of L
ON
W
ORKS
applications.
Neuron C implements all the basic ANSI C types and type conversions as
necessary. In addition to the ANSI C data constructs, Neuron C provides some
unique data elements.
Network variables
are fundamental to Neuron C and
L
ON
W
ORKS
applications. Network variables are data constructs that have
language and system firmware support to provide something that looks like a
variable in a C program, but has additional properties of propagating across a
L
ON
W
ORKS
network to or from one or more other devices on that network. The
network variables make up part of the
device interface
for a L
ON
W
ORKS
device.
Configuration properties
are Neuron C data constructs that are another part of
the device interface. Configuration properties allow the device’s behavior to be
customized using a network management tool such as the LonMaker Integration
Tool or a customized plug-in created for the device.
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
and
configuration
property types
. Functional blocks are defined by
functional profiles
(which are
also called
functional profile templates
).
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; pronounced
skip-its
).
• For network variables, the standard types are called standard network
variable types (SNVTs; pronounced
snivets
).
• For functional blocks, the standard types are called standard functional
profiles (SFPTs).
• 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 (UFPTs).
Neuron C applications run in the environment provided by the Neuron firmware.
The Neuron firmware – also known as the
Neuron Chip Firmware
– implements
the LonTalk
®
protocol and provides an
event-driven scheduling system
.
Neuron C also provides a lower-level
messaging service
integrated into the
language in addition to the network variable model. The network variable model
has the advantage of being a standardized method of information interchange,