16 votos

Quemé un alfiler. Ahora, ¿qué hago?

Accidentalmente hice un cortocircuito en los pines 10 y 11 con 10 en la salida y 11 en la entrada. La clavija 11 no funciona. ¿Cómo puedo saber qué componente he quemado?

¿Se puede arreglar el problema?

21voto

userid53 Puntos 116

<strong>Supuesto: </strong><em>Como no se ha especificado el modelo concreto de Arduino, utilizaremos el Arduino Uno para ilustrar esta respuesta. El razonamiento se aplica de forma idéntica a los otros Arduinos, para sus respectivos pin-outs y voltajes de funcionamiento del microcontrolador.</em>

Consulte este diagrama de pines del Arduino Uno : ( fuente )


Arduino Uno pin-out


  • Como puede verse, los pines 10 y 11 son ambos pines GPIO estándar.
  • Cualquier El GPIO no puede emitir una tensión superior a la tensión de alimentación del microcontrolador (V CC ) en el Arduino. Para la Uno V CC es de 5 voltios.
  • Cualquier pin GPIO puede soportar una tensión de entrada de hasta V CC y un poco más alto (se toleran 5,5 voltios como estándar)
  • Además, cuando cualquier GPIO de Arduino está configurado como entrada, está en un estado de alta impedancia, por lo que es imposible pasar suficiente corriente en él para los voltajes involucrados, para que se produzca cualquier daño.
  • Así, cortocircuito de los pines 10 y 11 no puede causar ningún daño a cualquiera de las clavijas en las circunstancias señaladas en la pregunta.

Examinemos ahora las posibilidades alternativas:

  • Si la Uno se alimenta de la clavija de CC en lugar de 5 voltios de la conexión USB u otra fuente de alimentación regulada, el pin Vin produce una caída de diodo inferior a esta tensión de entrada: Esto sería alrededor de 8,3 voltios si la alimentación es una pila de 9 voltios conectada a la toma de barril.
  • Cortocircuitar este pin VIN a cualquiera de los pines analógicos o digitales del Arduino ( salvo los pines específicos que están protegidos por resistencias ) es muy probable que destruya el diodo/circuito de protección ESD interno para ese pin dentro del microcontrolador, o que destruya el propio microcontrolador. Esta podría ser la causa del problema.
  • Otra hipótesis es que la clavija 11 estuviera expuesta a alguna otra fuente de alta tensión, más allá del Vcc de la placa. Esto podría ser debido a back-EMF de un motor, o de la alta tensión (puede ser 10+ voltios ) generado por un doblador piezoeléctrico (altavoz piezoeléctrico) si se golpea contra algo. Esto podría causar daños a los diodos ESD / circuitos de protección como se ha señalado anteriormente
  • Siguiente, descarga electrostática de la electricidad estática puede dañar cualquier pin GPIO incluso cuando el dispositivo no está encendido. ¿Por casualidad te has peinado y luego has tocado la placa Arduino en algún momento, por ejemplo? El problema sólo aparecerá más tarde, cuando se intente utilizar ese pin en la placa, por lo que la causalidad suele ser difícil de precisar.
  • Por último, si dos clavijas son ambos configurados para la salida Si uno de los GPIOs está en alto y el otro en bajo, y estos están en cortocircuito, el pin "Alto" ve un cortocircuito a tierra a través del pin "Bajo". Esta contención de fuente a sumidero puede hacer que el microcontrolador se caliente, y aunque los microcontroladores AVR suelen tener protección de salida en los GPIOs, esto puede hacer que uno u otro de los pines deje de funcionar - aunque en este caso es más probable que falle todo el microcontrolador.

Dicho todo esto, si por la razón que sea el pin 11 deja de funcionar como entrada o salida, el circuito de protección interno correspondiente de la MCU queda irremediablemente dañado. No hay manera de reparar esto. Esto se ha cubierto bien en la respuesta de Manishearth .

Considérese afortunado de que no se haya destruido todo el microcontrolador y vuelva a codificar sus aplicaciones para que no vuelvan a utilizar el pin 11.

Consejo personal: Hace tiempo que bloqueé las tomas de VIN de mis placas Arduino pegando un poco de aislamiento pelado en ellas, para evitar exponer accidentalmente cualquier cable de puente a ese voltaje. Si algún día tengo que utilizar el VIN, me pasaré una hora deliciosa luchando por extraer ese trozo de aislante pegado ahí.

3voto

Eric Puntos 152

No debería ser posible destruir el pin al poner en cortocircuito la entrada con la salida. Los pines de entrada pueden manejar una tensión de nivel Vcc, por lo que deberían ser capaces de manejar la tensión de salida más baja del otro pin. Además, tienen una alta impedancia, por lo que deberían protegerlos de la mayoría de las cosas. (Ver la respuesta de Anindo en esta misma pregunta para más detalles sobre esto). En tu caso concreto, supongo que ha ocurrido una de las siguientes cosas:

  • Ambos pines fueron configurados para la salida
  • Has hecho un cortocircuito y no te has dado cuenta
  • (Ya que que mencionaste en el chat que la clavija volvió a funcionar) el polvo acumulado o la humedad estropearon la clavija

Sin embargo, usted puede destruir los pines con las siguientes conexiones (tomadas de este excelente post Hay muchas más formas de destruir un Arduino en general):

  • Pin de salida HIGH a GND
  • Pin de salida HIGH a pin de salida LOW
  • Aplicar cualquier tensión alta por encima de 5,5V a un pin (esto puede destruir algo más que la clavija)

En cuanto a lo que hay que hacer en general cuando se destruye una clavija:

En estos casos, el pin del microcontrolador está quemado y no se puede arreglar. La única manera de arreglar esto es reemplazar el microcontrolador (si es un paquete DIP esto es relativamente barato y fácil) o comprar una nueva placa. Al reemplazar el microcontrolador, tendrás que grabar el bootloader en el nuevo microcontrolador (a menos que lo hayas comprado con el bootloader) si deseas programar el Arduino vía USB.


Echando un vistazo a los esquemas, las siguientes placas tienen pines conectados directamente al microcontrolador.

  • Uno
  • Mega
  • Duemilanove
  • LilyPad
  • Fio
  • Nueva generación
  • Diecimila

En las siguientes placas, hay algunos pines que están protegidos y son difíciles de quemar:

  • BT (pin 13, mediante una resistencia de 1k)
  • USB v2.0 (pin 13, mediante una resistencia de 1k)
  • Nano (Pines Rx/Tx, por resistencias de 1k)
  • Serie (pin 13, mediante una resistencia de 1k)
  • Serie de una cara (pin 13, mediante una resistencia de 1k)
  • Mini 03 (pin 13, mediante una resistencia de 1k)

Sin embargo, si se quema un pin en estos, no hay mucho más que hacer que reemplazar el microcontrolador.

Si parece que es propenso a quemarse con los alfileres, puede probar el ruggedduino .

2voto

rasx Puntos 1858

Otra cosa bastante barata para probar es comprar otro atmega328, descargar tu chip sospechoso de estar dañado, cargar el nuevo en el zócalo, grabar el bootloader y ver si eso ayuda. Asumiendo que tu placa tiene un atmega328 con zócalo DIP.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X