Estoy tratando de conseguir un multiplexor para trabajar con el Arduino. Descripción en sparkfun Ficha técnica
Pensé que el cableado era bastante simple y como prueba básica, tengo AREF conectado a C1(multiplexor) y un cable flotante conectado a C0. Todo en el lado de interconexión mapea casi 1 a 1 con el arduino.
Estoy utilizando este sencillo código para conmutar el multiplexor
void select_wire(char which){
digitalWrite(S0,which&0x01);
digitalWrite(S1,which&0x02);
digitalWrite(S2,which&0x04);
digitalWrite(S3,which&0x08);
digitalWrite(EN,0);
delay(1); //required?
}
y luego acabo de leer del pin analógico en S
en el multiplexor. Mi problema es que no conmuta. ¿Cómo puedo arreglar esto para que se comporte como se pretende y dar un cero (o cerca) cada vez que hago select_wire(1)
y leer el pin analógico?
Además, no estoy usando el "lenguaje" de Wiring sino que estoy usando la librería Wiring. También he configurado todos los pinMode
s en el init