Gast
#4960485
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