Project Configuration
[Configuration]


Detailed Description

The project configuration is done in the projdefs.h file. It contains a list of defines that configure the project at compilation.
It is very important not to do any project specific configuration in the TCP/IP stack files (net folder), but only in the projdefs.h file. This will simplify updating to newer versions of the Modtronix TCP/IP stack in the future. To update to a newer version of the Modtronix TCP/IP, all that should be done is replacing the files contained in the net folder with the newer ones.

Module Configuration

The following section describes how to configure modules included in this project

General Configuration

The following section describes how to configure general parameter contained in this project

 #define HAS_BOOTLOADER 
Include this define in the code to compiled the program to be uploaded to a device that has the Modtronix Network Bootloader installed on it. By doing this, this project will be compiled with the correct start of program address and interrupt vector addresses. For further info in the Modtronix Network Bootloader, click here.
The following compiler specific modifications have to be made:

 #define CLOCK_FREQ (n) 
Configure the PIC's internal clock.

 #define DEBUG_OFF 
Configures if debug information is written out onto the serial port. For the production version of this project, this define should NOT be defined.
Debug Configuration. When uncommenting any of the following line, remember to uncomment a debug implementation in debug.h. For example, uncommend serint.h and link serint.c with project.
For details, see Debugging module.

 #define BRD_SBC65EC 
Defines the Modtronix SBC board that this code is compiled for. Possible defines are:

 #define EEPROM_CONTROL (n) 
This value is for Microchip 24LC256 - 256kb serial EEPROM

 #define STACK_USE_ICMP 
Uncomment if stack is to use ICMP. For details see ICMP.

 #define STACK_USE_HTTP_SERVER 
Uncomment if stack is to have a HTTP server. This is usually the case, and this define is usually included. For details see HTTP Server.

 #define STACK_USE_SLIP 
Uncomment if stack should implement the SLIP protocol. For details see SLIP.

 #define STACK_USE_IP_GLEANING 
Uncomment if stack should implement IP Gleaning. For details see IP Gleaning.

 #define STACK_USE_DHCP 
Uncomment if stack should implement the DHCP protocol. For details see DHCP.

 #define STACK_USE_FTP_SERVER 
Uncomment if stack should implement a FTP server. For details see FTP.

 #define STACK_USE_SNMP_SERVER 
Uncomment if stack should implement the SNMP protocol.

 #define STACK_USE_TFTP_CLIENT 
Uncomment if stack should implement a TFTP client

 #define STACK_USE_SMTP 
Uncomment if stack should implement SMTP

 #define STACK_USE_TCP 
This define is automatically enabled/disabled based on high-level module selections. If you need them with your custom application, enable it here. Uncomment if stack should implement the TCP protocol. For details see TCP.

 #define STACK_USE_UDP 
This define is automatically enabled/disabled based on high-level module selections. If you need them with your custom application, enable it here. Uncomment if stack should implement the UDP protocol. For details see UDP.

 #define STACK_USE_NBNS 
Uncomment if stack should implement NBNS

 #define STACK_USE_DNS 
Uncomment if stack should implement DNS

 #define TCP_NO_WAIT_FOR_ACK 
Comment following line if StackTsk should wait for acknowledgement from remote host before transmitting another packet. Commenting following line may reduce throughput.

 #define STACK_CLIENT_MODE 
Uncomment following line if this stack will be used in CLIENT mode. In CLIENT mode, some functions specific to client operation are enabled.

 #define MY_DEFAULT_IP_ADDR_BYTE1 (n)
 #define MY_DEFAULT_IP_ADDR_BYTE2 (n)
 #define MY_DEFAULT_IP_ADDR_BYTE3 (n)
 #define MY_DEFAULT_IP_ADDR_BYTE4 (n)
Use these defines to define the default IP address of the device.

 #define MY_DEFAULT_MASK_BYTE1 (n)
 #define MY_DEFAULT_MASK_BYTE2 (n)
 #define MY_DEFAULT_MASK_BYTE3 (n)
 #define MY_DEFAULT_MASK_BYTE4 (n)
 
 #define MY_DEFAULT_GATE_BYTE1 (n)
 #define MY_DEFAULT_GATE_BYTE2 (n)
 #define MY_DEFAULT_GATE_BYTE3 (n)
 #define MY_DEFAULT_GATE_BYTE4 (n)
 
 #define MY_DEFAULT_MAC_BYTE1 (n)
 #define MY_DEFAULT_MAC_BYTE2 (n)
 #define MY_DEFAULT_MAC_BYTE3 (n)
 #define MY_DEFAULT_MAC_BYTE4 (n)
 #define MY_DEFAULT_MAC_BYTE5 (n)
 #define MY_DEFAULT_MAC_BYTE6 (n)
Use these defines to define the default Mask, Gateway and Ethernet MAC address of this device.

 #define MY_DEFAULT_DNS_BYTE1 (n)
 #define MY_DEFAULT_DNS_BYTE2 (n)
 #define MY_DEFAULT_DNS_BYTE3 (n)
 #define MY_DEFAULT_DNS_BYTE4 (n)
Use these defines to define the default Primary DNS server IP address.

 #define MAC_SOCKETS 
Number of available TCP sockets to be created. Note that each socket consumes 34 bytes of RAM.
TCP configurations
To minimize page update, match number of sockets and HTTP connections with different page sources in a page. For example, if page contains reference to 3 more pages, browser may try to open 4 simultaneous HTTP connections, and to minimize browser delay, set HTTP connections to 4, MAX_SOCKETS to 4. If you are using ICMP or other applications, you should keep at least one socket available for them.

 #define MAC_UDP_SOCKETS 
Number of available UDP sockets to be created.

 #define HTTP_CONNECTIONS 
Maximum numbers of simultaneous HTTP connections allowed. Each connection consumes 10 bytes.


Files

file  projdefs.h
 Project configuration.


Generated on Mon Oct 9 13:22:09 2006 for SBC65EC Web Server by  doxygen 1.4.7