Resistencias Pull-Up y Pull-Down 25 de enero de 2015
Posted by Jorge in Arduino, Electrónica.Tags: arduino, logic, pull-down, pull-up, resistencia, resistor, ttl
trackback
Cuando realizamos proyectos electrónicos tenemos componentes que necesitamos que funcionen en 2 estados (HIGH o LOW). Estos rangos son más críticos si, por ejemplo, empleamos lógica TTL donde un 0 se representa por un voltaje entre 0 y 0,8Volts y un valor HIGH entre 2 y 5Volts.
El problema surge cuando el voltage se sitúa en la zona indeterminada, debido a ruido eléctrico, variaciones en la fuente de alimentación…, en ese caso, la interpretación de la señal puede ser tanto LOW como HIGH. Para solucionar esto se emplean resistencias en configuración Pull-Up y Pull-Down.
Resistencia Pull-Up:
La acción de Pull-Up en electrónica se asigna a la acción de elevar una tensión de entrada o salida que tiene un circuito lógico mientras éste está en reposo.
Esto evita que se hagan lecturas erróneas si este pin ya no tiene nada conectado o no está recibiendo una señal.
La resistencia se conecta a la fuente de alimentación.
Cuando el interruptor está abierto la corriente va desde la fuente de alimentación al Vout dando un valor lógico de HIGH (Dibujo superior) y cuando el interruptor está cerrado la corriente se mueve hacia tierra (GND) dejando un 0 (LOW) en el pin (Dibujo inferior).
Resistencia Pull-Down:
La resistencia de un Pull-Down hace que la entrada lógica sea cero mientras éste está en reposo (LOW).
La resistencia se conecta a tierra (GND). De esta manera cuando el interruptor está abierto la corriente se dirige hacia la resistencia dejando un valor de 0 en el pin (LOW) (Dibujo superior).
Si el interruptor se encuentra cerrado la corriente se moverá hacia el pin dejando un valor lógico alto (HIGH)(Dibujo inferior).
Valor de la resistencia:
Las resistencias que se suelen emplear para estos casos son resistencias con un valor comprendido entre 1KΩ y 10KΩ, un valor lo suficientemente alto para no influir en el circuito.
Pull-up o Pull-Down:
En teoría los dos esquemas funcionan de manera idéntica (salvo por la lógica), pero hay gente que dice que las resistencias Pull-Up son más limpias y menos propensas a cambiar de estado por señales de alta impedancia.
Pull-up vía Software:
Muchos microcontroladores como, es el caso de Arduino, ofrecen la posibilidad de aplicar una resistencia Pull-Up mediante software.
El código de Arduino sería el siguiente:
int interruptor = 12; //Pin del interruptor
void setup(){
pinMode(interruptor, INPUT); //Interruptor como entrada
digitalWrite(interruptor, HIGH); //Resistencia pull-up
}
void loop(){
}
[…] En la entrada de hoy vamos a ver como detectar pulsaciones en Arduino, para ello emplearemos lo aprendido en la entrada de Interruptores Fin de Carrera y las Resistencias Pull-Up y Pull-Down. […]
Me gustaMe gusta
Gracias. Muuuuuchas gracias.
Me gustaMe gusta