Introduction to neuron c, Unique aspects of neuron c – Echelon NodeBuilder FX User Manual

Page 194

Advertising
background image

180

Developing Device Applications

Introduction to Neuron C

Neuron C Version 2.2 is a programming language based on ANSI C that you can use to develop
applications for Neuron Chips and Smart Transceivers. It includes network communication, I/O,
interrupt-handling, and event-handling extensions to ANSI C, which make it a powerful tool for the
development of L

ON

W

ORKS

device applications. Following are a few of the extensions to the ANSI

Standard C language:

• A network communication model based on functional blocks and network variables that simplifies

and promotes data sharing between like or disparate devices.

• A network configuration model based on functional blocks and configuration properties that

facilitates interoperable network configuration tools.

• A type model based on standard and user resource files expands the market for interoperable

devices by simplifying integration of devices from multiple manufacturers.

• An extensive built-in set of I/O objects that supports the powerful I/O capabilities of Neuron Chips

and Smart Transceivers. Powerful event-driven programming extensions based on when-tasks that
provide easy handling of network, I/O, and timer events.

• Language extensions that define application interrupt handlers and use synchronization tools,

where available.

Neuron C provides a rich set of language extensions to ANSI C tailored to the unique requirements of
distributed control applications. Experienced C programmers will find Neuron C a natural extension to
the familiar ANSI C paradigm. Neuron C offers built-in type checking and allows the programmer to
generate highly efficient code for distributed L

ON

W

ORKS

applications.

Neuron C omits ANSI C features not required by the standard for free-standing implementations. For
example, certain standard C libraries are not part of Neuron C. Other differences between Neuron C
and ANSI C are detailed in the Neuron C Programmer’s Guide.

This chapter provides an introduction to Neuron C. For more details on Neuron C, see the Neuron C
Programmer’s Guide
.

Unique Aspects of Neuron C

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 Neuron firmware support to provide the look and feel of a
regular global C variable, but with additional properties of communicating 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 tool such as the
LonMaker tool or a customized plug-in created for the device. Configuration properties provide 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. Functional blocks provide 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.

Advertising