µC/TCP-IP is configurable at compile time via approximately 50 #defines
in the application’s net_cfg.h
file. µC/TCP-IP uses #defines
because they allow code and data sizes to be scaled at compile time based on enabled features and the configured number of network objects. This allows the ROM and RAM footprints of µC/TCP-IP to be adjusted based on application requirements.
Most of the #defines
should be configured with the default configuration values. A handful of values may likely never change because there is currently only one configuration choice available. This leaves approximately a dozen values that should be configured with values that may deviate from the default configuration.
It is recommended that the configuration process begins with the default configuration values which in the next sections will be shown in bold.
The sections in this chapter are organized following the order in µC/TCP-IP's template configuration file, net_cfg.h
.
Task Queue Configuration
Compile Features
Debug Features
Argument Check
Most functions in µC/TCP-IP include code to validate arguments that are passed to it. Specifically, µC/TCP-IP checks to see if passed pointers are NULL
, if arguments are within valid ranges, etc. The following constants configure additional argument checking.
Counter Management
µC/TCP-IP contains code that increments counters to keep track of statistics such as the number of packets received, the number of packets transmitted, etc. Also, µC/TCP-IP contains counters that are incremented when error conditions are detected.
Timer Management
µC/TCP-IP manages software timers used to keep track of timeouts and execute callback functions when needed.
Interfaces
Address Resolution Protocol (ARP)
ARP is only used when the IPv4 stack is enabled.
Neighbor Discovery Protocol (NDP)
NDP is only used when the IPv6 stack is enabled.