Sat Aug 9 16:33:00 BST 2008

Staapler programmer

I started building a 18F1320 prototype which has this male connector
as its programming connector.  Next is to find out where to connect
the outputs and inputs of the female connector.


A single input is necessary for the bit-banged serial receive.
Probably another one, or this one shared, for some client->host signal
when using the ICD2 port alone for monitor operation.

Either interrupt on change, or the INT0-INT2 pins can be used.


TXD         bit banged serial transmit
/MCLR O     target reset
VDD   O     optional target power
PGD   I/O   data
PGC   O     clock
PGM   O     low voltage programming

Later this could be extended with a charge pump for generating the
programming voltage.

Other constraints:

  * RA4 = open drain
  * general purpose ports (not using analog): RA0-3
  * more (not using oscillator): RA6-7

Probably best to use RA0-3 for the 4 outputs-only ports /MCLR VDD PGC
PGM.  Let's use INT0/RB0 for PGD I/O.

So, what should I do first?
  * Get the monitor to work with the ICD2 connector only.
  * Build a programmer.

The programmer seems rather trivial.  The most difficult problem to
solve now is to get a bidirectional communication going over the ICD2

Some things to think about.  The only benefit of this device is to be
able to use both from-scratch programming + staapl console.  It is
beneficial for smaller targets when there is actually a charge pump
available.  Maybe it is better to just modify the firmware of an
already existing programmer?  The ICD2 would be a good target.