Supongo que "Botones" es el voltaje de salida.
El problema es que el 2N7000 necesita una puerta finita a la fuente de voltaje (= Vgs) para activarlo con fuerza para que presente una ruta de baja resistencia. Este voltaje varía según el dispositivo, pero es de aproximadamente 3 V como mínimo para un funcionamiento confiable.
Si la compuerta MOSFET se activa con + 5V, los MOSFET "verán" un Vgs de aproximadamente 5V-Vd (como Vs ~ = Vd cuando el MOSFET está activado. A medida que avanza, la cadena divisoria Vd aumenta y 5-Vd) cae a un punto donde el MOSFET no se enciende por completo.
Soluciones
-
Conduzca las puertas con > = Vd_max + 3V ~ + 8V.
Si su multiplexor no puede proporcionar 8 V, esto no funcionará.
-
Utilice MOSFET Vgsth muy bajos.
Como el máximo de Vd es casi 5 V, se necesitarían MOSFETES de VGsth muy bajos. No es realmente práctico.
-
Limite Vdmax a aproximadamente 2V para que siempre tenga 3V de unidad de compuerta por encima de Vd (y Vs).
Esta es una solución fácil y probablemente la más atractiva.
La solución 3 reduce el rango de voltaje del botón de ~ = 0-5V a ~ = 0-2V.
Si tiene un ADC con un rango máximo de 5 V, solo está usando 2/5 = 40% de su rango. Incluso a 8 bits con 8 niveles, esto le da 2V / 8 = 0.25V pasos o 0.25V / 5V = 1 / 20th del rango de ADC por paso. Para un ADC con 8 bits y 256 niveles, es 256/20 = ~ 12 pasos / niveles de ADC por botón. O puede considerar que 1/20 de la escala completa por paso es 1/20 = 5% en pasos.
Para identificar los botones correctamente, no debe variar por > 2.5% por paso.
Los resistores del 1% son probablemente lo suficientemente buenos para esto, aunque un poco marginalmente, así que si tiene valores en cualquiera de los extremos del rango de error. Como está utilizando todos los resistores 1K, (probablemente) todos provienen de la misma fuente, por lo que probablemente no habrá un cambio de +/- 1% entre los valores.
Verificación de la implementación:
¿Las líneas de transmisión de la compuerta son muy bajas cuando no están conduciendo o flotan?
Es posible que tenga que agregar resistencias de compuerta para sujetar las compuertas bajas / apagadas / a tierra cuando no se estén conduciendo.