Ansteuerung eines analog MUX durch 74HC595, die Auslesung des Mux erfolgt über Arduino, Datenproblem

Gast #4960485
Lesenswert?

Hallo,
Ich habe zwei analog Multiplexer, die ich mit einem 74HC595 ansteuere. 
Die Mux sind geschachtelt angeordnet, d.h. die Signal ausgabe von mux1 
geht in den übergeordneten mux2. Dazu das Programm:


int taktPin = 11;
int speicherPin = 10;
int datenPin = 9;
int analogPin = 3;
int val = 0;


void setup(){
  pinMode(taktPin, OUTPUT);
  pinMode(speicherPin, OUTPUT);
  pinMode(datenPin, OUTPUT);
  pinMode(analogPin, INPUT);
  Serial.begin(9600);

}

void loop(){
  sendBytes(0B10010011);

  val = analogRead(analogPin);    // read the input pin
  Serial.println(val);             // debug value
  delay(100);
}


void sendBytes(int wert){
  digitalWrite(speicherPin, LOW);
  shiftOut(datenPin,taktPin, MSBFIRST, wert >> 8);
  shiftOut(datenPin,taktPin, MSBFIRST, wert & 255);
  digitalWrite(speicherPin, HIGH);
}

Zur Überprüfung habe ich ein 5V kabel, und schließe es an die 
signaleingänge von mux1 an. Stecke ich das Kabel an den Port, der 
durchgeschalten ist, wird dieser im Seriellen Monitor angezeigt. Doch 
stecke ich dieses Kabel an einen anderen, undurchgeschalteten Port, so 
werden die 5V trotzdem angezeigt, obwohl das theoretisch nicht möglich 
ist. Woran liegt das? ich benutze einen 16:1 Mux, in diesem Link kann 
man sich den mal anschauen

https://www.sparkfun.com/products/9056
#4960498
Lesenswert?

Schaltplan? Welcher Arduino, es gibt da ja mehr als nur eine Variante 
...

Und was ist, wenn du an den durchgeschalteten Port eine andere Spannung 
anlegst, siehst du dann immer noch die 5 Volt, die an einem der nicht 
durchgeschalteten Ports anliegen? Was mißt du mit dem Multimeter am 
Ausgang des Multiplexers?

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren