¿Cómo hacer uso de 'Power ON Reset' mientras hay ruido en Power?

0

Estoy usando Nuc240LE3AE (Cortex M0) para ejecutar un código que está desarrollado. Quiero ejecutar el código en el inicio para el que se utiliza la función de reinicio de encendido (POR). Normalmente esto está habilitado en el microcontrolador y según la hoja de datos;

  

Cuando está encendido, el circuito POR genera una señal de reinicio para restablecer toda la función del chip, pero el ruido en la alimentación puede hacer que el POR vuelva a estar activo. El usuario puede deshabilitar el circuito de POR interno para evitar que el ruido impredecible provoque el reinicio del chip al escribir 0x5AA5 en este campo.          La función POR se activará de nuevo cuando este campo se establezca en otro valor o el chip se restablezca mediante otra fuente de reinicio, que incluye:   REINICIAR, restablecimiento del temporizador de vigilancia, restablecimiento del temporizador de vigilancia de la ventana, restablecimiento de LVR, restablecimiento de BOD, comando de restablecimiento de ICE y la función de restablecimiento del chip de software

El código funciona perfectamente en la placa de Desarrollo durante el inicio, pero en la placa de destino desarrollada de esta manera, se reinicia después de algún tiempo como se menciona en la hoja de datos debido al ruido (suposición). Pero si deshabilito POR en el código, ¿el microcontrolador no ejecuta el código en 'Encendido' a partir de la próxima vez (en caso de fallo de alimentación)? Si es así, ¿cómo puedo superar esta situación?

    
pregunta Arun Joe

2 respuestas

1

Según el fragmento de la hoja de datos que muestra en nuestra pregunta, debe proporcionar otra fuente de reinicio. Mi sugerencia es que mire el encendido de los chips de reinicio y use uno de ellos para impulsar el pin nRESET en su MCU.

Hay una gran cantidad de dispositivos adecuados que pueden utilizarse para este propósito. Si está utilizando una fuente de alimentación de 3.3V para el microcontrolador, puede probar el MCP120-300 como una posible solución. Es un pequeño generador de reinicio de tres pines en un paquete SOT-23.

    
respondido por el Michael Karas
1

Su plan para deshabilitar el POR, incluso si eso parece funcionar, corre el riesgo de ser una "escayola" (a veces llamada "Band Aid") que oculta un problema más profundo que no comprende y que no ha resuelto realmente. El problema real podría luego "regresar y picarte" más tarde.

Por lo tanto, en lugar de considerar deshabilitar el reinicio de encendido, debes investigar más a fondo por qué tu "placa objetivo", pero no tu "placa de desarrollo", se está "reiniciando".

Has dicho que:

  

la placa de destino desarrollada de este modo, se reinicia después de algún tiempo como se menciona en la hoja de datos debido al ruido (suposición).

Me alegra que haya dicho que esto era una suposición, ya que muestra que se da cuenta de la necesidad de diferenciar entre suposiciones y deducciones. Su enfoque debería ser encontrar la causa real de su reinicio de "tablero objetivo". Solo cuando sepa la causa, debe considerar cómo resolver el problema.

¡No adivine una "solución" sin conocer realmente la causa del problema!

De un vistazo rápido a la hoja de datos de la serie NuMicro 240 ( enlace directo al PDF ) y Manual de referencia técnica de la serie NuMicro 240 ( enlace PDF directo ) hay un registro RSTSRC , que contiene marcas para mostrar el motivo del último reinicio, por ejemplo Detector de desvanecimiento (BOD), restablecimiento de bajo voltaje (LVR), etc.

La información de ese registro después de un reinicio inesperado, junto con el uso de un osciloscopio para verificar la calidad del voltaje de la fuente de alimentación, le permitirá avanzar en su investigación.

También tenga en cuenta que también puede haber causas de software para que una placa se "reinicie", no solo causas de hardware. No asuma que la causa debe estar relacionada con el hardware (por ejemplo, el poder) hasta que tenga pruebas de ello.

    
respondido por el SamGibson

Lea otras preguntas en las etiquetas