Ayuda con Atmega8

Hola que tal! estoy intentanto programar por primera vez un Atmega8 con PonyProg2000 y con un programador que utiliza el puerto serial. El problema que tengo es que cuando intento escribir la flash me sale una alerta que dice "Device missing or unknown device (-24)"
Desde ya les agradesco si me pudieran ayudar, un saludo grande!

PD: Adjunto el programador que utilizo.
 

Adjuntos

  • Programador.pdf
    877.9 KB · Visitas: 64
Ese circuito funciona bien, pero al principio te puede costar hacerlo funcionar si tenés ciertas cosas mal.

Te recomendaría verificar el circuito programador con una fuente conectada desde el puerto serie a masa del circuito (obviamente sin el uC y sin la Pc, solo el circuito programador y la fuente del uC):

- Reset: fijate que todo esté bien soldado y que cuando a la entrada le aplicas 10v a la salida deberías tener 0v (el transistor conduce). Hace lo mismo, pero invirtiendo la tensión, aplicando -10v, deberías medir 5v a la salida (el transistor no conduce, y queda el pull-up de 5v).

- Sck y MOSI: fijate que todo esté bien soldado y que cuando a la entrada le aplicas 10v a la salida deberías tener algo cercano a 5v (entre 4,5v a 5v). Hace lo mismo, pero invirtiendo la tensión, aplicando -10v, deberías medir -0,7v a la salida.

- MISO: verificá bien las soldaduras.
 
Hola cosme, muchas gracias por responder. Estoy alimentando el circuito con una fuente externa a 5v, esta bien asi? y otra consulta tiene algo que ver el fuse RSTDISBL? porque me aparece deshabilitado.
Disculpa las molestias, es que es la primera vez que programo un AVR y estoy aprendiendo :D
 
Si aparece ese error 24, es porque no se puede comunicar bien entre uC y la Pc, así que toda esa información no la tengas en cuenta todavía.

Otra cosa que se me paso, no te olvides de configurar el Pony Prog bien, tal como dice el PDF.

Estoy alimentando el circuito con una fuente externa a 5v...

Está bien para alimentar al uC, pero lo que yo te dije que hagas es simular las tensiones que te tira el puerto serie y ver como se comporta tu circuito programador, si todo está bien, deberías obtener las tensiones que te mencione y ya podés descartar ese problema.

Resumiendo, necesitas una fuente que te tire 10v o algo parecido y otra de 5v para alimentar al uC.

Cuando hagas las pruebas, saca el uC, conecta el circuito programador y dale tensión de 5v al circuito. Por otro lado con la otra tensión de fuente de 10v vas haciendo las pruebas que te dije, aplicando esa tensión en los distintos pines del puerto serie.

Editado:

Acá te dejo como deberías medir el comportamiento del puerto Reset:

 
Última edición:
Cosme te comento que hice todos lo que me dijiste y si, las tensiones que me da son las que vos me dijiste, no es el circuito el problema! :(
 
Revisá bien las soldaduras al uC, fijate que a los terminales les llegue bien esas tensiones. Si todo esta bien, entonces tal verificá que el cable serie este también bien soldado y que los terminales sean los adecuado (tal vez soldaste la ficha alrevés).
 
...este es el programador que yo utilizo junto con ponyprog y sin problemas...

una pregunta: ¿tú le colocas al atmega8 la fuente de 5 voltios y el cristal con sus condensadores?

si es así... entonces revisa todo con detenimiento

saludos
 
...este es el programador que yo utilizo junto con ponyprog y sin problemas...

una pregunta: ¿tú le colocas al atmega8 la fuente de 5 voltios y el cristal con sus condensadores?

si es así... entonces revisa todo con detenimiento

saludos

Por lo menos con el atmega que yo tengo vino de fabrica con los fuse para que trabaje en 1MHz con la red R-C interna.
 
Hice el circuito en una protoboard y si a ustedes les anda entonces yo debo estar comentiendo un error pero estuve todo el dia verificando y no veo nada extraño.

Otra cosa, el fuse RSTDISBL me aparece deshabilitado, tendra algo que ver?

rash: coloque un cristal de 4Mhz con 2 capacitores de 22pf como indica el esquema y una fuente de 5v


PD: Disculpen por todo, es que es la primera vez que programo un AVR
 
Última edición:
Hola compañero, para este hilo te tengo algunas preguntas:

- El micro que quieres programar es nuevo o ya se había programado?
- Le colocas el cristal con sus condensadores?
- Ya revisaste el cable serial que estás usando, para ver si todos los hilos están en buen estado?
- Ya probaste con otro micro? Esto puede resolver toda la duda, si es hardware o es el AVR.

Si acaso el problema no es de hardware, entonces una posible causa puede ser que si el micro ya se había programado se grabaron mal los fuses de la fuente de reloj, por lo que el avr no responde a la señal de reloj que envía el PonyProg por el puerto serie. Yo tuve ese problema, usé el programador que tienes y el PonyProg, y duré como una semana luchando contra ese bendito "error -24". Inclusive tuve que comprarme otro micro, resignado a que el primero lo había echado a perder.

No se si interese, pero decidí armar el programador Lazarux (https://www.forosdeelectronica.com/f24/programador-avrs-solo-lazarux-41038/) y por suerte en este programador si me reconoció el micro que no funcionaba con el programador serial. Aunque yo se que son más cosas y por ende más dinero, lo poco que lo he probado me parece que el Lazarux es un programador confiable. Esa fue mi solución.

Se que tal vez solo traje más dudas, pero pueda ser también que ayude a buscar una respuesta acertada a tu problema.

Nos leemos luego.
 
Última edición:
Comprueba varias cosas:

Con respecto al programador:
- que el transistor del programador esté bien.
- que los cables sean lo más cortos posibles.
- que todo esté bien soldado.
- que los zener estén bien.
- yo probaría a subir el valor de la resistencia de 15K a 33K... y colocaría un condensador de 220 pF en paralelo con el zener de la izquierda.

Con respecto al ordenador:
- ¿qué sistema operativo utilizas?
- ¿es un conector RS232 original... o lo haces a traves de algún adaptador USB-RS232?
- prueba en otro PC..

Con respecto al ponyprog2000 y atmega8:
- ¿sabes como configurar los fuses del atmega8?
- Repasa el menu setup del programa.
- prueba con otro atmega8... por si acaso lo has quemado a la hora de conectarles los 5V.... un error de pin o una inversión de polaridad sería su muerte.

yo te puedo comentar mi experiencia con este programador, ne ha funcionado siempre....

haber ya nos cuentas....

saludos
 
Última edición:
Lo que sería el hardware del programador ya se descartó como problema porque ya lo comprobó como le dije arriba con las entradas MOSI,SCK y reset y le dio bien las tensiones.

El problema yo creo que se reduce a que:

- Las soldaduras del uC no esten bien

- El puerto serie no lo soldó bien, en el orden adecuado (confundir pin1 con pin5, por ej.).

- Lo que dice rash respecto al adaptador Rs232-usb, ese adaptador solo tiene las lineas GND, Tx y Rx (no creo porque el Test le dió bien).

- Lo que dice QuimCri, si el Atmega fue usado o no, de fabrica viene con los fuse para usar la red RC interna a 1MHz, pero si alguien los modifica anda a saber en donde los pudo haber dejado (será cuestión de probar las alternativas).
 
Última edición:
Hola gente! perdon por responder tan tarde, estuve muy ocupado esta semana, finalmente pude dar con el problema. Falta de driver en mi PC, se me dio por mirar el administrador de dispositivos y tenia ese problema que no me reconocia el dispositivo y me impedia la comunicacion con el micro.
El programador funciona de maravilla, gracias a los que me dieron una mano! un saludo muy grande a todos! :D
 
hola gente estoy tratando de grabar un atmega......uso el ponyprog..u el grabador es el si-prog...ya revise la parte de la placa........y el programador todo correcto ..busque en el foro y en internet y logro dar con la falla el mensaje que aparece es este ... Ver el archivo adjunto 105509 agradezco de antemano cualquier guia...juan
 

Adjuntos

  • capture_02142014_185846.jpg
    capture_02142014_185846.jpg
    31.2 KB · Visitas: 13
El querido mensaje del pony-prog que te levanta el ánimo siempre :LOL:.

¿Qué programador usas (cable)?

Si no tocastes los benditos fuses (mucho cuidado con eso), el uC debe funcionar en 1MHz.

Verificá que el Reset este bien conectado.
 
Atrás
Arriba