Advertisement
Guest User

Untitled

a guest
Oct 22nd, 2018
70
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 13.21 KB | None | 0 0
  1. #------------------------------------------------------------
  2. # ATmega1284
  3. #------------------------------------------------------------
  4.  
  5. # similar to ATmega164
  6.  
  7. part
  8. id = "m1284";
  9. desc = "ATmega1284";
  10. has_jtag = yes;
  11. stk500_devcode = 0x82; # no STK500v1 support, use the ATmega16 one
  12. avr910_devcode = 0x74;
  13. signature = 0x1e 0x97 0x06;
  14. pagel = 0xd7;
  15. bs2 = 0xa0;
  16. chip_erase_delay = 55000;
  17. pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1",
  18. "x x x x x x x x x x x x x x x x";
  19.  
  20. chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x",
  21. "x x x x x x x x x x x x x x x x";
  22.  
  23. timeout = 200;
  24. stabdelay = 100;
  25. cmdexedelay = 25;
  26. synchloops = 32;
  27. bytedelay = 0;
  28. pollindex = 3;
  29. pollvalue = 0x53;
  30. predelay = 1;
  31. postdelay = 1;
  32. pollmethod = 1;
  33.  
  34. pp_controlstack =
  35. 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F,
  36. 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F,
  37. 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B,
  38. 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x02;
  39. hventerstabdelay = 100;
  40. progmodedelay = 0;
  41. latchcycles = 6;
  42. togglevtg = 1;
  43. poweroffdelay = 15;
  44. resetdelayms = 1;
  45. resetdelayus = 0;
  46. hvleavestabdelay = 15;
  47. chiperasepulsewidth = 0;
  48. chiperasepolltimeout = 10;
  49. programfusepulsewidth = 0;
  50. programfusepolltimeout = 5;
  51. programlockpulsewidth = 0;
  52. programlockpolltimeout = 5;
  53.  
  54. idr = 0x31;
  55. spmcr = 0x57;
  56. allowfullpagebitstream = no;
  57.  
  58. ocdrev = 3;
  59.  
  60. memory "eeprom"
  61. paged = no; /* leave this "no" */
  62. page_size = 8; /* for parallel programming */
  63. size = 4096;
  64. min_write_delay = 9000;
  65. max_write_delay = 9000;
  66. readback_p1 = 0xff;
  67. readback_p2 = 0xff;
  68. read = " 1 0 1 0 0 0 0 0",
  69. " 0 0 x x a11 a10 a9 a8",
  70. " a7 a6 a5 a4 a3 a2 a1 a0",
  71. " o o o o o o o o";
  72.  
  73. write = " 1 1 0 0 0 0 0 0",
  74. " 0 0 x x a11 a10 a9 a8",
  75. " a7 a6 a5 a4 a3 a2 a1 a0",
  76. " i i i i i i i i";
  77.  
  78. loadpage_lo = " 1 1 0 0 0 0 0 1",
  79. " 0 0 0 0 0 0 0 0",
  80. " 0 0 0 0 0 a2 a1 a0",
  81. " i i i i i i i i";
  82.  
  83. writepage = " 1 1 0 0 0 0 1 0",
  84. " 0 0 x x a11 a10 a9 a8",
  85. " a7 a6 a5 a4 a3 0 0 0",
  86. " x x x x x x x x";
  87.  
  88. mode = 0x41;
  89. delay = 10;
  90. blocksize = 128;
  91. readsize = 256;
  92. ;
  93.  
  94. memory "flash"
  95. paged = yes;
  96. size = 131072;
  97. page_size = 256;
  98. num_pages = 512;
  99. min_write_delay = 4500;
  100. max_write_delay = 4500;
  101. readback_p1 = 0xff;
  102. readback_p2 = 0xff;
  103. read_lo = " 0 0 1 0 0 0 0 0",
  104. "a15 a14 a13 a12 a11 a10 a9 a8",
  105. " a7 a6 a5 a4 a3 a2 a1 a0",
  106. " o o o o o o o o";
  107.  
  108. read_hi = " 0 0 1 0 1 0 0 0",
  109. "a15 a14 a13 a12 a11 a10 a9 a8",
  110. " a7 a6 a5 a4 a3 a2 a1 a0",
  111. " o o o o o o o o";
  112.  
  113. loadpage_lo = " 0 1 0 0 0 0 0 0",
  114. " 0 0 x x x x x x",
  115. " x a6 a5 a4 a3 a2 a1 a0",
  116. " i i i i i i i i";
  117.  
  118. loadpage_hi = " 0 1 0 0 1 0 0 0",
  119. " 0 0 x x x x x x",
  120. " x a6 a5 a4 a3 a2 a1 a0",
  121. " i i i i i i i i";
  122.  
  123. writepage = " 0 1 0 0 1 1 0 0",
  124. "a15 a14 a13 a12 a11 a10 a9 a8",
  125. " a7 x x x x x x x",
  126. " x x x x x x x x";
  127.  
  128. mode = 0x41;
  129. delay = 10;
  130. blocksize = 256;
  131. readsize = 256;
  132. ;
  133.  
  134. memory "lock"
  135. size = 1;
  136. read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0",
  137. "x x x x x x x x x x o o o o o o";
  138.  
  139. write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x",
  140. "x x x x x x x x 1 1 i i i i i i";
  141. min_write_delay = 9000;
  142. max_write_delay = 9000;
  143. ;
  144.  
  145. memory "lfuse"
  146. size = 1;
  147. read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0",
  148. "x x x x x x x x o o o o o o o o";
  149.  
  150. write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0",
  151. "x x x x x x x x i i i i i i i i";
  152. min_write_delay = 9000;
  153. max_write_delay = 9000;
  154. ;
  155.  
  156. memory "hfuse"
  157. size = 1;
  158. read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0",
  159. "x x x x x x x x o o o o o o o o";
  160.  
  161. write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0",
  162. "x x x x x x x x i i i i i i i i";
  163. min_write_delay = 9000;
  164. max_write_delay = 9000;
  165. ;
  166.  
  167. memory "efuse"
  168. size = 1;
  169.  
  170. read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0",
  171. "x x x x x x x x o o o o o o o o";
  172.  
  173. write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0",
  174. "x x x x x x x x 1 1 1 1 1 i i i";
  175. min_write_delay = 9000;
  176. max_write_delay = 9000;
  177. ;
  178.  
  179. memory "signature"
  180. size = 3;
  181. read = "0 0 1 1 0 0 0 0 x x x x x x x x",
  182. "x x x x x x a1 a0 o o o o o o o o";
  183. ;
  184.  
  185. memory "calibration"
  186. size = 1;
  187.  
  188. read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x",
  189. "0 0 0 0 0 0 0 0 o o o o o o o o";
  190. ;
  191. ;
  192.  
  193.  
  194.  
  195. #------------------------------------------------------------
  196. # ATmega1284P
  197. #------------------------------------------------------------
  198.  
  199. # similar to ATmega164p
  200.  
  201. part
  202. id = "m1284p";
  203. desc = "ATmega1284P";
  204. has_jtag = yes;
  205. stk500_devcode = 0x82; # no STK500v1 support, use the ATmega16 one
  206. avr910_devcode = 0x74;
  207. signature = 0x1e 0x97 0x05;
  208. pagel = 0xd7;
  209. bs2 = 0xa0;
  210. chip_erase_delay = 55000;
  211. pgm_enable = "1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1",
  212. "x x x x x x x x x x x x x x x x";
  213.  
  214. chip_erase = "1 0 1 0 1 1 0 0 1 0 0 x x x x x",
  215. "x x x x x x x x x x x x x x x x";
  216.  
  217. timeout = 200;
  218. stabdelay = 100;
  219. cmdexedelay = 25;
  220. synchloops = 32;
  221. bytedelay = 0;
  222. pollindex = 3;
  223. pollvalue = 0x53;
  224. predelay = 1;
  225. postdelay = 1;
  226. pollmethod = 1;
  227.  
  228. pp_controlstack =
  229. 0x0E, 0x1E, 0x0F, 0x1F, 0x2E, 0x3E, 0x2F, 0x3F,
  230. 0x4E, 0x5E, 0x4F, 0x5F, 0x6E, 0x7E, 0x6F, 0x7F,
  231. 0x66, 0x76, 0x67, 0x77, 0x6A, 0x7A, 0x6B, 0x7B,
  232. 0xBE, 0xFD, 0x00, 0x01, 0x00, 0x00, 0x00, 0x02;
  233. hventerstabdelay = 100;
  234. progmodedelay = 0;
  235. latchcycles = 6;
  236. togglevtg = 1;
  237. poweroffdelay = 15;
  238. resetdelayms = 1;
  239. resetdelayus = 0;
  240. hvleavestabdelay = 15;
  241. chiperasepulsewidth = 0;
  242. chiperasepolltimeout = 10;
  243. programfusepulsewidth = 0;
  244. programfusepolltimeout = 5;
  245. programlockpulsewidth = 0;
  246. programlockpolltimeout = 5;
  247.  
  248. idr = 0x31;
  249. spmcr = 0x57;
  250. allowfullpagebitstream = no;
  251.  
  252. ocdrev = 3;
  253.  
  254. memory "eeprom"
  255. paged = no; /* leave this "no" */
  256. page_size = 8; /* for parallel programming */
  257. size = 4096;
  258. min_write_delay = 9000;
  259. max_write_delay = 9000;
  260. readback_p1 = 0xff;
  261. readback_p2 = 0xff;
  262. read = " 1 0 1 0 0 0 0 0",
  263. " 0 0 x x a11 a10 a9 a8",
  264. " a7 a6 a5 a4 a3 a2 a1 a0",
  265. " o o o o o o o o";
  266.  
  267. write = " 1 1 0 0 0 0 0 0",
  268. " 0 0 x x a11 a10 a9 a8",
  269. " a7 a6 a5 a4 a3 a2 a1 a0",
  270. " i i i i i i i i";
  271.  
  272. loadpage_lo = " 1 1 0 0 0 0 0 1",
  273. " 0 0 0 0 0 0 0 0",
  274. " 0 0 0 0 0 a2 a1 a0",
  275. " i i i i i i i i";
  276.  
  277. writepage = " 1 1 0 0 0 0 1 0",
  278. " 0 0 x x a11 a10 a9 a8",
  279. " a7 a6 a5 a4 a3 0 0 0",
  280. " x x x x x x x x";
  281.  
  282. mode = 0x41;
  283. delay = 10;
  284. blocksize = 128;
  285. readsize = 256;
  286. ;
  287.  
  288. memory "flash"
  289. paged = yes;
  290. size = 131072;
  291. page_size = 256;
  292. num_pages = 512;
  293. min_write_delay = 4500;
  294. max_write_delay = 4500;
  295. readback_p1 = 0xff;
  296. readback_p2 = 0xff;
  297. read_lo = " 0 0 1 0 0 0 0 0",
  298. "a15 a14 a13 a12 a11 a10 a9 a8",
  299. " a7 a6 a5 a4 a3 a2 a1 a0",
  300. " o o o o o o o o";
  301.  
  302. read_hi = " 0 0 1 0 1 0 0 0",
  303. "a15 a14 a13 a12 a11 a10 a9 a8",
  304. " a7 a6 a5 a4 a3 a2 a1 a0",
  305. " o o o o o o o o";
  306.  
  307. loadpage_lo = " 0 1 0 0 0 0 0 0",
  308. " 0 0 x x x x x x",
  309. " x a6 a5 a4 a3 a2 a1 a0",
  310. " i i i i i i i i";
  311.  
  312. loadpage_hi = " 0 1 0 0 1 0 0 0",
  313. " 0 0 x x x x x x",
  314. " x a6 a5 a4 a3 a2 a1 a0",
  315. " i i i i i i i i";
  316.  
  317. writepage = " 0 1 0 0 1 1 0 0",
  318. "a15 a14 a13 a12 a11 a10 a9 a8",
  319. " a7 x x x x x x x",
  320. " x x x x x x x x";
  321.  
  322. mode = 0x41;
  323. delay = 10;
  324. blocksize = 256;
  325. readsize = 256;
  326. ;
  327.  
  328. memory "lock"
  329. size = 1;
  330. read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0",
  331. "x x x x x x x x x x o o o o o o";
  332.  
  333. write = "1 0 1 0 1 1 0 0 1 1 1 x x x x x",
  334. "x x x x x x x x 1 1 i i i i i i";
  335. min_write_delay = 9000;
  336. max_write_delay = 9000;
  337. ;
  338.  
  339. memory "lfuse"
  340. size = 1;
  341. read = "0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0",
  342. "x x x x x x x x o o o o o o o o";
  343.  
  344. write = "1 0 1 0 1 1 0 0 1 0 1 0 0 0 0 0",
  345. "x x x x x x x x i i i i i i i i";
  346. min_write_delay = 9000;
  347. max_write_delay = 9000;
  348. ;
  349.  
  350. memory "hfuse"
  351. size = 1;
  352. read = "0 1 0 1 1 0 0 0 0 0 0 0 1 0 0 0",
  353. "x x x x x x x x o o o o o o o o";
  354.  
  355. write = "1 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0",
  356. "x x x x x x x x i i i i i i i i";
  357. min_write_delay = 9000;
  358. max_write_delay = 9000;
  359. ;
  360.  
  361. memory "efuse"
  362. size = 1;
  363.  
  364. read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0",
  365. "x x x x x x x x o o o o o o o o";
  366.  
  367. write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0",
  368. "x x x x x x x x 1 1 1 1 1 i i i";
  369. min_write_delay = 9000;
  370. max_write_delay = 9000;
  371. ;
  372.  
  373. memory "signature"
  374. size = 3;
  375. read = "0 0 1 1 0 0 0 0 x x x x x x x x",
  376. "x x x x x x a1 a0 o o o o o o o o";
  377. ;
  378.  
  379. memory "calibration"
  380. size = 1;
  381.  
  382. read = "0 0 1 1 1 0 0 0 0 0 0 x x x x x",
  383. "0 0 0 0 0 0 0 0 o o o o o o o o";
  384. ;
  385. ;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement