EPPO ManualFunctional description. Although this site is as up-to-date as possible, we can not be held accountable for possible damages as a result of use of information and/or software obtained from this site. |
| Manuals | Download | EPPO Hardware | Led Bar Demo Board | Buy EPPO | Scripts Pool | Home |
The
powersupply for EPPO is
quite simple. You can use any DC supply from 15V through 20V. Most
mains adapters of the 12VDC type already have an output of 15V. D3
prevents you from blowing up EPPO when you accidentally reverse the
polarity on TP8 and TP9.
C9, C10 and C11 will do some basic suppression and equalisation on the
voltage going into IC4 and IC5, our voltage regulators. The LM317 can
be set to
a specific output voltage using a combination of two resistrorvalues.
For the formula check the powersupply section of the Led Bar Demo Board
Functionality Manual. The output of IC4 is set to 13V, and the voltage
on the output of IC5 is 5V. C12- C14 do some suppression decoupling and
additional stabilisation. The 13V, which is critical, will be used as a
programming voltage for the target microcontroller. Therefore the
supply must be at least 15V, since D3 and IC4 will drop some additional
voltage. The 5V output will be used to supply the RS232 driver, EPPO's
microcontroller, the power led and the target microcontroller. Since
both supply- voltages are dimensioned to draw a maximum of 100mA out of
the (mains adapter) supply, any supply which is capable of doing 200mA
is sufficient. If you use a different kind of supply, please make sure
that in no circumstances it is possible to create a ground loop between
EPPO and the PC. This wil heavilly disturb datatransfer, and proper
functionality can not be guarranteed. A mains adapter is always
"floating", so this is the ideal supply, I think. Beware of so called
switching mains adapters. They have the tendency to a) give off the 12V
it promised, and b) possibly radiate some high- frequency (well...)
which can influence data along wires.
EPPO's
microcontroller with it's firmware has an asynchronous communications
ability. However, the input and output levels on this microcontroller
are 0V or 5V. The RS232 standard defines the datalines to be between
-5V / +5V and -15V / +15V. A RS232 driverchip converts our single 5V
supply to RS232 voltages, using a very ingenious internal
voltage-doubler design. C16, C17, C20 and C21 will hold the
charge- pumping levels for IC6. IC6 has two RS232 receivers (RS232
voltages in, TTL voltages out), and two RS232 drivers (TTL voltages in,
RS232 voltages out), where the unused receiver is held stable by
grounding pin13. Pins 9 and 11 are connected to the microcontroller,
pins 8 and 14 to the dB9 connector. You have a male connector on your
PC, and EPPO has a female connector. Technically you could connect them
right away, but we will connect both with a 1:1 cable, that comes with
the kit. If you are unsure if the PC sends characters, startup a
terminal program on the right settings (COMport, baudrate etc.) and
check with a logic probe, oscilloscope or a mutimeter on 10VAC range at
pin 9 of IC6. It is possible to use a more popular driver, the MAX232,
but then you have to change the four capacitors to elco's of 10u. The
firmware in EPPO's microcontroller determines the baudrate at which
EPPO communicates with the PC. I will not publish EPPO's firmware, and
is is neither available upon request. You are however free to design
and program your own EPPO firmware, and use it in EPPO's PCB.
Voltage
switching, in this case, has nothing to do with a switching
powersupply. It simply means that we have to switch programming
voltages to the target controller. And we have to do that in a
particular order to get the target microcontroller in programming mode.
Some of the order and timing is built in the firmware. Other specifics
are generated by the EppoManager, so the EPPO architecture
stays scalable. In the picture on the left you see GP3 and GP4
going off to somewhere else. Forget about them for now. GP0 and GP1 are
used to transfer data between EPPO and the target microcontroller. No
fancy stuff there. R12 makes a current of about 4 mA flow through
LED13, so illuminating it. T1 will become conducting if a basis-
current is drawn, so by making GP5 low. It's collector pulls up to
about 4.9V and thus powering the target microcontroller. In the
powersupply section of this manual, we have already seen that we use a
programming voltage of 13V, called the VPP. This VPP must be switched
to the target microcontroller too at certain times. To do that we have
to make T2 conducting. If we would connect T2 the same way as T1, the
transistor would be conducting constantly, since a potential voltage of
0V or 5V still draws current out of a 13V supplied transistor. We have
to make sure that if GP2 goes to a 0V output, the current is drawn, and
if it goes to 5V, the current stops. We do that by connecting a
zenerdiode Z1 and a led (LED14) in series with R19. The treshold level
of both diodes is enough to do the trick. Warning! If you use a
different kind of led, you may have to change Z1 too. EppoManager has
soom simple tool- scripts which let you play around with switching the
VPP, so you can measure without risking faulty target microcontrollers.
EPPO has a designed microcontroller of the type PIC12C672, which are
becoming obsolete / extinct. In the future you will probably find a
PIC12F675 in its place. Note. When designing software for
microcontrollers, you will see that there are some microcontrollers
that can use the so called low- voltage- programming- mode (LVP). EPPO
is not compattible with LVP, however EPPO can program them the regular
way.
On
the right you can see the programming- bay, on where to put your target
microcontroller. Needless to say that you can only program one at a
time, although you have muliple sockets. We have already seen where the
programming signals come from, so we don't need to talk about them
furthermore. It might be interresting to see that all of the signals
going to the target microcontroller are completely switched off, so no
power is present. The
ICSP connector's pin 2 is fixed to +5V, which is wrong. This should be
connected to PWRPIC.
There is a modification on the EPPO hardware page for it. The J3 socket
is the trickiest one on the PCB. We had to fit the right pins to the
right signals for different sized microcontrollers. I did not have the
time yet to check if maybe 20 pin microcontrollers might be programmed
in the 18 pin socket too. It probably will. The sequence and timing of
switching the programming signals is highly dependent on the
microcontroller's specifications. For every microcontroller (or -range)
there is a separate pdf file which describes exactly how to program,
read and erase that particular microcontroller. If you purchased the
EPPO DIY- kt, you also have received a CDROM with all datasheets
nescessary. You can also visit Microchip's
website
and download the latest ones. Extra attention is needed when looking at
the capacitors across PWRPIC and ground. The higher the total capacity,
the longer it takes to deplete its charges. So you have to take a slow
trailing edge on the PWRPIC line into consideration, by maybe
increasing delays between say programming program memory and
programming configuration memory. Placing a resistor of 1k across C19
would do the trick I think.| WARNING! This site is constantly under construction. |
| Any information presented via this site can be updated any time. If you experience problems or inconsistancies due to the integrity of this information, please visit regularly to check for updates. |