ISP Flash Microcontroller Programmer Ver 3.0a

ISP Flash Microcontroller


Ver 3.0a

Mohammad Asim Khan,


This ISP Programmer can be used either for in-system programming or as a stand-alone spi programmer for Atmel ISP programmable devices. The programming interface is compatible to STK200 ISP programmer hardware so the users of STK200 can also use the software which can program both the 8051 and AVR series devices.


Figure 1 shows the circuit diagram of the in-system programmer interface, the power to the interface is provided by the target system. The 74HCT541 ic isolate and buffer the parallel port signals. It is necessary to use the HCT type ic in order to make sure the programmer should also work with 3V type parallel port.

Figure 1: Circuit Diagram of the ISP Programmer Interface

Figure 2 shows the circuit diagram of the stand-alone spi programmer, the power to the interface is provided by the PC USB port which can supply a max of 100mA current. Get a cheap USB cable, cut the
cable other end connector and attach a crimp shell connector to this end, red wire is 5V and black is 0V.

The printer port buffer interface is same as shown in figure 1. For the u-controller a 40 pin ZIF socket can
be used.
This programmer circuit can be use to program the 89S series devices and the AVR series devices which
are pin compatible to 8051, like 90S8515. For other AVR series devices the user can make an adapter
board for 20, 28 and 40 pin devices. The pin numbers shown in brackets correspond to PC parallel port

Figure 2: Circuit Diagram of the SPI Programmer


The file contains the main program and the i/o port driver. Place all files in the same folder.
The main screen view of the program is shown in figure 3.

Also make sure do not program the RSTDISBL fuse in ATmega8, ATtiny26 and ATtiny2313 otherwise further spi programming is disable and you will need a parallel programmer to enable the
spi programming. For the fuses setting consult the datasheet of the respective device.

For the auto hardware detection it is necessary to short pin 2 and 12 of DB25 connector, otherwise the
software uses the default parallel port i.e. LPT1.

Following are the main features of this software,

· Read and write the Intel Hex file

· Read signature, lock and fuse bits

· Clear and Fill memory buffer

· Verify with memory buffer

· Reload current Hex file

· Display buffer checksum

· Program selected lock bits & fuses

· Auto detection of hardware


The memory buffer contains both the code data and the eeprom data for the devices which have
eeprom memory. The eeprom memory address in buffer is started after the code memory, so it is
necessary the hex file should contains the eeprom start address after the end of code memory last address
i.e. for 90S2313 the start address for eeprom memory is 0x800.

The software does not provide the erase command because this function is performed
automatically during device programming. If you are required to erase the controller, first use the clear
buffer command then program the controller, this will erase the controller and also set the AVR device fuses
to default setting.


ISP-Flash Programmer Software

Figure 3: Main screen of the program ISP-Pgm Ver 3.0a

Contribution to Asim’s ISP Loader Schematics and PCB Files including PDF layouts for all layers designed by Farshid Jafari Harandi from Iran using Eagle cadsoft. updated 8-Sep-2005

AT89ISP.rar Single side layout made by Amr Ahmed Abdel-Baset from Egypt. Single Side PCB files in Post Script and PDF Format made by Prahlad J. Purohit from India. Layout made by Mehrdad Mahboudy from Iran.

April 11, 2010 Posted by | Microcontroller Programmer | | 2 Comments