Encendido de periféricos desde un microcontrolador (ATmega328P)

3

Me pregunto si es posible o incluso seguro alimentar periféricos como sensores o módulos de bluetooth desde ATmega328P al ajustar los pines del microcontrolador (uC) al máximo dado que los periféricos están dentro de las capacidades de suministro y límites de voltaje de los pines.

Estoy preguntando esto porque parece más conveniente ingresar al modo de apagado en la unidad de control de voz y controlar el nivel alto / bajo de los interruptores en el software antes y después de este modo para encender o apagar los periféricos. Probablemente me esté faltando algo y me gustaría una aclaración sobre lo anterior.

    
pregunta Eli

5 respuestas

7

Si obtiene mucha corriente de la unidad de control de temperatura, es probable que su voltaje de salida caiga por debajo de lo que es aceptable para su periférico. Los cambios en el consumo de corriente también pueden causar ondulaciones en los pines de salida debido a la resistencia de salida de la unidad uC.

Es probable que su periférico tenga desacoplamiento de potencia y condensadores de filtro. Cargarlos en el primer momento causará una corriente de irrupción que puede estar fuera de los límites de corriente aceptables para su uC. Es posible que los condensadores demoren mucho tiempo en cargarse en cada encendido o dañen su unidad de control de temperatura.

De todos modos, es mejor tener una clave de energía adecuada (un MOSFET externo, por ejemplo) que alimentar cualquier cosa desde la salida de la uC, excepto en el caso de que la salida de la uC específica esté diseñada para ser utilizada como fuente de alimentación.

    
respondido por el motoprogger
3

El microcontrolador no debería tener problemas cuando drena la corriente de sus pines por debajo de los límites.

Pero debe tener en cuenta la caída de voltaje en el controlador de salida de MCU. Puede causar que el voltaje sea más bajo de lo esperado (vea la Fig. 35-23,24, tenga en cuenta también que dan típico , no los valores mínimo-máximo). Vea si su perferial acepta un rango de voltaje suficientemente amplio durante la operación. Si necesita regulación de voltaje para periféricos, es mejor obtener un regulador con un pin de habilitación dedicado, en lugar de alimentarlo desde MCU.

También la resistencia interna del controlador puede causar interferencia a través de la línea eléctrica. Es posible que necesite un condensador de filtrado. Luego, debe comprobar si las salidas de MCU toleran las cargas de cortocircuito o de capacidad activa (un vistazo rápido en la hoja de datos no me da nada).

E. sol. es común alimentar LEDS, pero muy poco común para alimentar IC de cualquier tipo.

    
respondido por el Vovanium
2

puede estar bien, pero hay un par de errores. Primero, debe asegurarse de que no haya una caída de voltaje excesiva en la corriente de pico máxima que extrae el dispositivo (y la temperatura ambiente máxima y el voltaje de suministro mínimo). Algunas cosas, como su ejemplo de módulo Bluetooth, pueden generar una corriente en ráfagas que superan con creces la corriente promedio, y el voltaje no debe descender excesivamente durante esos picos. Para Bluetooth, esos probablemente superarán fácilmente la capacidad de un pin de puerto.

En segundo lugar, generalmente es una idea realmente mala ejecutar un pin de puerto no protegido fuera de un recinto debido a la falta de protección ESD sustancial, protección contra cortocircuitos, protección contra voltajes externos que se están aplicando, etc. Por lo tanto, eso tendería a descartar sensores externos a menos que agregue algunos circuitos para proteger al micro contra daños y molestias.

Si desea ejecutar (digamos) un sensor de temperatura o humedad que extraiga unos cientos de uA de un pin de puerto, y pueda verificar que la caída de voltaje del pin no sea excesiva (y que la falta de un capacitor de bypass sea no es un problema), entonces puede ser una buena forma de medir la temperatura o la humedad de la PCB local y permitir el apagado del sensor cuando no se está utilizando.

De lo contrario, es bastante fácil agregar una fuerte conmutación de lado alto con un pequeño MOSFET de canal p de múltiples amperios que puede controlar la potencia, y agregar un TVS para transitorios y un polifusible u otra protección contra cortocircuitos. Para aplicaciones de alta confiabilidad, puede ser mejor derivar el suministro que sale de un regulador separado para que no le dé al mundo exterior ningún tipo de ventana sobre lo que alimenta al microcontrolador.

    
respondido por el Spehro Pefhany
1

Está perfectamente bien hacer esto siempre que el periférico consuma menos que la corriente nominal del pin de salida. Por lo general, evitaría dibujar más de 20 mA para el atmega328p.

Aunque habrá una caída de voltaje, el diseño de CMOS del atmega328p usa mosfets internamente para la E / S, y la caída de voltaje será mínima siempre que no consuma demasiada corriente.

Si necesita más información actualizada, use un mosfet externo.

Mientras esté bajo los límites individuales (por E / S) del chip, los límites totales (todos los E / S se suman), y dentro de los parámetros operativos del periférico que está activando, estarás bien.

    
respondido por el Adam Davis
1

Si tiene dudas, use un MOSFET. Si no desea comprar en línea, radio $ hack generalmente tiene uno o dos de ellos. Ellos son realmente grandes; Los he usado para conducir servos. Y son bastante baratos. Básicamente, son transistores especiales donde el arduino puede actuar como la puerta y permitir que una fuente de corriente / voltaje más grande suministre la energía. El arduino simplemente puede cortarlo, como abrir un circuito o cerrarlo.

    
respondido por el Wyatt8740

Lea otras preguntas en las etiquetas