¿Cómo consigo que mi Arduino reinicie otra placa?

1

Digamos que tengo otra placa controladora. Tiene un encabezado de 2 pines en él. Si conectas momentáneamente esas dos clavijas juntas, ya sea cortándolas con una tapa de puente o conectándolas a un botón y luego presionando dicho botón, y así sucesivamente, la placa se reiniciará.

Ahora digamos que quiero configurar mi Arduino para que pueda desencadenar este reinicio cuando se cumple una determinada condición: recibió un comando a través de un enlace inalámbrico, un contador pasó un cierto valor, lo que sea.

¿Cómo podría conectar esto? ¿Qué componentes adicionales necesitaría, si los hubiera? ¿Acabo de enganchar los dos pines del encabezado de reinicio a los pines Arduino y digitalWrite(PIN, 1) ellos?

Lo siento por esta pregunta que suena como un novato, pero todavía soy bastante nuevo en electrónica.

    
pregunta Donald Burr

3 respuestas

1

Los pines de reinicio de la MCU normalmente están activos y son bajos con pull-ups, lo que significa que los conecta a tierra para activar el reinicio y los deja abiertos para que funcionen normalmente. Hay un tipo especial de salida llamado drenaje abierto que es perfecto para manejar este tipo de pin. Desafortunadamente, parece que Arduinos no admite salidas de drenaje abierto directamente. Esta página sugiere poner el pin en el modo de entrada para producir el estado abierto y el modo de salida para producir el estado conectado a tierra . Alternativamente, si el reinicio está totalmente controlado por el Arduino (es decir, nunca se cambia a sí mismo), puede impulsar el pin directamente con una salida normal.

Todo esto supone que la placa MCU está utilizando el mismo suministro de 5 V o 3,3 V que el Arduino. Si esto es correcto, es seguro hacer lo que he descrito. Pero si la placa MCU usa un voltaje más alto que el Arduino, deberá usar un transistor (NPN o NMOS) para bajar la línea de reinicio.

Si el pin de reinicio está activo alto, tendrá que conducirlo con una salida normal, y los voltajes probablemente tengan que ser los mismos. Puede calcular la polaridad del restablecimiento midiendo el voltaje en los pines cortocircuitados con un multímetro. Puede obtener el voltaje de la placa midiendo ambos pines por separado.

También deberá conectar las bases de las dos placas para proporcionar una ruta de retorno para la corriente.

    
respondido por el Adam Haun
0

Algo como esto funcionaría bien. Es un interruptor analógico controlado digitalmente. Lo mejor de todo es que es menos de $ 1!

Además,haymuchoschipsde"supervisor de reinicio" que pueden hacer lo mismo, pero son un poco más complejos de implementar.

    
respondido por el Mr. Mascaro
0

Creo que la solución más sencilla (sin tener que preocuparse por la conexión de zonas, etc.) sería utilizar un relé normalmente abierto. Algo como esto haría bien:

enlace

Todo lo que necesita hacer es conectar los pines de la bobina del relé (2 y 3) entre la salida de Arduino y la tierra, y conectar los otros dos pines del relé (1 y 4) a través de los contactos del encabezado utilizados para restablecer los otros micro. Es el equivalente a un interruptor de botón conectado al encabezado, excepto que se controla electrónicamente en lugar de mecánicamente.

    
respondido por el DerStrom8

Lea otras preguntas en las etiquetas