[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[avrdude-dev] EEPROM fails verification on ATmega645 with pony-stk200 ha
From: |
Bob Paddock |
Subject: |
[avrdude-dev] EEPROM fails verification on ATmega645 with pony-stk200 hardware? |
Date: |
Fri, 26 May 2006 14:38:19 -0400 |
User-agent: |
Opera M2/8.54 (Win32, build 7730) |
I have been developing my code with a STK500 (stk500v2), using an
ATMega645.
No issues with programming anything. EEPROM, Flash and fuses
all program fine.
Today I moved over to a pony-stk200 that production uses
(much cheaper to replace when they kill it), and I can
not get the EEPROM to program in any of my boards when
using the pony-stk200 hardware. The Flash and Fuses
still program just fine with the pony-stk200.
This is with AvrDude 5.1 on Windows.
Does anyone have any ideas?
Doing:
avrdude -P lpt1 -c pony-stk200 -p atmega645 -t
write eeprom 0x0 0x55
results in:
avrdude (write): error writing 0x55 at 0x00000, rc=-6
avrdude (write): error writing 0x55 at 0x00000 cell=0xff
avrdude.conf:
#------------------------------------------------------------
# ATmega645
#------------------------------------------------------------
part
id = "m645";
desc = "ATMEGA645";
has_jtag = yes;
# stk500_devcode = 0x??; # No STK500v1 support?
# avr910_devcode = 0x??; # Try the ATmega16 one
avr910_devcode = 0x74;
pagel = 0xd7;
bs2 = 0xa0;
chip_erase_delay = 9000;
pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1",
"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0";
chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0",
"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0";
timeout = 200;
stabdelay = 100;
cmdexedelay = 25;
synchloops = 32;
bytedelay = 0;
pollindex = 3;
pollvalue = 0x53;
predelay = 1;
postdelay = 1;
pollmethod = 1;
idr = 0x31;
spmcr = 0x57;
allowfullpagebitstream = no;
memory "eeprom"
paged = no; /* leave this "no" */
page_size = 8; /* for parallel programming */
size = 2048;
min_write_delay = 9000;
max_write_delay = 9000;
readback_p1 = 0xff;
readback_p2 = 0xff;
read =" 1 0 1 0 0 0 0 0",
" 0 0 0 0 0 a10 a9 a8",
" a7 a6 a5 a4 a3 a2 a1 a0",
" o o o o o o o o";
write = " 1 1 0 0 0 0 0 0",
" 0 0 0 0 0 a10 a9 a8",
" a7 a6 a5 a4 a3 a2 a1 a0",
" i i i i i i i i";
loadpage_lo = " 1 1 0 0 0 0 0 1",
" 0 0 0 0 0 0 0 0",
" 0 0 0 0 0 a2 a1 a0",
" i i i i i i i i";
writepage = " 1 1 0 0 0 0 1 0",
" 0 0 0 0 0 a10 a9 a8",
" a7 a6 a5 a4 a3 0 0 0",
" x x x x x x x x";
mode = 0x41;
delay = 10;
blocksize = 8;
readsize = 256;
;
memory "flash"
paged = yes;
size = 65536;
page_size = 256;
num_pages = 256;
min_write_delay = 4500;
max_write_delay = 4500;
readback_p1 = 0xff;
readback_p2 = 0xff;
read_lo = " 0 0 1 0 0 0 0 0",
" a15 a14 a13 a12 a11 a10 a9 a8",
" a7 a6 a5 a4 a3 a2 a1 a0",
" o o o o o o o o";
read_hi = " 0 0 1 0 1 0 0 0",
" a15 a14 a13 a12 a11 a10 a9 a8",
" a7 a6 a5 a4 a3 a2 a1 a0",
" o o o o o o o o";
loadpage_lo = " 0 1 0 0 0 0 0 0",
" 0 0 0 0 0 0 0 0",
" a7 a6 a5 a4 a3 a2 a1 a0",
" i i i i i i i i";
loadpage_hi = " 0 1 0 0 1 0 0 0",
" 0 0 0 0 0 0 0 0",
" a7 a6 a5 a4 a3 a2 a1 a0",
" i i i i i i i i";
writepage = " 0 1 0 0 1 1 0 0",
" a15 a14 a13 a12 a11 a10 a9 a8",
" a7 a6 a5 a4 a3 a2 a1 a0",
" 0 0 0 0 0 0 0 0";
mode = 0x41;
delay = 10;
blocksize = 128;
readsize = 256;
;
memory "lock"
size = 1;
read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0",
"x x x x x x x x x x o o o o o o";
write = "1 0 1 0 1 1 0 0 1 1 1 0 0 0 0 0",
"0 0 0 0 0 0 0 0 1 1 i i i i i i";
;
memory "lfuse"
size = 1;
read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0",
"0 0 0 0 0 0 0 0 o o o o o o o o";
write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0",
"0 0 0 0 0 0 0 0 i i i i i i i i";
;
memory "hfuse"
size = 1;
read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0",
"0 0 0 0 0 0 0 0 o o o o o o o o";
write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0",
"0 0 0 0 0 0 0 0 i i i i i i i i";
;
memory "efuse"
size = 1;
read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0",
"0 0 0 0 0 0 0 0 o o o o o o o o";
write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0",
"0 0 0 0 0 0 0 0 1 1 1 1 1 i i i";
;
# ATmega645 has Signature Bytes: 0x1E 0x96 0x05.
memory "signature"
size = 3;
read = "0 0 1 1 0 0 0 0 0 0 0 0 0 0 0
0",
"0 0 0 0 0 0 a1 a0 o o o o o o o
o";
;
memory "calibration"
size = 1;
read = "0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0",
"0 0 0 0 0 0 0 0 o o o o o o o o";
;
;
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [avrdude-dev] EEPROM fails verification on ATmega645 with pony-stk200 hardware?,
Bob Paddock <=