Quiero agregar un código para el temporizador de vigilancia dentro de mi código fuente para que la placa se reinicie automáticamente cuando los programas se cuelguen. Estoy usando la placa Mediatek Linkit One.
Puede crear una función que "Alimenta al perro" en un lugar apropiado de su programa. Cuando el perro no está alimentado, el temporizador de vigilancia transcurrirá y restablecerá el programa. Mire la documentación del microcontrolador para ver cómo se implementa. Por lo general, el temporizador Watch Dog deberá configurarse correctamente (con los valores de preescalador apropiados), habilitarse y luego borrarse periódicamente antes de que expire el temporizador. No parece que las referencias de API de los laboratorios de mediatek le den acceso a esta funcionalidad de nivel inferior, pero el resumen técnico del procesador SOC para ARMyEJ-S incluye un temporizador de vigilancia (p. 8), que es la única mención. Si no puede encontrar una respuesta a esto en la documentación, me pondré en contacto con ellos y se lo pediré directamente y presionaré un poco a sus desarrolladores (como ya se solicitó en su foro).
No tengo idea de qué es una placa Mediatek Linkit One (y no proporcionó un enlace), pero, en general, no puede. Si su programa se bloquea, ¿cómo se ejecutará el código de vigilancia?
Por lo general, los perros guardianes tienen que implementarse en el hardware, ya sea internamente por una sección de la CPU que se ejecuta independientemente del programa del usuario o, si eso no se puede hacer, se emplea un perro guardián externo. Su programa restablecería el perro guardián externo periódicamente enviando un pulso. Si el perro guardián externo no ve una transición dentro de un tiempo determinado, se genera un reinicio.
Rogelio Rowland
bruce abbott