| |
|
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.
|
Datasheets for relevant parts used in this project
Useful Links
TCP/IP Stack Source code and useful software tools
Additional Resources
|
|
|