Projects Home Schematics Datasheets Links    
   
Description

The LJCV Electronics PICNet 1 is a very versatile development board for embedded networked applications using Microchip PIC18 Microcontrollers and the ENC28J60 standalone Ethernet controller.

The board includes two IC sockets for 28 and 40-pin PIC18 microcontrollers (only one socket is used at a time), a 8-pin socket populated with a 25LC256 Serial EEPROM (25LC1024 is also supported), three LEDs directly connected to microcontroller I/O pins, eight additional standalone LEDs, reset circuitry and two pushbuttons, a complete Ethernet interface implemented with the ENC28J60 Ethernet controller, and RS232 serial interface.

Also as a bonus the board includes a socket with complete interface for a SD/MMC card and a small area for prototyping with access to all microcontroller I/O and +5V and +3.3V power lines.

This project will show you how to run the modified version of the latest Microchip TCP/IP stack on the PICNet 1 Board.






LJCV Electronics PICNet 1
[Click Image to Enlarge]
Design considerations

Microcontroller selection & external memory

There are several 28 and 40-pin microcontrollers from the PIC18F family that can be used for this project, I always recommend the PIC18F4620 or its 28-pin equivalent, that provides plenty of program memory and RAM to run the Microchip TCP/IP stack and some applications.

I tested this project with several microcontrollers including the PIC18F452, PIC18F4520, PIC18F2520, PIC18F2525, PIC18F4525, PIC18F4620 and PIC18F2620.

As mentioned before the board includes a 25LC256 Serial EEPROM that will be used for storing configuration information and HTTP server documents, it can be easily replaced by a 25LC1024 for extra memory capacity.


Microcontroller Clock Frequency

The PICNet 1 board has multiple options for the microcontroller clock source, the full version ships with the oscillator socket populated with a half can TTL 10MHz oscillator, but there are also pads for a standard parallel crystal or ceramic resonator or via a jumper configuration the CLKOUT output of the ENC28J60 (via level translation through a 74ACT125) can be connected directly to the OSC1 pin of the microcontroller.

Given that the Ethernet interface is implemented with a Revision B5 ENC28J60, there are no restrictions on the clock frequency of the microcontroller.


Schematics

The PICNet 1 Board datasheet includes detailed schematics for the board on Appendix A and it's also available in the LJCV Electronics schematics library pointed on the link below.


Getting the board up and running

Compiling the firmware is not a huge or complicated task, it requires few software tools available for download from Microchip's website at no cost, and obviously the TCP/IP stack source code distribution and a PIC programmer. For this project I used Microchip's MPLAB ICD2 as a programmer.

With the latest modified version of the Microchip TCP/IP Stack v3.75, the process is quite simple.

This new version adds the PICNET1 macro definition that combined with the device selection for the Microcontroller generates the appropriate code for this particular project.

The software distribution includes the MPLAB IDE project file PICNET1.mcp, load this project into MPLAB IDE, select the correct processor (by default the project has selected the PIC18F4620) and verify that the settings on the config.h and picnet1.h files apply to your project or modify them accordingly (both files are located in the include subdirectory of the main src directory).

For additional details check the README.TXT file included in the software distribution.

For a detailed explanation about how to build Microchip's TCP/IP stack
for this or similar projects Click Here.


Schematics & Firmware source Code

LJCV Electronics PICNet 1 Board product page  
PICNet 1 Board Schematics  
Building the Microchip TCP/IP Stack for this project  


Datasheets for relevant parts used in this project

Microchip's PIC18F2620/4620 8-bit MCU Datasheet  
Microchip's PIC18F2620/4620 8-bit MCU Datasheet Errata  
Microchip's PIC18F2620/4620 8-bit MCU Silicon/Datasheet Errata Rev.A3  
Microchip's PIC18F2620/4620 8-bit MCU Silicon/Datasheet Errata Rev.A4  
Microchip's ENC28J60 Ethernet Controller Datasheet (Version A)  
Microchip's ENC28J60 Ethernet Controller Datasheet (Version B - Latest)  
Microchip's ENC28J60 Silicon Errata Rev.B5  
Microchip's 25LC256 Serial EEPROM Datasheet  


Useful Links

TCP/IP Stack Source code and useful software tools

Microchip's TCP/IP Stack v3.02  
Microchip's TCP/IP Stack v3.60  
Microchip's TCP/IP Stack v3.75  
Microchip's TCP/IP Stack v4.02  
Microchip's TCP/IP Latest Version  
Microchip's MPLAB Integrated Development Environment  
Microchip's MPLAB C18 Compiler  
Wireshark (formerly Ethereal) Network Protocol Analyzer  
CoffeCup HTML Editor 2007  


Additional Resources

Brush Electronics Ethernet Boot Loader  
Microchip TCP/IP Stack Application Note (AN833)  
Microchip Users Forum - TCP/IP-Ethernet  




   
    ©2006-2009, Jorge Amodio, All rights reserved

Last Update: Jan 28, 2008