Estoy deseando que me ayuden a averiguar por qué todos los microcontroladores que estoy utilizando se mueren aleatoriamente. Al principio, estaba usando LPC810Ms y LPC1114FN28s (ambos paquetes DIP en una protoboard), así que pasé por alto el problema ya que conectar uno nuevo no era gran cosa. Pero ahora, estoy usando STM32F437s (paquete 100 QFP soldado en una placa de prototipos), que a 17 dólares la pieza, y que requiere una buena cantidad de soldadura, hace que el reemplazo sea bastante caro.
Mi fuente de alimentación es bastante poco convencional. Es una fuente de alimentación para ordenador Antec HCG-850M con la protección contra subvoltaje y sobrecorriente eliminada, para que pueda hacer funcionar los motores de los coches RC sin que se disparen. Como resultado de la eliminación de UVP y OCP, me di cuenta de que al apagar el interruptor se produce una caída de voltaje muy gradual (el voltaje tarda más de 10 segundos en llegar a 0). ¿Podría esto estar rompiendo los MCUs?
En general, los únicos periféricos que tengo conectados son un Segger JLink para depuración de ARM y una UART.
Los síntomas:
-
LPC810, LPC1114FN28:
El chip se calienta mucho y acaba quemándose. Sorprendentemente, todavía puedo programar y ejecutar cosas.
-
STM32F437:
La interfaz SWD de ARM queda inutilizada. Ya no puedo programar ni ejecutar. No hay signos de sobrecalentamiento. Recuerdo exactamente que se rompió justo después de cortar la alimentación, lo que sucede muy lentamente como se ha mencionado anteriormente.
No espero una respuesta demasiado específica, así que por favor comparta cualquier experiencia relevante.
Actualización
Corrección: el voltaje no tarda 10s en apagarse (eso fue una suposición basada en el tiempo que tardaron las luces y el ventilador en apagarse). En cambio, cae instantáneamente después de 5 segundos.
He medido varias veces el comportamiento transitorio de encendido y apagado de la fuente de alimentación y no veo ningún pico. Aquí está la forma de onda al encender:
Está dentro del rango permitido (1,7V <= Vdd <= 3,6V).
Fotos/Diagramas:
(sólo se conectan los pines de color)
Actualización2
Por fin he encontrado el problema, pero no la verdadera causa. Gracias a clive1 en el Hilo del foro de ST, STM32F4 - Discovery fail El chip resucitó cambiando el pin BOOT a 1, para que arranque desde la RAM, en lugar de la Flash. Así que no estaba muerto - sólo bricked (no entiendo por qué la interfaz de depuración depende de Flash de trabajo)
Así que ahora haré mi pregunta más específica: ¿Por qué la memoria flash de la MCU se corrompe al encender, apagar o reiniciar? Además, olvídate de los MCUs LPC.