//Define Digital Channels as Mux switches
const int MuxS0 = 2;
const int MuxS1 = 3;
const int MuxS2 = 4;
const int MuxS3 = 5;
const int MuxSIG = A0;
const int MuxDisabler = 13;
//Define function to iterate easier through Mux Signals
int SetMuxChannel (byte channel)
{
digitalWrite(MuxS0, bitRead(channel, 0));
digitalWrite(MuxS1, bitRead(channel, 1));
digitalWrite(MuxS2, bitRead(channel, 2));
digitalWrite(MuxS3, bitRead(channel, 3));
}
void setup() {
pinMode(MuxS0, OUTPUT);
pinMode(MuxS1, OUTPUT);
pinMode(MuxS2, OUTPUT);
pinMode(MuxS3, OUTPUT);
pinMode(MuxDisabler, OUTPUT);
Serial.begin(9600);
delay(1000);
}
void loop()
{
digitalWrite(MuxDisabler, HIGH);
for (int i = 0; i < 3; i++)
{
SetMuxChannel (i);
int HumiditySensorRead = analogRead(A0);
Serial.print("Sensor No = ");
Serial.print(i);
Serial.print(" = ");
Serial.println(HumiditySensorRead);
delay(500);
}
digitalWrite(MuxDisabler, LOW);
for (int i = 0; i < 3; i++)
{
SetMuxChannel (i);
int HumiditySensorRead = analogRead(A0);
Serial.print("Sensor No = ");
Serial.print(i);
Serial.print(" = ");
Serial.println(HumiditySensorRead);
delay(500);
}
}
Loading
cd74hc4067
cd74hc4067