¿Cómo configurar los Fuses del AVR?

Sí se puede, siempre y cuando la programación sea en modo paralelo y aplicando alto voltaje (+12V) al pin de reset.
Mientras los fuses se mantengan dentro de las frecuencias que son soportadas por ISP, claro que se puede revivirlos.
Pero el problema viene cuando se deshabilita el pin de reset, fuse (RSTDISBL = 0) o se colocan los fuses CKSEL3 <> CKSEL0 en 0
Que en el caso de los ATmega un 0 es activar, y un 1 es desactivar.
Si eso llega a pasar, el USBasp o cualquier programador ISP ya no los podrá reconocer.
Pero bueno, también existe la posibilidad de hacer un programador HV con Arduino y de esa forma sí se pueden recuperar.
Existen otras formas, como en mi caso que uso otro ATmega programado y lo hago en protoboard, porque la flojera no me ha dejado hacer el circuito impreso.
Con el AVR-Doper también se puede, ya que emula al programador STK500
 
Ya pude resolver el problema con el Bootloader del Optiboot para el ATmega88PA
Efectivamente el problema eran los fuses.
Me puse a estudiar bien la hoja de datos en este aspecto y logré dar con los fuses adecuados.
Principalmente, esto me llamó la atención:
mega88PA Table 9-3.jpg
Y el fuse CKDIV8 yo lo tenía activado, o sea, en 0
Lo establecí en 1 (Desactivado) y usando el archivo "optiboot_flash_atmega88pb_UART0_115200_16000000L_B5.hex" Arduino IDE ya pudo subir el Sketch sin ningún problema.

A todo esto quiero agregar que las hojas de datos para eso están y que son bastante útiles.
Por quererle hacer al vago y usar AVR FuseCalculator, más no poner mucha atención a la hoja de datos, solo perdí tiempo en algo que siempre estuvo ahí diciendo "Léeme bien que yo tengo la respuesta."

Finalmente los fuses para el ATmega88PA quedaron así:
ATmega88PA Xtal 16MHz Fuses.jpg
El LFUSE es el importante con respecto al oscilador, el HFUSE lo dejé así porque quería un BOD a 2.7V.

Nótese que usé el bootloader para un mega88PB, porque no viene para el PA, pero con ese va bien.
Y ojo con esto, pues si no lo seleccionamos en las propiedades de la placa, habrá un error y no se podrá subir el Sketch.
Propiedades de la placa.jpg
 
Saludos.
¿Alguien sabe de algún programa para usar el programador STK500 HV que no sea con ATMEL Studio?
Tengo el TX_STK500(Ver6.4)
O sea, busco algo independiente como el programa AVRDUDE, pero que no sea este.
Ya he probado con AVRDUDESS (Interface) pero no logra comunicarse.
También probé con el SinaProg pero no detecta la tarjeta, de hecho, ni el puerto porque solo llega hasta el puerto 4 (COM4).
Y aunque le cambié las propiedades al PL2303 del STK500 de COM7 (Me queda así por defecto, obvimente por orden de dispositivos instalados) a COM4 en propiedades del puerto, tampoco detecta la tarjeta del programador.

Por ahora solo lo he podido hacer funcionar con el ATMEL Studio 7 que es el que tengo instalado, pero me gustaría saber si hay otra aplicación más ligera, solo para usarlo como programador sin tener que ejecutar todo un IDE.

Con ATMEL Studio 7 sí que va...
TX_STK500(Ver6.4) ATMEL Studio 7.jpg

Y la tarjeta del programador es esta:
TX_STK500(Ver6.4).jpg

Ojalá y alguien más metido en esto de los ATmega me pueda ayudar a solventar esto.
Gracias.
 
Y si te armas un ".bat" con los comandos para el AVRDUDE, y solo arrastras el archivo ".hex" o modificas el registro para enviarlo con clic derecho?

Si me decis los comandos y opciones, veo de armar una mini configuracion en linea de comandos
 
Es buena opción, pero suelo reemplazar los .bat por aplicaciones.
Son configurables y de todos modos hacen lo mismo, invocan parámetros hacia archivos ejecutables.
Pienso que tendré que conformarme con lo que hay o seguir buscando los parámetros requeridos por AVRDUDE.
Tengo unos cuantos pero ya los he invocado sin resultado, solo se cuelga sin respuesta.
 
Dejame ver si leo la documentacion de AVRDUDE y hago una aplicacion bajo wincho..
O para quien tenga Linux con QT5.9 instalado puedo pasarle los archivos para compilarlo en ese S.O....

Algo en especifico que necesites?
 
Algo en especifico que necesites?
Gracias. Principalmente argumentos para avrdude.exe
Son como algo encríptado para mí.
Sé cómo responder a ciertos argumentos, otros la verdad es que no logro dar en el clavo.
Unos se me hacen simples de comprender y otros de plano no les entiendo, por más vueltas y vueltas que leo.
Me gustaría saber sobre todo, leer y establecer los fuses.
Sé que eso está en la hoja de datos, y no habla de programadores.
Lo que quiero es crear una aplicación sencilla que lo haga sin cargar un IDE.
 
Osea, basicamente un programado.
Hay algun motivo por el que no quieras usar otras alternativas, a parte de que no te reconocen (que es raro igualmente)?

No recuerdo cual era, pero me habia bajado uno que era liviano, si lo veo te aviso
 
Hay algún motivo por el que no quieras usar otras alternativas, a parte de que no te reconocen (que es raro igualmente)?
Sí, el motivo es simple, no veo necesario ejecutar el IDE, es algo pesado como para nada más recuperar o reprogramar los fuses.
Y bien, esto de los fuses como bien sabrán, en los ATmega es algo de cuidado si se usa ISP, ya que una vez establecido el fuse RSTDISBL no hay marcha atrás y por ISP jamás podrás volver a leer ese chip. Es el grave defecto del ISP.
¿Sabes? Soy una persona a la que le gustan los desafíos, y leyendo esto de los fuses de los ATmega, me dispuse a comprobarlo.
Resultado... Cierto. Lo que decían era verdad, por ISP hay que tener mucho cuidado con esto.
Y me dije, ok, ya lo descompuse pero... no debe pasar nada grave, esto no debe dañar al microcontrolador, debe existir una forma de recuperarlo.
Así que me dí a la tarea de buscar información y por suerte la encontré.
Tuve que armar en protoboard algunos cables, muchos, programar un ATmega8 con el respectivo programa para recuperar un ATmega328P
Bueno, eso fue porque lo quería verificar, y sí, ya sabrás que lo que hice fue armar un programador de alto voltaje pararelo pero específico para un chip.
Si se quiere "desbloquear" otro, pues se carga otro programa.
Y cabe decir que no tenía ejecutables, solo el programa, pero el autor comentó lo que se debía hacer con cada chip.
Compilado esto y armado el circuito, solo restaba presionar un botón y en segundos ya te dejaba el ATmega dañado con los fuses por defecto.
Esto me sorprendió tanto que le envié felicitaciones al creador de este programa.
Pero bueno, ahí no paró el asunto, el autor realizó una tarjeta de doble cara para usar su programa, cosa que yo jamás hice.
Ya lo tenía funcionando en un protoboard, así que la tarjeta quedó en el olvido.
Pero, ¡upps! Un día se me ocurre usar ese protoboard y lo desmantelé :(
Quité todas sus conexiones y llegó el día que por experimentar con los bootloaders, me eché unos cuatro ATmega y nuevos. :rolleyes:
Gran arrepentimiento, pues ese sistema ya lo había quitado.
En fin, son tantos cables de punto a punto que me dije... no, compra un programador HV y olvídate de tarjetas y montajes en protoboards.
Lo hice, lo compré, pero resulta que no es un STK500HV original, tal vez lo emule, pienso que sí, y de forma maravillosa.
Desde el IDE de ATMEL Studio puedo hasta configurar los LOCK Bits
Y esto es genial cuando quieres vender algo y que no se pueda clonar. :)

En fin, la idea es poder crear una aplicación stand-alone (independiente) que pueda realizar este tipo de programación.
Como lo dije antes, principalmente los fuses.
Si va por comandos usando avrdude.exe, me resultaría genial saber cómo se hace.
 
Semejante anecdota, y excelente aprendisaje.

Entonces seria basicamente intentar enviar a la placa, las ordenes correspondientes, a traves del AVRDUDE o similar.

Vamos a ver qué sale....

Ando bastaaante complicado con el trabajo, al punto de que casi ni duermo, pero bue. Apenas me de un tiempito leo sobre todo eso.
 
¿Alguien sabe de algún programa para usar el programador STK500 HV que no sea con ATMEL Studio?
Tengo el TX_STK500(Ver6.4)
O sea, busco algo independiente como el programa AVRDUDE, pero que no sea este.
Ya he probado con AVRDUDESS (Interface) pero no logra comunicarse.
Me olvidé comentar que ya he resuelto el problema de comunicación del AVRDUDESS con el STK500
No había probado la opción "Atmel STK500 V2 in parallel programming mode" :silbando:
Atmel STK500 V2 in parallel programming mode.jpg
Problema resuelto. :)
 
Hola, mi nombre es Guillermo y soy de la CDMX
Saludos a todos los participantes en el tema.
Y
o tuve el mismo problema con ese programador, ahora funciona de maravilla, solo hay que instalar este controlador que les dejo en el archivo adjunto.
E
spero les funcione a todos los que sigan con el mismo detalle, buena suerte.
 

Adjuntos

  • PL2303_64bit_Installer.rar
    429.5 KB · Visitas: 5
Última edición por un moderador:
Atrás
Arriba