PIC-WEB REV.C development board
User's Manual
All boards produced by Olimex are ROHS compliant
Rev. D, August 2014
Copyright(c) 2013, OLIMEX Ltd, All rights reserved
Page 1 of 35
INTRODUCTION
PIC-WEB
is a compact (65×60 mm) board which is supported by Microchip’s
open source TCP-IP stack AN833. The board is designed with 64-pin high-performance, 1
Mbit Flash microcontroller with Ethernet – PIC18F67J60 and supports: SLIP, ARP, IP,
ICMP, TCP, UDP, HTTP, DHCP, FTP. The Microchip stack is written very modular and
flexible and you can enable or disable modules and supports dynamic web pages which give
you the possibility to control all PIC resources remotely via FTP, HTTP, UDP, TCP etc.
With this board you can implement web and ftp server, send e-mails and almost everything
what the big servers do. The on board 1Mbit serial flash is available for data storage.
This board is designed to have Web page of no more than 128 kB. If you want a lot
of images in your application you can also host them on other server visible on the network
where you have the PIC-WEB connected. The potential of the board is to generate a fluid
communication between some specific sensors or actuators across a TCP/IP net including
the controls of it.
The Microchip stack is an open source library, which is possible to modify and
compile at any time. But you will probably need to modify it to your own needs. The board
comes with an implemented WEB server and a web page that let you controls some of the
features of the board. In this manual we’ll learn about how to compile the TCP/IP stack to
use it over the platform, the needed software, how to use the pre loaded web page, and how
to upload your own web pages in the board.
This manual requires Microsoft Windows© OS because several software units used
here are Windows compatible only.
BOARD FEATURES
PIC18F67J60 microcontroller
1Mbit on board serial flash for web pages storage
ICSP/ICD mini connector for programming and debugging with PIC-ICD2, PIC-
ICD2-POCKET and PIC-ICD2-TINY.
Reset button
User event button
Analogue trimmer potentiometer
Thermistor for temperature monitoring
RS232 driver and connector
Complete web server and TCP-IP stack support as per Microchip's open source
TCP-IP stack
Power plug-in jack for +9 to +12 VDC power supply
Voltage regulator +3.3V and filtering capacitors
status LED
UEXT connector
Extension header to connect to other boards
PCB: FR-4, 1.5 mm (0,062"), solder mask, silkscreen component print
Dimensions 60×65 mm (2.36×2.55")
Page 2 of 35
ELECTROSTATIC WARNING
The PIC-WEB board is shipped in protective anti-static packaging. The board must not be
subject to high electrostatic potentials. General practice for working with static sensitive
devices should be applied when working with this board.
BOARD USE REQUIREMENTS
Cables:
Depends on the used programming/debugging tool. It could be 1.8 meter USB A-B
cable to connect
PIC-ICD2, PIC-ICD2-POCKET
or
PIC-KIT3
to USB host on PC or Serial
DB9 cable in case of
PIC-ICD2-TINY
or other programming/debugging tools. You will
need a serial cable if not for programming, than for configuring the board. You will also
need a Crossover Ethernet cable.
Note: PIC-KIT3 is recommended for new designs since PIC-ICD2 programmers are not
supported in Microchip's MPLAB X IDE. If you don't mind using MPLAB 8.xx then PIC-
ICD2 is also a good choice.
Hardware:
Programmer/Debugger – most of Olimex programmers are applicable, for
example
PIC-ICD2, PIC-ICD2-POCKET, PIC-ICD2-TINY, PIC-Kit3
or other
compatible programming/debugging tool.
For programming PIC-WEB Rev. C, you will also need
PIC-ICSP
connector.
!!!Warning!!! When you want to program this microcontroller with PIC-ICD2, PIC-ICD2-
POCKET or PIC-ICD2-TINY, before connecting the programmer to your target board, you
should first connect the programmer to your computer and open MPLAB. There, first from
menu Configure – Select Device – choose the microcontroller you are about to program,
then from menu Programmer – Select Programmer – choose MPLAB ICD 2, wait while
MPLAB is downloading operation system, and after ICD2 is connected – check in menu
Programmer – Settings – Power – there is option – Power target circuit from MPLAB ICD 2
– this option should be forbidden, you could not select it. Now it is safe to connect the
programmer to your target board.
Software: PIC-WEB
is tested with
MPLAB IDE v.8.87 + C18 compiler 3.40 Free
Standard EVAL Version.
The latest modified stack version we tested the board with is
TCP/IP stack 5.42 (www.microchip.com). It is possible that the stack might not function
properly if used with later versions of MPLAB IDE. You will also need a terminal program
configured at 19 200 bps, 8N1 and XON/XOFF flow control (it's described below).
Page 3 of 35
PROCESSOR FEATURES
PIC-WEB
board uses CPU
PIC18F67J60
from Microchip with these features:
Operating Frequency –
DC – 41.67 MHz
Flash program memory (bytes)
– 128k
Flash program memory (Instructions)
– 65532
SRAM data memory (bytes)
– 3808
Interrupt Sources
– 26
Ethernet TX/RX Buffer (bytes)
– 8192
I/O Ports
– A, B, C, D, E, F, G
I/O Pins
– 39
10-Bit A/D (ch)
– 11
Capture/Compare/PWM Modules
– 2
Enhanced Capture/Compare/PWM Modules
– 3
Serial Communications –
MSSP (1), Enhanced USART (1)
SPI
Master I
2
C™
Comparators
– 2
Timers 8/16-Bit
– 2/3
Resets (and Delays)
- POR, BOR, RESET Instruction, Stack Full, Stack Underflow,
MCLR, WDT (PWRT, OST)
Instruction Set –
75 Instructions, 83 with Extended Instruction Set Enabled
Ethernet Features:
IEEE 802.3 compatible Ethernet Controller
Integrated MAC and 10Base-T PHY
8-Kbyte Transmit/Receive Packet Buffer SRAM
Supports one 10Base-T Port with Automatic Polarity Detection and Correction
Programmable Automatic Retransmit on Collision
Programmable Padding and CRC Generation
Programmable Automatic Rejection of Erroneous Packets
Activity Outputs for 2 LED Indicators
Buffer:
Configurable transmit/receive buffer size
Hardware-managed circular receive FIFO
Byte-wide random and sequential access
Internal DMA for fast memory copying
Hardware assisted checksum calculation for various protocols
Page 4 of 35
MAC:
Support for Unicast, Multicast and Broadcast packets
Programmable Pattern Match of up to 64 bytes within packet at user-defined
offset
Programmable wake-up on multiple packet formats
PHY:
Wave shaping output filter
Loopback mode
Flexible Oscillator Structure:
Selectable System Clock derived from single 25 MHz external source:
2.78 to 41.67 MHz
Internal 31 kHz Oscillator
Secondary Oscillator using Timer1 @ 32 kHz
Fail-Safe Clock Monitor:
Allows for safe shutdown if oscillator stops
Two-Speed Oscillator Start-up
Peripheral Highlights:
High-Current Sink/Source: 25 mA/25 mA on PORTB and PORTC
Five Timer modules (Timer0 to Timer4)
Four External Interrupt pins
Two Capture/Compare/PWM (CCP) modules
Three Enhanced Capture/Compare/PWM (ECCP) modules:
One, two or four PWM outputs
Selectable polarity
Programmable dead time
Auto-shutdown and auto-restart
Up to two Master Synchronous Serial Port (MSSP) modules supporting SPI (all 4
modes) and I2C™ Master and Slave modes
Up to two Enhanced USART modules:
Supports RS-485, RS-232 and LIN 1.2
Auto-wake-up on Start bit
Auto-Baud Detect
Auto-acquisition capability
Conversion available during Sleep
10-Bit, up to 16-Channel Analog-to-Digital Converter module (A/D):
Dual Analog Comparators with Input Multiplexing
Special Microcontroller Features:
5.5V Tolerant Inputs (digital-only pins)
Page 5 of 35