LED-Matrix - passendes Schieberegister + Code in VB(.net)

Dies ist das deutsche Forum für alle Themen um den IO-Warrior. Beiträge bitte nur in Deutsch.

Moderator: Guido Körber

Post Reply
Hacky2k
Posts: 4
Joined: Tue Feb 26, 2008 11:27 am
Location: Düsseldorf

LED-Matrix - passendes Schieberegister + Code in VB(.net)

Post by Hacky2k »

Hallo zusammen!

Ich werde die nächsten Tage den IO-Warrior 56 bekommen. Natürlich habe ich mir das Ding schon ausführlich angeguckt.

Ich habe vor eine LED-Matrix damit anzusteuern.
Allerdings mit RGB-LEDs.
Für RGB sehe ich da kein Problem, aber was ist mit Mischfarben, wie gelb?

Mein Aufbau soll wie folgt sein:
32 RGB-LEDs, bei denen pro Schieberegister eine Kathode der RGB-LEDs angeschlossen werden soll. Also, dass eine LED von 3 Schieberegistern angesprochen werden kann. Oder wäre es für die Mischfarben besser, wenn ich das anders lösen würde?

Da beginnt dann auch direkt die nächste Frage: Wo habt ihr euch die Schieberegister besorgt? Oder welchen kann ich noch nehmen statt des 5821?
Als Treiberstufe habe ich einen 74HC 595, der sollte gehen nehme ich an?

Und dann direkt das nächste:
Ist die Ansteuerung einer Matrix so kompliziert in VB (.net), dass da kein Sample bei ist oder hat das andere Gründe?

Ich würde auch gerne eine Tastaturmatrix abfragen. Ist sowas sehr aufwändig? (OT: Boah, diese neue deutsche Rechtschreibung ist echt ätzend)


Vielen Dank im voraus,
Jörg
Last edited by Hacky2k on Wed Feb 27, 2008 11:35 am, edited 2 times in total.
Software is like sex, it's better when it's free!
wayoda
Posts: 362
Joined: Fri Dec 19, 2003 12:00 pm
Location: Wuppertal/Germany

Post by wayoda »

Hallo Jörg,
Ich habe vor eine LED-Matrix damit anzusteuern. Allerdings mit RGB-LEDs.
Für RGB sehe ich da kein Problem, aber was ist mit Mischfarben, wie gelb?
Eine analoge Ansteuerung der Led's (z.B. um die Helligkeit einzustellen) ist mit der Matrix Funktion nicht möglich. Es gibt nur die 7 Kombinationen mit festen Helligkeitsstufen die sich durch das Aus- und Einschalten der 3 Farben ergeben.
Wo habt ihr euch die Schieberegister besorgt? Oder welchen kann ich noch nehmen statt des 9821 als Treiberstufe habe ich einen 74HC 595, der sollte gehen nehme ich an?
Die 5895/5891 gibts bei http://www.segor.de

Eine Mischung der MIC5895/5821 aus der Application-note und 74HC595 geht nicht!
Hier ist der link zu einem langen Thread, in dem,das (ganz amEnde) bewiesen ;-) wurde:
http://www.codemercs.de/phpBB2/viewtopi ... c&start=30

Eberhard
Hacky2k
Posts: 4
Joined: Tue Feb 26, 2008 11:27 am
Location: Düsseldorf

Post by Hacky2k »

Boah, ich habe ja teilweise echt komisch geschrieben.
War gestern ein anstrengender Tag.

Also:

Hi Eberhard!

Helligkeitseinstellung ist für mich nicht relevant. Die sollen ruhig einfach hell glühen. ;-) Für mich war nur interessant, ob ich denn überhaupt Kombinationen ordentlich hinkriege, vor allem wenn ich die 3 Farben an 3 verschiedenen Schieberegistern habe, oder ob die Zeitverzögerung zu groß ist, dass das menschliche Auge schon wahrnimmt, dass das zwei Farben sind statt einer gemischten?

Okay, also ist Fig. 4 aus AN1 in der Dokumentation von den Chipsätzen her nicht ganz richtig?!
Dann kann ich den MIC 5821 als Schieberegister genauso nehmen, wie auch in Fig. 4 den 5821 und statt des 595 kann ich den MIC 5891 (steht bei Segor als Ersatz für den 5895) nehmen?


Die Fragen mit dem Code bleiben natürlich weiterhin offen für alle anderen! ;-)

Vielen Dank!
Software is like sex, it's better when it's free!
wayoda
Posts: 362
Joined: Fri Dec 19, 2003 12:00 pm
Location: Wuppertal/Germany

Post by wayoda »

Hi Jörg,
Okay, also ist Fig. 4 aus AN1 in der Dokumentation von den Chipsätzen her nicht ganz richtig?!
Die genaue Bezeichnung wäre wohl :
Fig. 4 aus AN1 in der Dokumentation von den Chipsätzen ist falsch

Benutzt du eigentlich RGB-Leds mit 6 Anschlüssen, also die Anode und Kathode jeder Farbe getrennt herausgeführt? Andernfalls has Du ein Problem mit den Widerständen, die den Strom durch die Led bestimmen. Der müsste wahrscheinlich für jede Farbe einen anderen Wert haben, damit keine Unterscheide in der Helligkeit zwischen den Farben entstehen.

Ich glaube man könnte die Widerstände auch in die Anodenleitungen der Leds einbauen. Dann würden z.B. in Figure 3 der Application-Note
in den senkrechten Spalten jeweils eine der Farben von den Leds zusammengefasst. Als Matrix etwa so :

Code: Select all

Led1Rot Led1Grün Led1Blau Led2Rot Led2Grün Led2Blau ...
Led3Rot Led3Grün Led3Blau Led4Rot Led4Grün Led4Blau ...
Led5Rot Led5Grün Led5Blau Led6Rot Led6Grün Led6Blau ...
...
...
Ist das klar geworden?

Bzgl. des Code :
Wenn Du erst mal angefangen hast wirst Du schnell feststellen, das es
1) sehr einfach ist mit dem IOWarrior umzugehen, und
2) wenn mal einmal das Prinzip verstanden hat, ist es leicht den Code auf andere Funktionen zu übertragen.

Das ganze besteht wirklich nur aus dem Lesen und Schreiben von Daten nicht viel anders als bei einer beliebigen Datei. Lies Dir im Datenblatt genau durch was ein Report ist und was die einzelnen bytes darin bedeuten, dann sollte es keine Schwierigkeiten geben.

Eberhard
Hacky2k
Posts: 4
Joined: Tue Feb 26, 2008 11:27 am
Location: Düsseldorf

Post by Hacky2k »

Jo, ich denke, das ist klar!
Daraus folgt dann auch direkt, dass ich keine RGB-LEDs nehmen kann (habe sowieso nur 4-beinige zur Auswahl), wo die Kathode der Pol ist, der entscheidet welche LED leuchtet! Oder sehe ich das falsch?

Kannst du mir denn Unterstützung geben, (wenn ich das alles hier habe) wie ich den MIC 5821 und den MIC 5891 verkabeln muss.

Schieberegister habe ich nur einmal verbaut und leider noch NIE über einen µC o.ä. angesteuert und meine letzte E-Technik ist auch schon ca. 5-6 Jahre her. :-(

Ich will aber jetzt wieder richtig einsteigen. Mich hat wieder das Fieber gepackt, als beim aufräumen meinen guten alten 8051er µC gefunden habe. ;-)
Software is like sex, it's better when it's free!
Post Reply