|
Part 2: Revving It Up
by Fred Eady
Start ý Tera
Term Pro ý Road Test ý The
Hardware ý As a Web Server ý Branching
Out ý Making Changes ý ReadyýSet?
ý Go ý Sources
and PDF
THE HARDWARE
The heart of the S-7600A/PIC16F877 Internet
Engine is the S-7600A. The S-7600A contains all of the necessary hardware
and firmware to implement Internet protocols such as TCP/IP, UDP,
and PPP. In addition to 10 KB of on-chip RAM to support the protocol
stack, the S-7600A has its own UART. Support circuitry for the S-7600A
consists of a 74HC4040 that divides the incoming 7.3728-MHz processor
clock by 32 and a Sipex SP3243E RS-232 converter.
Data and command information is supplied
to the S-7600A by a Microchip PIC16F877 microcontroller. The S-7600A
can take information from the PIC serially or with an 8-bit parallel
configuration. Because the PIC16F877 has a wealth of I/O, I chose
the parallel attachment method. The PIC is clocked at 7.3728 MHz and
provides clocking for the S-7600A through the 74HC4040, which presents
230 KHz to the S-7600Aýs clock input. A Sipex SP3243E RS-232 converter
IC that allows the PICýs UART to interface with Tera Term Pro running
on a PC also supports the PIC16F877.
Boot loader code is initially loaded
onto the PIC16F877 using a standard PIC programmer and a header/connector
ribbon cable assembly like the one shown in Photo 5. My PIC programmer
uses wide Aries ZIF sockets so I can make my programming jig using
a standard 0.600 header. The connector you end up with depends on
your PIC programmer setup.
 |
| Photo 5ýThese two signal lines,
power and programming voltage lines, are standard fare for programming
PICs. |
The important thing is to have the necessary
signals and voltages between the header and S-7600A/PIC16F877 Internet
Engine for programming the PIC16F877. The business end of the in-circuit
programming connector on the S-7600A/PIC16F877 Internet Engine is
shown in Photo 6.
 |
| Photo 6ýThe extra pins are
connected to uncommitted I/O lines on the PIC16F877. |
If I used the space wisely, the PIC16F877
has enough on-chip data EEPROM to accommodate the parameters needed
to make a connection to the Internet. However, there wouldnýt be enough
space left to put a decent HTML image in this memory area. So, a Microchip
24LC256 EEPROM is employed to hold all of the text necessary to connect
to the Internet and serve an HTML-based page.
Just to make things interesting, I decided
to throw in a Dallas DS1629 time and temperature IC. All the DS1629
needs to operate is a standard 32.768-KHz crystal and some room on
the I2C bus. The DS1629 comes hard addressed and uses the
extra pins that would normally be address lines for crystal and alarm
connections. The 24LC256 is addressed as 0x00 and the DS1629 is addressed
at 0x07. The DS1629 clock is volatile and must be backed up with a
3-V lithium cell if you expect to lose power to your S-7600A/PIC16F877
Internet Engine after it is deployed. And, speaking of power, a National
LM2937 3.3-V regulator and a standard 9-VDC power brick powers the
whole thing. You can see how it all fits together by perusing the
schematic shown in Figure
1. The real McCoy is shown in
Photo 7.
 |
| Photo 7ýThis is the first pass
of the circuit board. Iýll officially make room for the lithium
cell on pass two. |
PREVIOUS
NEXT
Circuit Cellar provides up-to-date information for engineers. Visit
www.circuitcellar.com for
more information and additional articles.
For subscription information, call (860) 875-2199, subscribe@circuitcellar.com
or subscribe online.
ýCircuit Cellar, the Magazine for Computer Applications. Posted with
permission. |