Author:
M Asim
Khan
Introduction
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.
Hardware
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
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
connector.
Figure 2: Circuit
Diagram
of
the SPI
Programmer
Software
The
ISP-3v0.zip
file
contains
the
main
program
and
the
i/o
port
driver
for
windows
2000
&
XP.
Place
all
files
in
the
same
folder,
for
win-95/98
use
the
"ISP-Pgm3v0.exe"
file,
for
win-2000
& XP
use
the
"ISP-XP.bat"
file.
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.
I
have
only
included
the
devices
which
I
have
in
hand,
and
verified
their
correct
programming,
when
I
will
get
the
other
devices
the
software
will
be
updated.
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
Note:
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.
Download
ISP-Flash
Programmer
Software
ISP-3v0.zip
SPI
Programmer
Schematic SPI-sch.pdf
SPI
Programmer
Partlist
SPI-partlist.pdf
Figure
3:
Main
screen
of
the
program
ISP-Pgm3v0
Contribution
to
ISP-Flash
Programmer
ISP_FJH_.pcb
:
designed
by
Homan
Falahati
,
edited
by Farshid
Jafari
Harandi
from
Iran
using Protel
Pcb.
isp_programmer.zip:
Schematics
and
PCB
designed
by
Farshid
Jafari
Harandi
from
Iran
using
Eagle
cadsoft.
Purohit.zip:
Layout
in
Post
Script
file
format
made
by Prahlad
J. Purohit from India. |