13 votos

¿Los pines IO deben tener cada uno su propia resistencia pull-up/down?

Una pregunta muy básica:

¿Debe cada pin IO de un microcontrolador que sirve como entrada de un interruptor o puente tener su propia resistencia pull-up/down?

Simple 3-pin IO schematic

En este ejemplo, cada pin es bajado por una resistencia, y luego subido por un interruptor 1P3T a VCC.

Parece sencillo, pero a medida que se utilizan más pines IO, ¿son absolutamente necesarias más resistencias? ¿Hay alguna forma inteligente de mantener el número de resistencias bajo?

Pregunta relacionada: Compartir una resistencia de pull-up

16voto

userid53 Puntos 116

Según el esquema proporcionado, si las 3 entradas compartieran una resistencia, entonces cualquiera de las líneas que se pusiera en alto a través del interruptor elevaría las 3 líneas a alto, contrarrestando el propósito del diseño - la MCU no sabría qué posición del interruptor está seleccionada.

Una forma habitual de reducir número de piezas Para estos diseños, la mejor opción es utilizar una red o matriz de resistencias de bus común:
Common Bus Resistor Array _ (de aquí )_


Están disponibles en formato SIP/DIP con orificio pasante y SMD, con una variedad de números de resistencias, dependiendo de sus necesidades. El pin del bus se conecta a tierra, y los otros pines se conectan a las respectivas entradas de la MCU como en su esquema. SIP resistor arrays _ (de aquí )_

SMD resistor arrays (de aquí )

0voto

Brian Drummond Puntos 27798

La mayoría de los MCUs tienen resistencias opcionales de pull-up (no down) incorporadas para cada pin, por lo que es normal tirar de los pines hacia abajo con el interruptor (y lidiar con la inversión de polaridad en el software).

Por lo tanto, no son necesarias las resistencias.

En cuanto a por qué pullup, no down, es un hábito que queda de los circuitos lógicos TTL de los años 70, donde se necesitaba mucha menos corriente para tirar de una entrada hacia arriba que hacia abajo - una resistencia pulldown desperdiciaría más energía. Esto ya no se aplica a la lógica CMOS de hoy en día, pero la tradición de los pull-ups ha persistido, por lo que los primeros chips CMOS de 5V eran compatibles con la antigua lógica TTL.

0voto

barrycarter Puntos 344

Nunca quieres dejar una entrada a la lógica abierta suponiendo que se tirará hacia arriba o hacia abajo. si una entrada se deja abierta, es un poco antena y también está sujeta a las corrientes dentro del dispositivo lógico. Así que se tira hacia arriba o hacia abajo para asegurarse de tener una entrada limpia y predecible. Aprendí esta regla mientras trabajaba en Fairchild Semiconductor en los años 80.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X