¿Cómo puedo corregir un error de no sincronización de AVRdude al programar Arduino mediante un cable USB a serie?

9

Estoy intentando crear this Iluminación ambiental para PC . Esto funcionó perfectamente en mi Arduino Uno. Mi siguiente paso fue hacerlo usando "Arduino on a breadboard" . Así que compré un chip ATmega328 en blanco y quemé el cargador de arranque Arduino (para la placa "Arduino Duemilanove w / ATmega328") con el IDE de Arduino y USBasp; y sé que se ha cargado correctamente ya que este chip ATmega funciona bien en el Uno.

Luego hice el convertidor de USB a serie utilizando FT232RL ; pero sus controladores no se instalaron en mi PC (Windows 7 x64). Sospecho que recalenté el chip FTDI de montaje en superficie y lo maté mientras lo soldaba a mano.

Por lo tanto, lo he mantenido a un lado, y obtuve este puente de conversión de USB a serie: (Lo siento por las fotos de mierda) Utilicé un ST232CN adicional en mi panel de control para convertir los niveles de voltaje de RS232 a TTL, como se muestra en esta página . Y esto funciona bien, como verifiqué en una prueba de bucle invertido. Y he conectado el pin 9 de ST232 al pin 2 de ATmega, y el pin 10 al pin 3.

Cuando intenté cargar un ejemplo de blink desde el IDE de Arduino, obtengo este error:

Binary sketch size: 1026 bytes (of a 30720 byte maximum)
avrdude: stk500_getsync(): not in sync: resp=0x00

Cuando hago la carga detallada (Shift + Upload), aparece este error / mensaje:

avrdude: usbdev_open(): did not find any USB device "usb"

También, intenté agregar 1k resistencias pull-up en los pines 2 y 3 de ATmega, pero no ayudé. Entonces, ¿supongo que el problema ahora está en la comunicación en serie del ST232 a ATmega? ¿Y hay alguna conexión especial al pin de reinicio de ATmega? Lo he subido a 5 V con una resistencia de 10k.

    
pregunta potato_in_my_ear

6 respuestas

6

Cada vez que recibí el error "no está sincronizado", estaba relacionado con que solo faltaba el tiempo de reinicio (¡u olvido el reinicio por completo!). Para mi placa de control, y Eclipse / AVRDude, deshacer la conexión a tierra del pin de reinicio justo antes o al mismo tiempo que hago clic en el botón de carga es el momento adecuado. Pero también verifique que su PC realmente vea el adaptador cuando lo conecte.

Más tarde, las placas arduino están diseñadas para restablecerse cada vez que se realiza una conexión en serie, y mediante el cargador de arranque mediante programación. Este artículo del blog describe cómo funciona, e incluso más interesante, cómo hackearlo antes. tableros No debería ser demasiado difícil ponerlo en una placa de pruebas si quisiera. El chip debe tener un cargador de arranque compatible, por supuesto (que ya has puesto en el tuyo). Para placas de pruebas, solo hago el botón de reinicio / clic con el botón del mouse.

    
respondido por el JRobert
2

Como @JRobert dijo en los comentarios, el momento adecuado para conectar y desconectar a tierra el pin de reinicio en ATmega hizo el truco. Continúe conectando a tierra el pin de reinicio de ATmega cuando haga clic en "Cargar", y al igual que muestra "Cargando", descúbralo.

    
respondido por el potato_in_my_ear
0

Tuve los mismos errores que he visto publicados en varios sitios RE: Arduino mensaje "avrdude: stk500_getsync (): no está sincronizado: resp = 0x00" o similar.

Descubrí que si quito lo que está parcheado en D0 ([D0] pin Zero DIGITAL, lo más alejado posible de las tomas de alimentación y USB, también lee "RX").

Probé dos computadoras diferentes, obtuve los mismos errores y descubrí que si: 1- Quito el cable o abro el circuito a [D0] 2- Subir a Arduino 3- vuelva a parchear el cable retirado o cierre el circuito abierto a [D0]

Solo he encontrado ese error cuando subo y esta es mi solución. por ahora.

Espero que ayude.

¡Se siente bien para finalmente dar algo de información útil a una comunidad!

    
respondido por el ddd
0

Esto solucionó mi problema, vaya a Controladores y configuración, reemplace Boards.txt en el IDE de arduino ...

Tengo arduino MEGA 2560 R3 y tuve el mismo problema

avrdude: stk500_getsync (): no está sincronizado: resp = 0x00

enlace

    
respondido por el user36857
-1

Para corregir el error "avrdude: stk500_getsync (): no está sincronizado: resp = 0x00". Simplemente instale la versión 2.8.24.0 del controlador FTDI. Hay algunos problemas con el nuevo controlador v2.8.28.0.

    
respondido por el Christian Skjerning
-1

Al cargar los códigos de Arduino IDE en su computadora, extraiga el pin RX RX de la tarjeta Arduino. Obtendrá la carga del código de éxito. Enchufe el pin RX y pruebe. O bien, puede que te pongan (tal vez) el RX de bluetooth al RX de Arduino para que los TX estén conectados entre sí.

    
respondido por el Bay

Lea otras preguntas en las etiquetas