WWW8052 - Hardware
To create a "small" WWW server, all that is needed is a CPU, in our case a x51 clone, a LAN interface card originally intended for PCs, several small components such as an ISA connector, piece of breadboard, a few capacitors, perhaps several LEDs with appropriate resistors. Connect everything togegher, utter a few magic words, and it turns into a WWW server.
Impulse for this project was the July 99 issue of Circuit Cellar, where a $25 WEB SERVER based on AT90S8515 was described. Other, more or less elaborated constructions, are on the WWW as well - for example Gary Desrosiers' Embedded 10BaseT Ethernet, based on CS8900 by Crystal (Cirrus Logic).
Our construction uses a Micronet SP2020B LAN board with a NE2000 compatible controller RTL8019AS by Realtek. The board is connected to a 8052 compatible CPU, AT89C25 by Atmel, with 8kB of program memory and 256 bytes of RAM that also holds registers and stack. This processor clearly does not provide a lot of resources; however, beta firmware is a proof that it has enough for our purpose. Beta version code occupies close to 3 kBytes, controls the LAN card through a packet driver, supports ARP, ICMP, IP and TCP protocols. Software implements a simple WWW server and provides for monitoring and control of the remaining I/O pins (not used for communication with the LAN board) over WWW. In addition, it also allows telnet connections to control the serial port, acting like a LAN/RS232 converter.
The LAN board is one of many NE2000 compatibles. Its advantages include time-tested drivers available in source code. RTL8019AS is one of the modern "everything on a single chip" implementations of the NE2000 standard. It integrates 16 kBytes of SRAM, modulator and demodulator for the physical interface, Ethernet protocol controller, memory interface, and many other functions.
However, unlike CS8900, it does not contain input/output filters, so a hybrid transformer with low-pass filter is necessary. Its main advantage is the capability to operate in 8-bit mode. As the schematic (or the EAGLE version - www8052.sch) shows, we take advantage of this option.
The processor connects to the ISA bus as follows:
- P0 creates data signals of the "ISA" bus
- P2 is partially used to provide address signals (P2.0 až P2.4) and reset (P2.7)
- P3.6 a P3.7 control reading and writing, taking advantage of the alternative HW function.
Prototype version uses a 14.74 MHz xtal for easy generation of frequencies needed for the serial port. If serial communication is not needed, another xtal may be used - preferably as fast as possible to decrease latency. Power consumption of the prototype averages approximately 1 W.
Since the network board's PnP function is not used and its configuration is stored in its EEPROM, it has to be configured in a PC with an appropriate utility before first use. The prototype uses 300h for the base address, hard-wired by connecting signals SA5 to SA19 of the ISA bus to GND or +5V. Boot ROM address and IRQ number do not matter as they are unused.
The first single-board version. See the entire board: silk screen, component side, solder side. Sources for EAGLE (layout editor by CadSoft) are here.
Interface in the following figure is simplified. It was used in version 2 and needs a converter with built-in isolation transformer for TX/RX/CD signals.
A full circuit should have such a transformer, e.g. 16PT-005A, connected between the AUI connector and the Web 51 board.
Simplified AUI interface Full AUI interface
AUI connector connects with a cable to JP2 (RX), JP3 (CD) and JP4 (TX) that connect to the respective outputs of the controller. Outputs TX+ and TX- need additional pull-down resistors of 270R (1%). AUI is powered from JP5 that connects to the input filtering capacitor C101. Therefore, power supply for the Web 51 must provide voltage as required by the AUI interface and enough current. Here is a photo of this version.
Components marked with (*) can be cannibalized from a network board, as most distribution channels don't provide RTL chips and 10BaseT transformers in single unit quantities.Part Value Package C1 (*) 1nF/2kV C2 (*) 1nF/2kV C3 10nF SMD 0805 C4 10nF SMD 0805 C5 180pF SMD 0805 C6 180pF SMD 0805 C7 33pF SMD 1206 C8 33pF SMD 1206 C9 33pF SMD 1206 C10 33pF SMD 1206 C11 22M/16VT C12 22M/16VT C13 22M/16VT C14 22M/16VT C15 22M/16VT C16 10nF SMD 1206 C101 47M/25VT C102 100nF SMD 1206 C103 100nF SMD 1206 C104 100M/6.3VT C105 100nF SMD 1206 C106 100nF SMD 1206 C108 100nF ceramic capacitor CON1 DB9 Cannon 9 pin FEMALE CON2 (*) RJ-45 UTP RJ-45 CON3 pinhead 13x1 2.54mm spacing CON4 PWCON power socket D1 LED diode D2 LED diode D3 LED diode D4 LED diode D5 1N4001 diode D6 1N4101 diode D7 1N4001 diode IC1 8052 8052 CPU / 89S8252 IC2 (*) RTL8019AS network controller IC3 MAX232 TTL/RS-232 convertor IC4 7805 V-REG IC5 AT24C512 serial EEPROM Q1 14.74 MHz QUARTZ Q2 (*) 20MHz QUARTZ R1 49R9 SMD 0805 R2 49R9 SMD 0805 R3 10R SMD 0805 R4 10R SMD 0805 R5 1K0 SMD 1206 R6 1K0 SMD 1206 R7 27K SMD 1206 R8 10K SMD 1206 R9 10K SMD 1206 R10 1K0 SMD 1206 R11 1K0 SMD 1206 TR1 (*) FC-22 10BaseT isolation transformer / filter
Qty Value Parts 2 10R SMD 0805 R3, R4 2 49R9 SMD 0805 R1, R2 4 1K0 SMD 1206 R5, R6, R10, R11 2 10K SMD 1206 R8, R9 1 27K SMD 1206 R7 2 33pF SMD 1206 C7, C8, C9, C10 2 180pF SMD 0805 C5, C6 2(*) 1nF/2kV C1, C2 2 10nF SMD 0805 C3, C4 1 10nF SMD 1206 C16 4 100nF SMD 1206 C102, C103, C105, C106 1 100nF ceramic cap. C108 5 22M/16VT C11, C12, C13, C14, C15 1 47M/25VT C101 1 100M/6.3VT C104 4 LED diode D1, D2, D3, D4 2 1N4001 diode D5, D7 1 1N4101 diode D6 1 14.74 MHz QUARTZ Q1 1(*) 20MHz QUARTZ Q2 1 8052 CPU 8052... IC1 1(*) RTL8019AS ethernet contr. IC2 1 MAX232 TTL/RS232 conv. IC3 1 7805 V-REG IC4 1 AT24C512 serial EEPROM IC5 1(*) FC-22 transf./filter TR1 1 DB9 con. Cannon9 Female CON1 1(*) RJ-45 RJ45 CON2 1 pinhead 13x1, 2.54mm spacing CON3 1 PWCON power supply connector CON4 1 PCB Web 51
|Web51 description||News||FAQ||ORDER FORM||DOWNLOAD||Links|
|(c)Copyright 2000 - 2002, HW server & Radek Benedikt