La gente tiene razón. La mayoría de las MCU tienen un watchdog incorporado y es mejor usar eso si es posible, y también solucionar su problema (probablemente HW) primero. Además, si realiza una búsqueda en Google "IC de perro guardián" y verá muchos de fabricantes diferentes.
Pero si realmente quieres rodar tus propios cuz, es simplemente divertido y pirata informático, hay muchas, muchas formas de implementar esto. Básicamente, la idea 1) hacer que un temporizador se restablezca constantemente por los pulsos, 2) no le importa si el pulso se detiene bajo o alto.
Aquí hay una solución totalmente discreta.
Enunflancoascendente,C1secargaylacorrientefluyehacialabaseQ1,activandoQ1.EstodescargaC2,manteniendoQ3/Q2desactivado.
Enunflancodescendente,lacargaquequedaenC1sedescargaatravésdeD1,porloqueestálistaparavolveraciclar.
Sisedetienelapulsación,Q1nuncaseenciendeyC2secargalentamenteatravésdeR2.Cuandosuvoltajealcanzaaproximadamente1,2voltios,elpardeDarlingtonQ3/Q2seenciendeybajalasalida.
Aquíhayunasimulacióndelcircuitoconlaseñaldevigilanciabloqueada:
La mayoría de las líneas de reinicio de MCU están activas en nivel bajo, por lo que está orientado para eso.
Es posible que desee unir R2 a una línea GPIO en lugar de 5V para que pueda habilitar este circuito de vigilancia solo cuando esté listo (por ejemplo, el sistema operativo se inicia y su código se está ejecutando).
Esto puede parecer una solución costosa y complicada, pero en realidad es barata porque los transistores pequeños cuestan centavos, y las tapas pequeñas y las resistencias cuestan menos de un centavo. Sin embargo, le cuesta espacio en la placa y el recuento de piezas.
También puedes adaptar este circuito. Por ejemplo, puede usar el tipo de arquitectura C1 / D1 para restablecer constantemente un temporizador 555.
Por cierto, también debe verificar 1) cómo está enrutando el cristal en su MCU. Asegúrese de que los condensadores del cristal estén conectados a tierra directamente a la MCU y que no haya otras señales de ascenso rápido cerca de su cristal, y 2) asegúrese de que su línea de reinicio tenga una recuperación lo suficientemente buena, y 3) asegúrese de que su energía esté limpia. Ponga un alcance en su suministro y vea si hay fallas que causen que el riel se hunda y la MCU se salga de color.