Memory use, Ram use, Eeprom use – Echelon Neuron C User Manual
Page 186

174 Memory
Management
Memory Use
This section outlines the amount of memory used by certain elements in your
program. For a description of the actual memory used by your program, see the
link summary.
RAM Use
RAM is used as follows:
code
Size of code (for functions declared with ram keyword)
config_prop 0
cp_family 0
fblock 0
io_changes
3 bytes each (any type)
I/O object
0
msg_tag 0
mtimer
4 bytes each
The following sizes pertain to global and static data as declared in the program
(except for eeprom and config variables). These amounts also apply to network
variables.
char 1
byte
int 1
byte
enum 1
byte
long 2
bytes
structures
Sum of the size of the elements. Each 8 bits (or fraction of
8 bits) of consecutive bitfields uses up a byte. No bitfield
can span a byte boundary. No padding is performed. The
float_type and s32_type extended arithmetic structures
each take 4 bytes.
unions
Size of the largest element
EEPROM Use
Approximately 65 bytes of EEPROM is used for constant system overhead,
although this can vary depending on the firmware version. In addition,
EEPROM or flash memory is used as follows:
• Each domain table entry requires 15 bytes for configurable information,
to define the domain address, subnet number, device number, and
authentication key. A system can have a maximum of two domain table
entries and must have at least one domain table entry. The default is
two domain table entries. See
on page 190.