Si tiene 8 sensores de entrada analógica (o 2 o 9 o 738479), ¿hay un chip / es posible con la programación del microprocesador monitorear activamente todos los canales? Digamos que tiene 8 potenciómetros giratorios conectados a cada pin de E/S en el mux, ¿tendría que cambiar las entradas de selección cada vez que quisiera usar un potenciómetro diferente? Parece que esto haría que un mux fuera mucho menos útil de lo que pensaba. Entonces, si quisiera usar el potenciómetro en el pin 1 de E/S y luego el potenciómetro en el pin 8 de E/S inmediatamente después del primero, ¿Tendría que decirle al microcontrolador / procesador que cambie a leer el pin 8 antes de poder usar el periférico conectado a él? ¿O hay alguna manera de hacer que controle todos los pines de E/S a la vez para poder usar el periférico en el pin 1, luego en el pin 7 y luego en el pin 2 sin tener que hacer nada en absoluto con respecto a cambiar el pin de io que se lee? , siempre y cuando solo use uno a la vez?
CD74HC4051MM96EP es el mux del que ya tengo toneladas, y estoy usando teensyduino (biblioteca de códigos arduino) / teensy 3.1 para enviar mensajes midi. Me gustaría leer todo tipo de sensores de entrada diferentes.
La idea detrás del uso de un multiplexor es que leerías todas las entradas en una secuencia muy rápidamente y luego darías la vuelta y lo harías de nuevo. Es una compensación de ancho de banda y latencia frente a número de puertos. Le permite dividir el ancho de banda disponible y la cuenta regresiva del puerto requerido por el mismo factor. Si tiene un ADC que puede muestrear a 10 KSps y un mux de 8 puertos, entonces con 1 entrada puede muestrear a 10 KSps en esa entrada, con 2 entradas puede muestrear a 5 KSps en ambas entradas, con 4 entradas puede muestrear a 2,5 KSps en cada entrada, etc. Un efecto secundario es que las muestras se intercalan en el tiempo, ya que no puede ver todas las entradas exactamente al mismo tiempo. Con 2 entradas, habrá una compensación de 1 período de muestra entre lecturas en canales alternos donde la primera muestra de la entrada 1 ocurrirá en 'T=0',
Si solo está tratando de leer de los POT, debería estar bien, ya que las señales que salen de ellos cambiarán muy lentamente. Todo lo que necesita hacer es escribir un ciclo for que recorrerá todas las configuraciones mux y leerá el valor analógico correspondiente.
Digamos que tiene 8 potenciómetros giratorios conectados a cada pin de E/S en el mux, ¿tendría que cambiar las entradas de selección cada vez que quisiera usar un potenciómetro diferente?
Sí, si desea cambiar qué entrada está conectada a la salida de un mux, debe cambiar las entradas a las señales seleccionadas.
¿O hay alguna manera de hacer que controle todos los pines de E/S a la vez para poder usar el periférico en el pin 1, luego en el pin 7 y luego en el pin 2 sin tener que hacer nada en absoluto con respecto a cambiar el pin de io que se lee? , siempre y cuando solo use uno a la vez?
Podría usar 8 circuitos de monitor diferentes (¿entradas ADC?) Y ningún mux en absoluto.
O podría hacer un circuito para sumar las 8 entradas y monitorear la señal de suma. Eso podría ser útil si desea evitar el sondeo para ver si hay alguna actividad en sus entradas. Pero si dos entradas están activas al mismo tiempo, no podrá distinguir cuál estaba activa.
Puede usar un contador para hacer que un bus digital de incremento continuo se aplique a los pines de selección MUX, evitando que el uC use instrucciones para cambiar esas señales. Pero probablemente desee sincronizar su actividad de "supervisión" con el contador para que no realice una medición accidentalmente mientras el mux está cambiando.
estrella azul