Por fin he comprendido el tema de los multiplexores y ahora me acabo de dar con otra puerta.
He montado el siguiente circuito, de modo que las entradas A y B las activo desde el pin 2 y 3 digital.
Lo que sucede es, que cuando le digo que cambie A = 0 y B = 0 (potenciometro 1) a A = 0 y B = 1 (potenciometro 2) tarda al menos medio segundo en ajustarse la tension.
Yo habia pensado en un codigo mas o menos así:
int bitA = 2;
int bitB = 3;
int datosPin0 = 0;
int lastDatos0 = 0;
int variacion0 = 0;
int datosPin1 = 0;
int lastDatos1 = 0;
int variacion1 = 0;
void setup()
{
Serial.begin(115200);
pinMode(bitA,OUTPUT);
pinMode(bitB,OUTPUT);
}
void loop()
{
digitalWrite(bitA,LOW);
digitalWrite(bitB,LOW);
int reading0 = 0;
reading0 = analogRead(datosPin0);
if (abs(reading0-lastDatos0) > variacion0)
{
lastDatos0 = reading0;
Serial.print("Movido el potenciometro 0");
}
digitalWrite(bitA,LOW);
digitalWrite(bitB,HIGH);
int reading1 = 0;
reading1 = analogRead(datosPin1);
if (abs(reading1-lastDatos1) > variacion1);
{
lastDatos1 = reading1;
Serial.print("Movido el potenciometro 1");
}
}
Con esto pretendo comprobar que si se ha movido el potenciometro0 o el potenciometro1, pero la Monitor Serial me dice constantemente que se estan moviendo, cuando solo deberia decirmelo cuando el valor de alguno de los potenciometros hubiera variado.
No se que estoy haciendo mal.