Created
June 1, 2012 15:51
-
-
Save mattwilliamson/2853107 to your computer and use it in GitHub Desktop.
ATmega1284 AVRDude support
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#------------------------------------------------------------ | |
# ATmega1284 | |
#------------------------------------------------------------ | |
# similar to ATmega164p | |
part | |
id = "m1284"; | |
desc = "ATMEGA1284"; | |
has_jtag = yes; | |
stk500_devcode = 0x82; # no STK500v1 support, use the ATmega16 one | |
avr910_devcode = 0x74; | |
signature = 0x1e 0x97 0x06; | |
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", | |
"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 x x x x x", | |
"x x x x x x x x x x x x x x x x"; | |
timeout = 200; | |
stabdelay = 100; | |
cmdexedelay = 25; | |
synchloops = 32; | |
bytedelay = 0; | |
pollindex = 3; | |
pollvalue = 0x53; | |
predelay = 1; | |
postdelay = 1; | |
pollmethod = 1; | |
pp_controlstack = | |
0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F, | |
0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F, | |
0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B, | |
0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x02; | |
hventerstabdelay = 100; | |
progmodedelay = 0; | |
latchcycles = 6; | |
togglevtg = 1; | |
poweroffdelay = 15; | |
resetdelayms = 1; | |
resetdelayus = 0; | |
hvleavestabdelay = 15; | |
chiperasepulsewidth = 0; | |
chiperasepolltimeout = 10; | |
programfusepulsewidth = 0; | |
programfusepolltimeout = 5; | |
programlockpulsewidth = 0; | |
programlockpolltimeout = 5; | |
idr = 0x31; | |
spmcr = 0x57; | |
allowfullpagebitstream = no; | |
memory "eeprom" | |
paged = no; /* leave this "no" */ | |
page_size = 8; /* for parallel programming */ | |
size = 4096; | |
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 x x a11 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 x x a11 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 x x a11 a10 a9 a8", | |
" a7 a6 a5 a4 a3 0 0 0", | |
" x x x x x x x x"; | |
mode = 0x41; | |
delay = 10; | |
blocksize = 128; | |
readsize = 256; | |
; | |
memory "flash" | |
paged = yes; | |
size = 131072; | |
page_size = 256; | |
num_pages = 512; | |
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 x x x x x x", | |
" x 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 x x x x x x", | |
" x 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 x x x x x x x", | |
" x x x x x x x x"; | |
mode = 0x41; | |
delay = 10; | |
blocksize = 256; | |
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 x x x x x", | |
"x x x x x x x x 1 1 i i i i i i"; | |
min_write_delay = 9000; | |
max_write_delay = 9000; | |
; | |
memory "lfuse" | |
size = 1; | |
read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0", | |
"x x x x x x x x 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", | |
"x x x x x x x x i i i i i i i i"; | |
min_write_delay = 9000; | |
max_write_delay = 9000; | |
; | |
memory "hfuse" | |
size = 1; | |
read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0", | |
"x x x x x x x x 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", | |
"x x x x x x x x i i i i i i i i"; | |
min_write_delay = 9000; | |
max_write_delay = 9000; | |
; | |
memory "efuse" | |
size = 1; | |
read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0", | |
"x x x x x x x x 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", | |
"x x x x x x x x 1 1 1 1 1 i i i"; | |
min_write_delay = 9000; | |
max_write_delay = 9000; | |
; | |
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"; | |
; | |
memory "calibration" | |
size = 1; | |
read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x", | |
"0 0 0 0 0 0 0 0 o o o o o o o o"; | |
; | |
; |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
thanx, that works well!