Fragen zu Multiplexer 4051

Hey,

ich bin gerade dabei einen bzw mehrere Muliplexer (C-MOS IC 4051 DIP) an mein Arduino an zu schließen.

Nun hab ich folgendes Problem: 7 Ausgänge funktionieren reibungslos aber bei "X0" (der erste Ausgang) bekomme ich kein Signal.
Habe auch schon andere Multiplexer ausprobiert, da ich dachte er sei kaputt.

Dann hab ich noch eine Frage, weiß jmd wie ich mehrere Multiplexer anspreche (evtl mit Code Beispiel)??
Habe mich bis jetzt stark an die Anleitung gehalten, auch an den Code. Arduino Playground - 4051

Danke
Gruß Josh

Du kannst den Multiplexer auch ohne Arduino-Ansteuerung testen. Einfach Digitaladresse für entsprechende Analogeingang simulieren, HIGH oder LOW an S0-S2 anschliessen.

S2/S1/S0:

000: y0 durchgeschaltet
001: y1 durchgeschaltet
...

Am analogen Eingang kann dann ein Signal angeschlossen werden, welches dann an den Ausgang z durchgeschaltet wird.

..weiß jmd wie ich mehrere Multiplexer anspreche

Werden weitere Multiplexer verwendet, so vergrössert sich der zu adressierende Bereich auf 6 Adressleitungen (Beispielschaltung links aus dem Playgroundbeispiel).

Tip:
Versuche zuerst die Schaltung und die Funktion mit einem Baustein zu verstehen. Wenn dann dein Sketch und die Schaltung läuft, kannst du um weitere Bausteine erweitern.

Datasheet 4051:

Da steht auch eine Funktionstabelle drin !

4051 - 8 Kanal - Multiplexer - analog/digital:
http://www.cmos4000.de/cmos/4051.html

Danke erstmal für eure Antworten, freut mich dass ich Hilfe bekomme.

Das ist meine Schaltung bis jetzt

Wenn ich den Multiplexer ohne Arduino ansteuern möchte, und zB Y0 High haben möchte, dann müssen doch S0-S2 Low sein... aber das LED leuchtet nicht.
Hab ich ein Denkfehler?

EDIT
also wie gesagt, es funktioniert alles bis auf LED1

Wenn ich den Multiplexer ohne Arduino ansteuern möchte, und zB Y0 High haben möchte, dann müssen doch S0-S2 Low sein... aber das LED leuchtet nicht.
Hab ich ein Denkfehler?

Nein, kein Denkfehler. So sollte die Schaltung funktionieren. Soweit ich sehe, sollte die Schaltung auch bei Y0 gehen.

Ist eventuell die LED falsch herum angeschlossen oder defekt? Oder der Vorwiderstand zu hoch.

Wie gesagt mit 000 an S0-S2 schaltet Y0 und die LED sollte leuchten.
Prüfe mal was für ein Signal bei 000 am Ausgang Y0 ist.

Nein, hab die LEDs mehrfach durchgetestet. Widerstand kann auch nicht falsch sein, da ich fertige LED mit Widerstände gekauft habe.

Ich kann leider nur mit einem LED testen was bei 000 bei S0-S2 ist.
Aber das LED will einfach nicht leuchten.

Kann es doch an meinem Multiplexer liegen? Dass er kaputt ist?

EDIT

Kann es sein, dass Y0oder X0 besonders empfindlich ist? so dass ich es immer gleich kaputt mache?
Es hatte nämlich gerade geleuchtet, aber nur kurz.

int r0 = 0;      //value select pin at the 4051 (s0)
int r1 = 0;      //value select pin at the 4051 (s1)
int r2 = 0;      //value select pin at the 4051 (s2)
int row = 0;     // storeing the bin code
int count = 0;    // just a count

int row1 = 0;
int row2 = 0;
int row3 = 0;
int binNul [8] = {0, 0, 0, 0, 1, 1, 1, 1};
int binOne [8] = {0, 0, 1, 1, 0, 0, 1, 1};
int binTwo [8] = {0, 1, 0, 1, 0, 1, 0, 1};

void setup(){

  pinMode(13, OUTPUT);    // s0
  pinMode(12, OUTPUT);    // s1
  pinMode(11, OUTPUT);    // s2

  Serial.begin(9600);
}

void loop () {

  for (count=0; count<=7; count++)
{
row1 = binNul[count];
row2 = binOne[count];
row3 = binTwo[count];
r0 = row1;
r1 = row2;
r2 = row3;
    digitalWrite(13, r0);
    digitalWrite(12, r1);
    digitalWrite(11, r2);
    Serial.print(r0);
    Serial.print(r1);
    Serial.print(r2);
    Serial.println();
    delay (200);
  }
}

Ich hab die Lösung gefunden (hab am Arduino PIN 1 TX mit meinem Pluspol verbunden), aber kann mir jmd erklären wieso das nun klappt?
Was bewirkt das?

Ich hab die Lösung gefunden (hab am Arduino PIN 1 TX mit meinem Pluspol verbunden),

Das macht keinen Sinn.

Ich vermute, das liegt an der Versorgung deiner Schaltung.
Die Versorgung (rote Signale) sollte an +5Volt angeschlossen werden.

Wenn du das wirklich wie auf dem Bild angeschlossen hast dann hast du keine echte 5V auf deinem IC den der Anschluss den du benutzt hast ist der Anschluss ARef und da sind nicht die echten 5v Versorgung sondern evtl etwas "Rückwärts" über den AVR. DU musst auf die andere leiste auf den 5V Pin.

Ja, ihr habt recht. Hab die ganze Zeit weiter getestet. Bin auf das Gleiche Ergebnis gekommen wie ihr.

Vielen Dank !!

doofer Fehler :confused:

Jetzt meine Frage für mehrere Multiplexer. Ich verbinde sie so wie auf der Arduino Seite beschrieben Arduino Playground - 4051.

Aber wie spreche ich sie an. Also ich meine über die Programmierung?
Habe ich dann statt 3 Stellen (010 oder 011 oder 000 oder 111) 6 Stellen (011001 oder 101010 oder ...) ???

EDIT

Habe nun die Multiplexer so verbunden, welchen Code brauche ich nun um die LED leuchten zu lassen.