Offline
Newbie
Karma: 0
Posts: 26
|
 |
« on: January 30, 2012, 05:34:27 pm » |
¿ Es posible dumpear al contenido de la flash del atmega mediante avrdude ? Teoricamente "avrdude -p m328p -D -c programador -U flash:r:archivo:i" deberia producir un volcado completo de la flash en un archivo de nombre archivo y formato intel hex sin borrar la memoria. ¿Estoy en lo cierto? ¿Alguien lo ha probado o tiene experiencia? Gracias y un saludo.
|
|
|
|
« Last Edit: January 31, 2012, 08:38:45 pm by donrodrigo »
|
Logged
|
|
|
|
|
Offline
Newbie
Karma: 0
Posts: 26
|
 |
« Reply #1 on: January 31, 2012, 08:57:26 pm » |
Bueno, pues si se puede. Ya lo he probado. Con avrdude y un programador se puede descargar el hex a un file para poderlo cargar a otro atmega, de hecho se puede clonar desde el bootloader hasta la configuracion de los fuses.
Para el atmega 328p
"avrdude -c nombreprogramador -p m328p -P puerto_programador -U efuse:r:efuse.txt -U hfuse:r:hfuse.txt -U lfuse:r:lfuse.txt" ==> lee valores de los fuses y los salva en sus respectivos files.
"avrdude -c nombreprogramador -p m328p -P puerto_programador -U boot:r:bootloader:i " ==> lee el bootloader y salva en bootloader.hex
"avrdude -c nombreprogramador -p m328p -P puerto_programador -U flash:r:sketch:i " ==> lee la flash desde el lockbit y salva en sketch.hex (corresponde al soft compilado que ejecuta el atmega).
Weno, pos eso. Ya he aprendido algo mas. jijijijiji Un saludo a todos.
|
|
|
|
|
Logged
|
|
|
|
|
0
Offline
Edison Member
Karma: 12
Posts: 1554
|
 |
« Reply #2 on: February 04, 2012, 09:06:14 pm » |
Puedes poner el link a este post en el playground en español? Seguro que viene bien tener este post a mano... Gracias! http://arduino.cc/playground/Es/FAQ (es editable por cualquiera).
|
|
|
|
« Last Edit: February 04, 2012, 09:18:58 pm by Igor R »
|
Logged
|
|
|
|
|
Offline
Jr. Member
Karma: 0
Posts: 53
|
 |
« Reply #3 on: February 05, 2012, 04:18:41 am » |
Y la pregunta igual de importante, es: ¿Se puede bloquear el volcado del programa del chip? se trataría de que no te clonen el software, sin tu conocimiento..... 
|
|
|
|
|
Logged
|
|
|
|
|
0
Offline
Edison Member
Karma: 8
Posts: 1040
Arduino rocks
|
 |
« Reply #4 on: February 05, 2012, 11:01:11 am » |
Y la pregunta igual de importante, es: ¿Se puede bloquear el volcado del programa del chip? se trataría de que no te clonen el software, sin tu conocimiento.....  No lo conozco
|
|
|
|
|
Logged
|
|
|
|
|
Offline
Newbie
Karma: 0
Posts: 26
|
 |
« Reply #5 on: February 05, 2012, 01:12:07 pm » |
¿Como se pone el link a este post en el playground? esto de forear es nuevo para mi... Y por otro lado no se como se puede bloquear la descarga del programa, supongo que no debe ser posible. De todas formas mirare en el datasheet del atmel por sise pudiera bloquear la lectura de la flash.
|
|
|
|
|
Logged
|
|
|
|
|
Offline
Jr. Member
Karma: 0
Posts: 53
|
 |
« Reply #6 on: February 05, 2012, 05:11:18 pm » |
Ah, te agradecería que lo mirases, es algo que llevo tiempo dándole vueltas.....
|
|
|
|
|
Logged
|
|
|
|
|
Ciudad Real
Offline
God Member
Karma: 1
Posts: 747
Arduino rocks
|
 |
« Reply #7 on: February 05, 2012, 08:15:11 pm » |
en el capítulo 27 de datasheet del atmega tienes las distintas configuraciones para el acceso a las distintas memorias
un saludo
|
|
|
|
|
Logged
|
|
|
|
|
|
|
0
Offline
Edison Member
Karma: 8
Posts: 1040
Arduino rocks
|
 |
« Reply #9 on: April 17, 2012, 08:32:42 am » |
Y la pregunta igual de importante, es: ¿Se puede bloquear el volcado del programa del chip? se trataría de que no te clonen el software, sin tu conocimiento.....  No lo conozco Pues buscando por google otras cosas encontré un blog en el que venia que con avrdude se puede activar el bit contra lectura. ¿Sabéis si existe algún manual de avrdude?
|
|
|
|
|
Logged
|
|
|
|
|
0
Offline
Edison Member
Karma: 8
Posts: 1040
Arduino rocks
|
 |
« Reply #10 on: April 17, 2012, 08:45:05 am » |
|
|
|
|
|
Logged
|
|
|
|
|
Offline
Edison Member
Karma: 22
Posts: 1374
|
 |
« Reply #11 on: April 17, 2012, 10:11:43 am » |
El volcar la flash del chip es un tema que se trató el año pasado: http://arduino.cc/forum/index.php/topic,78160.0.htmlSegún interpreto el datasheet, para proteger el programa hay que seleccionar el modo LB 3, es decir borrar los bits LB0 y LB1 del byte de bloqueo, es decir, los bits 0 y 1, que sería 0xFC. Habría que añadir el siguiente parámetro a la llamada del avrdude: -U lock:w:0xFC:m El problema es que ya no puedes acceder nunca más al micro a menos que hagas un borrado completo, que solo puede hacerse con un programador, cosa que aunque no lo he probado, debería poderse con el usbasp mismo que cuesta 3€. @flico: http://www.nongnu.org/avrdude/user-manual/avrdude_4.html
|
|
|
|
|
Logged
|
|
|
|
|
0
Offline
Edison Member
Karma: 8
Posts: 1040
Arduino rocks
|
 |
« Reply #12 on: April 17, 2012, 11:36:53 am » |
@Chiva gracias por el link.
|
|
|
|
|
Logged
|
|
|
|
|
|
|
|