Echelon Neuron C User Manual

Page 44

Advertising
background image

24

Compiler Directives

#pragma debug

option

This pragma allows selection of various network debugger features. A
program using network debugger features can only be used with version 6

and later versions of the Neuron firmware.
The valid options are shown in the list below. This pragma can be used
multiple times to combine options, but not all options can be combined.
network_kernel
no_event_notify

no_func_exec

no_node_recovery
no_reset_event

node_recovery_only
The debugger network kernel must be included to use the device with the
network debugger supplied with the NodeBuilder Development Tool or the

LCA Field Compiler API. The network kernel consists of several independent

but interacting modules, all of which are included in the program image by
default. To reduce the size of the network debug kernel included in a

program, one or more of the following options can be specified in additional

#pragma debug directives. See the

NodeBuilder User’s Guide

and the

NodeBuilder Online Help for more information.
Use of the no_event_notify option excludes the event notification module.

Use of the no_func_exec option excludes the remote function execution

module.
Use of the no_node_recovery option turns off the device’s reset recovery delay
that the compiler automatically includes when the network debugging kernel

is included.
Use of the no_reset_event option turns off the reset event notification feature.
This feature is not necessary if the no_event_notify option is used to exclude

all event notification, since the reset event notification is part of the event

notification feature.

Use of the node_recovery_only option instructs the compiler to include the

node recovery feature only, without the network debug kernel.
This directive is not supported in model files.

#pragma disable_mult_module_init

Requests the compiler to generate any required initialization code directly in
the special init and event block, rather than as a separate procedure callable

from the special init and event block. The in-line method, which is selected

as a result of this directive, is slightly more efficient in memory usage, but
might not permit a successful link for an application on a Neuron 3150 Chip

or 3150 Smart Transceiver. This pragma should only be used when trying to

fit a program into a Neuron 3120xx Chip or 3120 Smart Transceiver. See the
discussion on

What to Try When a Program Does Not Fit on a Neuron Chip

in Chapter 8,

Memory Management,

of the

Neuron C Programmer’s Guide

.

This directive cannot be used with the debug directive.

This directive is not supported in model files.

Advertising