Go Down

Topic: Keine Ausgabe auf Display! (Read 3617 times) previous topic - next topic

petemanzel

Das seltsame ist wie gesagt, das wenn ich den zaehler "count" in der for-Schleie bei 1 anfangen lasse zu zaehlen, dann funktioniert alles Perfekt bis eben auf die Tatsache, das "case 0" fehlt.

Hiesse ja dann, dass der Fehler mit dem Anfang der for-Schleife mit "case 0" zusammen haengt.

Der Pete

gregorss

... wenn ich das Display weg lasse und nur die Ausgabe nur ueber den Serial-Monitor mache, wird alles fehlerfrei ausgegeben.
Dann steckt der Fehler ganz sicher anderswo, ich bin ratlos und gehe eine rauchen.

Gruß

Gregor
Nicht lange fackeln, lass' Backen wackeln! (Seeed)

gregorss

Nur ein Schuss ins Blaue:

Du verwendest Pin 6 des 40xx-Dingens (Enable) nirgendwo - oder habe ich was übersehen?

Gruß

Gregor

BTW: Informatikstudenten finden häufig, dass es Seminare zum Thema Flüche geben sollte :-)
Nicht lange fackeln, lass' Backen wackeln! (Seeed)

petemanzel

#33
Feb 27, 2016, 03:16 pm Last Edit: Feb 27, 2016, 03:29 pm by petemanzel
@Gregor: Pin 6 (inhibit) ist an GND.

Kurzer Auszug aus dem Datenblatt:

This device is a single 8-channel multiplexer having three binary control inputs, A, B, and C,
and an inhibit input. The three binary signals select 1 of 8 channels to be turned on, and
connect one of the 8 inputs to the output.

When a logic "1" is present at the inhibit input terminal all channels are off.

Es sei denn, ich hab da was falsch verstanden.

...Flüche und Vodoo.
Der Pete

michael_x

Ich dachte "Keine Ausgabe auf Display" wäre vom Tisch, mit dem Test-Sketch, und die Display-Hardware ist offensichtlich richtig angeschlossen und wird richtig angesprochen.

Da musst du doch jetzt "nur noch vorsichtig" die for-Schleife und das delay durch was richtiges ersetzen.

gregorss

#35
Feb 27, 2016, 03:43 pm Last Edit: Feb 27, 2016, 03:44 pm by gregorss
(inhibit) ist an GND.
In dem Datenblatt, das ich quergelesen habe, gibt es das Wort „inhibit" gar nicht. Und ich kenne das 40xx-Dingens auch überhaupt nicht. Aber wenn ich nicht falsch liege, gibt man mit „enable" an, dass die Wahl des gemultiplexten Dings „beendet" ist.

Es sei denn, ich hab da was falsch verstanden.
Oder ich.

Gruß

Gregor

PS: Probiere mal folgendes:

- Pin 6 des Multiplexers über einen Widerstand an + und an einen freien Pin des Arduino, den Du in setup() als Ausgang definierst.
- Nach der Wahl des Eingangs des Multiplexers (die Zeilen in denen Du bit1-bit3 setzt) setzt Du den Ausgang dann explizit „low", damit der Multiplexer weiß, dass jetzt eine gültige Wahl getroffen wurde.
Nicht lange fackeln, lass' Backen wackeln! (Seeed)

Serenifly

1 Byte ist halt das kleinste, was eine eigene Adresse hat und daher meist selbst auf so einem kleinen Controller das sinnvollste für eine Variable.
Off Topic, aber der 8051/52 ist da interessant. Da gibt es 16 RAM-Zellen die Bit-adressierbar sind. Und die Abfragen darauf dauern nur einen Takt

Sowas ist aber die Ausnahme

petemanzel

@Gregor: Ich habe jetzt PIN6 auf meinem Breadboard vie von Dir beschrieben umgesteckt. Es aendert sich aber nichts am verhalten.

Wenn "case 0" ausgefuehrt werden soll, springt die Anzeige immer zwischen "case 0" und "case 1" hin und her. Alle anderen-> "case 1" bis "case 7" funktionieren ohne Probleme.
Der Pete

gregorss

#38
Feb 28, 2016, 06:07 pm Last Edit: Feb 28, 2016, 06:31 pm by gregorss
Ich habe jetzt PIN6 auf meinem Breadboard vie von Dir beschrieben umgesteckt. Es aendert sich aber nichts am verhalten.
Wenn "case 0" ausgefuehrt werden soll, springt die Anzeige immer zwischen "case 0" und "case 1" hin und her. Alle anderen-> "case 1" bis "case 7" funktionieren ohne Probleme.
Weia. Das ist eine wirklich harte Nuss.

Momentan fällt mir nur ein, dass es gut wäre, den aktuellen Stand von Schaltung und Sketch zu sehen.

Gruß

Gregor

PS: Ich schlage mich hier ebenfalls mit einem fehlerhaften Ding herum und werde wohl (als letzte Maßnahme vor der Kapitulation) die Schaltung analysieren und als Schaltplan aufzeichnen. Ich hoffe, dass ich damit herausfinde, wo eine der I²C-Leitungen einen Kurzschluss mit der Versorgungsspannung hat. Allmählich gehen mir die Flüche aus und ich fühle mich von diesem Gebastel persönlich beleidigt.


Ich hatte doch noch einen Einfall: Vor einiger Zeit habe ich eine Schaltung aus > 20 Teilen aufgebaut, die nicht funktionieren wollte. Auf der Suche nach dem Fehler fand ich auch nach mehreren Tagen nichts. Irgendwann habe ich dann die identische Schaltung erneut auf einem anderen Steckbrett aufgebaut. Dann funktionierte sie. Ich kann daher nur vermuten, dass es beim ersten Aufbau ein Kontaktproblem gab.
Vielleicht ist das auch bei Deiner Schaltung so.  Wackle mal an allen Teilen und Drähten, steck Drähte testweise in andere Löcher der gleichen „Schiene" und probiere dann noch einmal, ob der Fehler immer noch auftritt.
Nicht lange fackeln, lass' Backen wackeln! (Seeed)

petemanzel

Allerdings, eine harte Nuss.

Ich sage ja: "VODOO". Da wo der normale Menschenverstand aufhoert.


Ich habe ja auch an der Schaltung gezweifelt. Aber was ja nicht sein kann, ist, dass wenn ich die unveraenderte Schaltung am SerialMonitor ausgebe, alles 1A bestens funktioniert.

Es mueste ja dann auch in im SerialMonitor immer Schaler1 und Schalter0 hin und her springen.
Der Pete

gregorss

#40
Feb 28, 2016, 07:44 pm Last Edit: Feb 28, 2016, 07:53 pm by gregorss
Es mueste ja dann ..
Das sehe ich ebenso.

Vorschlag: Lass das mal einen oder zwei Tage liegen. Wenn ich ein bisschen „Abstand" von den Dingen habe, finde ich häufig Fehler, die ich übersehen habe.
Ich habe mir jedenfalls einen 4051 auf meinen Einkaufszettel getan. Wenn ich den voraussichtlich mitte nächster Woche habe, werde ich Deine Schaltung mal aufbauen und versuchen, sie nachzuvollziehen. Der 4051 kostet ja nur ein paar Cent und ich lerne ihn dadurch kennen. Und hinterher kommt er in meine Grabbelbox.

Was meinst Du?

Gruß

Gregor


Nachtrag: Das Datenblatt, das ich kenne, ist das hier.
Auf Seite 4 ist eine Wahrheitstabelle, die das mit der Enable-Leitung zeigt.
Nicht lange fackeln, lass' Backen wackeln! (Seeed)

petemanzel

Vorschlag: Lass das mal einen oder zwei Tage liegen. Wenn ich ein bisschen „Abstand" von den Dingen habe, finde ich häufig Fehler, die ich übersehen habe.

@Gregor

Du hattest vollkommen recht. Hab alles liegen lassen. Heute morgen habe ich dann alles wieder fein saeuberlich zusammengesteckt; Und: TADAA alles funktioniert einwandfrei auf meinem Steckbrett.

Ich habe das ganze dann auf einer Lochrasterplatine verloetet und dann im Auto verbaut wo es hin soll.

Jetzt funktioniert das ganze recht gut aber manchmal springen die Ausgaben.
Kann das mit dem verseuchten Bordnetz zu tun haben? Oder muss ich die 3 Steuerleitungen und den Ausgang vom 4051 entstoeren?

Gruß
Pete
 
Der Pete

gregorss

Du hattest vollkommen recht. Hab alles liegen lassen. Heute morgen habe ich dann alles wieder fein saeuberlich zusammengesteckt; Und: TADAA alles funktioniert einwandfrei auf meinem Steckbrett.
Ui! Nachdem ich nichts mehr von Dir gelesen hatte, dachte ich, dass Du aufgegeben hast.

Kann das mit dem verseuchten Bordnetz zu tun haben? Oder muss ich die 3 Steuerleitungen und den Ausgang vom 4051 entstoeren?
Das ist eine Frage die ich nicht beantworten kann. Ich bin in meinem „The Art of Electronics" erst auf seite 27 von etwa 1200. Aber vielleicht liest ja jemand mit, der das weiß.

Ich habe mir jedenfalls ein Fleißbildchen verdient und gehe jetzt eine rauchen :-)

Gruß

Gregor
Nicht lange fackeln, lass' Backen wackeln! (Seeed)

gregorss

#43
Mar 03, 2016, 04:09 pm Last Edit: Mar 03, 2016, 11:37 pm by gregorss
Ich erlaube mir mal, den Thread ein bisschen nach oben zu schieben.
Es hat sich eine Folgefrage ergeben, die meine Inkompetenz wirklich gut aussehen lässt. Siehe #41.

Gruß

Gregor


@Pete: Mach vielleicht einen neuen Tread draus. Spätestens morgen Nachmittag.
Nicht lange fackeln, lass' Backen wackeln! (Seeed)

petemanzel

@Gregor: Werde ich tun.

Vielen, vielen Dank bis hier hin!
 
Der Pete

Go Up