mirror of
https://github.com/mariusgreuel/avrdude.git
synced 2025-12-15 02:01:07 +00:00
Fix error reporting by avr_write_byte().
Fix setting of status LEDs under various write-fail conditions. Add a flag to indicate that a memory type requires the device to possibly be powered off and back on after a write to it. This is due to a hardware problem on some Atmel devices, see: http://www.atmel.com/atmel/acrobat/doc1280.pdf Add greater verbosity to the part-display code when verbose>1 to display avrprog's encoding of the defined programming instructions. This is primarily for debugging purposes. Part updates: * add the AT90S4414 part * add fuse and lock bit access instructions for the AT90S1200, AT90S4434, and AT90S8515. * add the pwroff_after_write flag to the fuse bits for the AT90S2333 and AT90S4433 parts git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@123 81a1dc3b-b13d-400b-aceb-764788c761c2
This commit is contained in:
@@ -209,6 +209,82 @@ part
|
||||
read = "0 0 1 1 0 0 0 0 x x x x x x x x",
|
||||
"x x x x x x a1 a0 o o o o o o o o";
|
||||
;
|
||||
memory "fuse"
|
||||
size = 1;
|
||||
min_write_delay = 9000;
|
||||
max_write_delay = 20000;
|
||||
read = "0 1 0 1 0 0 0 0 x x x x x x x x",
|
||||
"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 0 1 i i i i i",
|
||||
"x x x x x x x x x x x x x x x x";
|
||||
;
|
||||
memory "lock"
|
||||
size = 1;
|
||||
min_write_delay = 9000;
|
||||
max_write_delay = 20000;
|
||||
read = "0 1 0 1 1 0 0 0 x x x x x x x x",
|
||||
"x x x x x x x x x x x x x o o x";
|
||||
|
||||
write = "1 0 1 0 1 1 0 0 1 1 1 1 1 i i 1",
|
||||
"x x x x x x x x x x x x x x x x";
|
||||
;
|
||||
;
|
||||
|
||||
|
||||
part
|
||||
id = "4414";
|
||||
desc = "AT90S4414";
|
||||
chip_erase_delay = 20000;
|
||||
pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1",
|
||||
"x x x x x x x x x x x x x x x x";
|
||||
|
||||
chip_erase = "1 0 1 0 1 1 0 0 1 0 0 0 0 0 0 0",
|
||||
"x x x x x x x x x x x x x x x x";
|
||||
|
||||
memory "eeprom"
|
||||
size = 256;
|
||||
min_write_delay = 9000;
|
||||
max_write_delay = 20000;
|
||||
readback_p1 = 0x80;
|
||||
readback_p2 = 0x7f;
|
||||
read = " 1 0 1 0 0 0 0 0 x x x x x x x 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 x x x x x x x a8",
|
||||
"a7 a6 a5 a4 a3 a2 a1 a0 i i i i i i i i";
|
||||
;
|
||||
memory "flash"
|
||||
size = 4096;
|
||||
min_write_delay = 9000;
|
||||
max_write_delay = 20000;
|
||||
readback_p1 = 0x7f;
|
||||
readback_p2 = 0x00;
|
||||
read_lo = " 0 0 1 0 0 0 0 0",
|
||||
" x x x x 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",
|
||||
" x x x x a11 a10 a9 a8",
|
||||
" a7 a6 a5 a4 a3 a2 a1 a0",
|
||||
" o o o o o o o o";
|
||||
|
||||
write_lo = " 0 1 0 0 0 0 0 0",
|
||||
" x x x x a11 a10 a9 a8",
|
||||
" a7 a6 a5 a4 a3 a2 a1 a0",
|
||||
" i i i i i i i i";
|
||||
|
||||
write_hi = " 0 1 0 0 1 0 0 0",
|
||||
" x x x x a11 a10 a9 a8",
|
||||
" a7 a6 a5 a4 a3 a2 a1 a0",
|
||||
" i i i i i i i i";
|
||||
;
|
||||
memory "signature"
|
||||
size = 3;
|
||||
read = "0 0 1 1 0 0 0 0 x x x x x x x x",
|
||||
"x x x x x x a1 a0 o o o o o o o o";
|
||||
;
|
||||
;
|
||||
|
||||
|
||||
@@ -335,6 +411,8 @@ part
|
||||
|
||||
write = "1 0 1 0 1 1 0 0 1 0 1 i i i i i",
|
||||
"x x x x x x x x x x x x x x x x";
|
||||
|
||||
pwroff_after_write = 1;
|
||||
;
|
||||
memory "lock"
|
||||
size = 1;
|
||||
@@ -411,6 +489,8 @@ part
|
||||
|
||||
write = "1 0 1 0 1 1 0 0 1 0 1 i i i i i",
|
||||
"x x x x x x x x x x x x x x x x";
|
||||
|
||||
pwroff_after_write = 1;
|
||||
;
|
||||
memory "lock"
|
||||
size = 1;
|
||||
@@ -478,6 +558,26 @@ part
|
||||
read = "0 0 1 1 0 0 0 0 x x x x x x x x",
|
||||
"x x x x x x a1 a0 o o o o o o o o";
|
||||
;
|
||||
memory "fuse"
|
||||
size = 1;
|
||||
min_write_delay = 9000;
|
||||
max_write_delay = 20000;
|
||||
read = "0 1 0 1 0 0 0 0 x x x x x x x x",
|
||||
"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 0 1 i i i i i",
|
||||
"x x x x x x x x x x x x x x x x";
|
||||
;
|
||||
memory "lock"
|
||||
size = 1;
|
||||
min_write_delay = 9000;
|
||||
max_write_delay = 20000;
|
||||
read = "0 1 0 1 1 0 0 0 x x x x x x x x",
|
||||
"x x x x x x x x x x x x x o o x";
|
||||
|
||||
write = "1 0 1 0 1 1 0 0 1 1 1 1 1 i i 1",
|
||||
"x x x x x x x x x x x x x x x x";
|
||||
;
|
||||
;
|
||||
|
||||
|
||||
@@ -534,6 +634,20 @@ part
|
||||
read = "0 0 1 1 0 0 0 0 x x x x x x x x",
|
||||
"x x x x x x a1 a0 o o o o o o o o";
|
||||
;
|
||||
memory "fuse"
|
||||
size = 1;
|
||||
read = "0 1 0 1 1 0 0 0 x x x x x x x x",
|
||||
"x x x x x x x x x x x x x x x o";
|
||||
write = "1 0 1 0 1 1 0 0 1 0 1 1 1 1 1 i",
|
||||
"x x x x x x x x x x x x x x x x";
|
||||
;
|
||||
memory "lock"
|
||||
size = 1;
|
||||
read = "0 1 0 1 1 0 0 0 x x x x x x x x",
|
||||
"x x x x x x x x o o x x x x x x";
|
||||
write = "1 0 1 0 1 1 0 0 1 1 1 1 1 i i 1",
|
||||
"x x x x x x x x x x x x x x x x";
|
||||
;
|
||||
;
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user