|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
©2008 AirBorn
|
Programming header connector wiringIn years gone by, the microprocessors in electronic products were pre-programmed (as a seperate manufacturing step) before being assembled into the product. If a program update was ever required, usually the microprocessor had to be removed from the equipment and reprogrammed, or more likely replaced altogether.In system programming (ISP) involves programming the firmware into the microprocessors after the hardware has already been assembled, usually as part of manufacturing test - thus removing one step in the manufacturing process. By using FLASH microprocessors, the operation can be repeated as often as required for updating the code. The Philips P89LPC932 microprocessor (and the other members of the LPC900 family) require only 5 pins for programming
We show 2 alternative programming connectors - a 14 pin dual row IDC header (of which only 5 or 6 pins need to be present) and a 5 pin single-in-line pin header. The 5 pin SIP header is the common, expected solution. However, the P89LPC932 is so small that it is dwarfed by the "small 5 pin connector" needed to program it, - see IC4 and CN1 in the diagram below. Even if the polarising connector body is left off, and only the pins are inserted, the 5 pins are longer than the microprocessor, and wiring the connector interferes with the PCB Layout conections to other microprocessor pins. It is more space efficient to use a 14 pin IDC connector (with only 6 pins present) and put the microprocessor where the missing pins would be. This connector also allows an easier PCB layout, as can be seen in the examples below. While it is intended that you would use the middle layout (CN2/IC2) where the microprocessor and 14 pin IDC connector are in line, the layout also works with the connector across the microprocessor, and for PLCC devices.
The three signals (and VDD) on the program header must be driven by the programming hardware - in conjunction with some download software such as FlashMagic. The design of the target PCB circuitry should be such that it does not drive conflicting levels into these signals while the programmer circuitry is downloading. RxD requires special attention - ensure that you do not drive a signal into this pin conflicting with the programmer. Typically this will involve the addition of one resistor. For example, if a 75176 Transceiver chip was driving the RxD line into the CPU, its typ IOH=30ma which will exceed the capability of the programmers driver device - a resistor of value 1k between CPU RxD and 75176 Rx pin would prevent the conflict. The program header would connect direct to the CPU RxD pin, the 75176 would be isolated by the 1k resistor. The P89LPC9xx RST line is needed to coax the CPU into ISP download mode if it has been previously programmed. The programmer will briefly pulse this line three times after power up to enter ISP mode (see the P89LPC932 Data sheet "ISP Entry Waveform"). Again, ensure that you do not drive a signal into this pin conflicting with the programmer. This also requires that the programmer be able to control VDD to the P89LPC9xx chip, - so that it can switch VDD followed by pulsing the RST line. With the pinout suggested, an ISP program header can be designed into a new product for a cost of less than twenty cents, and an increase in pcb area of about 56mm2. Protel Cad Library part may be downloaded here.
This page was last updated 01 Jan 2008 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||