Así que estoy siguiendo el esquema aquí para la conexión de un MC14067BCP: http://fluidforms.eu/docs/MultiplexedArduinoWiringDiagram.pdf
La única diferencia es que yo estoy haciendo un juego de 16 sensores y no cuatro. Además, mis sensores 5k - 250k LDRs (sensible a la luz de resistencias, que me he conectado a tierra en el extremo opuesto de los conectados a las conexiones mostradas en el diagrama de arriba.
Cuando ejecuto mi dibujo, de la línea de serie se muestra el resultado que es similar a la que se muestra si no hay cables estaban conectados a mi analógico en todo. (vea la pregunta aquí para ver a lo que me refiero: http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1238854387) Este es realmente me estresa y sería increíble si alguien pudiera aclararme lo que está pasando.
Aquí está mi código:
int CONTROLpin1 = 2;
int CONTROLpin2 = 3;
int CONTROLpin3 = 4;
int CONTROLpin4 = 5;
int analogPin = 0;
// Variables:
int actualSensorValue = 0; // value from the analog input
void sendCommand(int value) {
Serial.println(value);
}
void setup() {
// set the states of the I/O pins:
pinMode(CONTROLpin1, OUTPUT);
pinMode(CONTROLpin2, OUTPUT);
pinMode(CONTROLpin3, OUTPUT);
pinMode(CONTROLpin4, OUTPUT);
pinMode(analogPin, INPUT);
Serial.begin(9600);
}
void loop() {
int i;
for (i=0; i <16; i++) {
// set control pins on the multiplexers
digitalWrite(CONTROLpin1, bitRead(i,0));//bit4
digitalWrite(CONTROLpin2, bitRead(i,1));//bit3
digitalWrite(CONTROLpin3, bitRead(i,2));//bit2
digitalWrite(CONTROLpin4, bitRead(i,3));//bit1
Serial.println(i); // print which pin we are on
actualSensorValue = analogRead(analogPin);
sendCommand(actualSensorValue);
delay(1000);
}
}
Además, he tratado de cortarlo al mínimo y sólo la conexión de un solo sensor. Cuando se mira en la salida, no parece haber ningún cambio. Aquí está una foto de el desnudo huesos de cableado:
(para ser mas claro mi objetivo final es todavía el diagrama en la parte superior de este post).