This is part of the
EMDP1 project and it is currently a
work in progress.
EMDP1 Adaptor Boards
The current list of adaptor boards is quite sparse,
consisting of the PIC_Serial adaptor.
-
Bootstrap (ID=?)
-
The bootstrap adaptor is used to program
the PIC16F877 in the EMDP1 for the first
time with a boot loader. After that, EMDP1
firmware revisions can be download into the
EMDP1 via the the EMDP1 boot loader.
-
PIC_Serial (ID=?)
-
The Serial_PIC adaptor board is used to
program MicroChip PIC chips that are in
DIP packages using one of their serial
programming protocols. The Serial_PIC
adaptor actually has a few smaller
plug cards to configure for various
different flavors of PIC microcontrollers.
-
AVR (ID=?)
-
The AVR adaptor board is used to program
Atmel ® AVR processor chips
in DIP packages.
-
GAL (ID=?)
-
The GAL adaptor board is used to program
Generic Array Logic chips.
-
EPROM (ID=?)
-
The EPROM adaptor board is used to program
the 2k×8 to 2M×8 EPROM's.
More adaptor boards will be created as needed.
The EMDP1 adaptors use the standard CUMP cabling
and signall using a 2×20 ribbon cable connector.
The CUMP pin number to name table is listed below:
Pin No. |
Label |
Pin No. |
Label |
Pin No. |
Label |
Pin No. |
Label |
1 |
SCK_SDO |
11 |
BD3 |
21 |
BD13 |
31 |
BD23 |
2 |
GND |
12 |
BD4 |
22 |
BD14 |
32 |
BD24 |
3 |
SDI_SDO |
13 |
BD5 |
23 |
BD15 |
33 |
BD25 |
4 |
SDO |
14 |
BD6 |
24 |
BD16 |
34 |
BD26 |
5 |
TXD |
15 |
BD7 |
25 |
BD17 |
35 |
BD27 |
6 |
+5V |
16 |
BD8 |
26 |
BD18 |
36 |
VAR1 |
7 |
RXD |
17 |
BD9 |
27 |
BD19 |
37 |
VAR2 |
8 |
BD0 |
18 |
BD10 |
28 |
BD20 |
38 |
NC1 |
9 |
BD1 |
19 |
BD11 |
29 |
BD21 |
39 |
NC2 |
10 |
BD2 |
20 |
BD12 |
30 |
BD22 |
40 |
NC3 |
Note: BD27 (pin 35) is not a bi-directional pin
on the EMDP1; it is used by the bootstrap adaptor
to feed 13 volts back to the PIC16F877 in the
EMPD1 for programming.
All of EMDP1 adaptors have defined the BD20-BD27
as follows:
Pin |
CUMP Name |
EMDP1 Usage |
28 |
BD20 |
PROG_LED |
29 |
BD21 |
PLUG_ID0 |
30 |
BD22 |
PLUG_ID1 |
31 |
BD23 |
PLUG_ID2 |
32 |
BD24 |
PLUG_ID3 |
33 |
BD25 |
ROM_TYPE0 |
34 |
BD26 |
ROM_TYPE1 |
35 |
BD27 |
VPP (BootStrap adaptor only) |
where
-
PROG_LED
-
is a red LED this is illuminated under software
control whenever a device is being programmed.
Of course, bad things happen when the user
removes the part when the red LED is on.
-
PLUG_ID[0:3]
-
Most adaptors have personality plugs that allow
them to program more than one kind of part.
The personality plugs each have a 4-bit id
that is readable by the EMDP1. The PLUG_ID
lines have pull up resistors so that the
EMDP1 can detect the absense of a personality
plug by reading 4 ones on the 4 PLUG_ID lines.
-
ROM_TYPE[0:1]
-
There are two bits that identify the type of
serial EEPROM on the adaptor board. Right
now, all EMDP1 adaptor boards set these two
bits to zero to indicate that an 24C02 serial
EPROM is being used. The 24C02 contains
an id that is used to identify the adaptor
board.
-
VPP
-
This is only used by the bootstrap adaptor
board to provide a 13 volt programming voltage
back to the PIC16F877 in the EMDP1.
The process of designing an adaptor board conists
of the following basic steps.
-
Identify the parts that need to be programmed.
-
Obtain the programming specifications for each
of the parts to be programmed.
-
Build a table that shows what pins need to be
used to program each part.
-
Convert the table so that all of the pin numbers
correspond the pin numbers for 40-pin ZIF (zero
insertion force) socket.
-
Identify which pins need to have ground, +5V,
VAR1 and VAR2 routed to them.
-
Identify which pins need to have a bi-directional
pin connected to them.
-
Figure out which bi-directional pins can be tied
directly to ZIF socket pins.
-
Identify which bi-directional pins conflict with
the ground, +5V, VAR1, and VAR2 pins.
-
Design a personality plug that deals with the
conflicts.
-
Design and layout the adaptor board.
-
Design and layout a personality plug for each part.
-
Design a mapping table for each personality plug
that shows how the pins map to bi-directional
pins and vice versa.
Sometimes the process of designing the last personality
plug uncovers a problem that will effect the basic
adaptor board layout.
Copyright (c) 2001-2002 by
Wayne C. Gramlich.
All rights reserved.