//mux adc
#define muxPin 34
#define s0 12
#define s1 14
#define s2 27
#define s3 26
#define resolution 10
#define numChannels 4
#define numInputs sqrt(numChannels)
void setup() {
// put your setup code here, to run once:
Serial.begin(115200);
Serial.println("Hello, ESP32!");//
pinMode(muxPin, INPUT);
pinMode(s0, OUTPUT);
pinMode(s1, OUTPUT);
pinMode(s2, OUTPUT);
pinMode(s3, OUTPUT);
//analogReadResolution(resolution);
// digitalWrite(s1,1);
digitalWrite(s0,1);
}
int sPins[numChannels] = {s0,s1,s2,s3};
int readings[numChannels];
void loop() {
int muxVal = analogRead(muxPin);
// put your main code here, to run repeatedly:
for(int i=0; i<numChannels;i++){
Serial.print(1 & i);//s0 = 0, s0 = 1
Serial.print((2 & i)/2);
Serial.print((4 & i)/4);
digitalWrite(s0, 1 & i);
digitalWrite(s1,(2 & i)/2);
digitalWrite(s2,(4 & i)/4);
digitalWrite(s3,(8&i)/8);
Serial.print(" potVal: ");
muxVal = analogRead(muxPin);
Serial.println(muxVal);
readings[i]=muxVal;
delay(1000); // this speeds up the simulation
}
}
Loading
cd74hc4067
cd74hc4067