Go Down

Topic: Daten speichern + 16x16 RGB-LED-Matrix ansteuern (Read 18459 times) previous topic - next topic

Nathax

Warum meinst du ich bräuchte 16?
Ich orientiere mich an diesem Video:
http://www.youtube.com/watch?v=wXvs0CrRPIw
Und brauche ja für die 16x3 Reihen 6 SR und für die Spalten 2.
Für die Stromstärke verwende ich folgende ICs: UDN2981A
Sollte doch alles so klappen.

uwefed

Das Schieberegister ist 8Bit groß.

Deine 16x16 Matrix ist aufgebaut aus 4 Stück 8x8 Matrixen.

Je 8x8 Matrix brauchst Du 3 Schieberegister für die 3x8 RGB-Kathoden und 1Schieberegister nebst 1 UDN2983  für die 8 Anoden also im ganzen 4 Schieberegister das mal 4 sind 16 Schieberegister.

Du könntest je 2 8x8 Matrix zu einer 8x16 Matrix zusammenfassen (je 2 Anoden 2er Matrixen zusammenschließen) und so 2 Schieberegister und 2 UDN2983 zu sparen. Das mußt Du aber mit dem max Strom auf dem UDN2983 kontrollieren ob die den Strom von 16 Anoden verkraften ansonten kannst Du an die 2 Schieberegister 4 UDN2983 anschließen damit jeder UDN2983 weniger Strom bekommt.

Grüße Uwe

Nathax

#17
Jul 12, 2012, 01:54 pm Last Edit: Jul 12, 2012, 02:00 pm by Nathax Reason: 1
Ok, also brauche ich Minimum wv SR und ICs?
Edit: Und wie bekomme ich das mit dem Strom raus?

Eisebaer

hi,

ich will Dir wirklich nichts einreden, aber mit 16 TLC5940 (ohne multiplexen) um je 1,50 hättest Du alles, was Du brauchst (ok, 12 widerstände für praktisch nix müssen auch noch her), und eben alle farben. und einfachste programmierung.
mit multiplex brauchst weniger ics, etwas mehr programmierung...
uwe, wie ist es eigentlich mit der helligkeit beim multiplexen? muß ja irgendwie weniger werden, oder hat es damit zu tun, daß zwischen pwm 1000 und 4000 kaum ein unterschied zu sehen ist?

gruß stefan
nimm abblockkondensatoren!  100nF.  glaub mir, nimm abblockkondensatoren!

uwefed

Die Programmierung der TLC ist nicht so einfach.

Die Helligkeit ist weniger da beim Multiplexen die Einschaltzeit ja durch die Anzahl der multigeplexten Reihen / Zeilen zu diividieren ist. Eine 8x8 Matrix ist jede LED nur 1/8 der Zeit an. Mann kann den LED-Strom erhöhen da die Verlustleistung ja auch nur 1/8 der Zeit produziert wird und 7/8 der Zeit die LED sich abkühlen kann.

Bei einem LED-Matrix ist die Helligkeit oft nicht so wichtig da man direkt draufschaut. Meist ist der volle mögliche Strom sowieso zu hell.

@Nathax

Der Strom ist die Summe der Ströme der maximal eingeschalteten LEd die Zusammengeschaltet sind und von einem treiber angesteuert werden.

Grüße Uwe

Eisebaer

hi,

Quote
Bei einem LED-Matrix ist die Helligkeit oft nicht so wichtig da man direkt draufschaut. Meist ist der volle mögliche Strom sowieso zu hell.


ok, versteh' ich, bei matrizen macht's sinn...

Quote
Die Programmierung der TLC ist nicht so einfach.


das sehe ich allerdings nicht so.

beim 74HC595 schalte ich drei leds so ein:

Code: [Select]
const int latchPin = 8;
const int clockPin = 12;
const int dataPin = 11;

void setup() {
  pinMode(latchPin, OUTPUT);
  pinMode(dataPin, OUTPUT); 
  pinMode(clockPin, OUTPUT);
}

void loop() {
  digitalWrite(latchPin, LOW);
  shiftOut(dataPin, clockPin, MSBFIRST, B00100001);
  shiftOut(dataPin, clockPin, MSBFIRST, B00001000);
  digitalWrite(latchPin, HIGH);
  delay(100);
}


beim TLC 3 leds auf verschiedene helligkeiten:

Code: [Select]
#include "Tlc5940.h"

void setup() {
  Tlc.init();
}

void loop() {
  Tlc.clear();
  Tlc.set( 5,  500);
  Tlc.set( 8, 1000);
  Tlc.set(13, 4000);
  Tlc.update();
  delay(100);
}


da macht ja die library die ganze arbeit...

gruß stefan
nimm abblockkondensatoren!  100nF.  glaub mir, nimm abblockkondensatoren!

Nathax

#21
Jul 13, 2012, 02:07 pm Last Edit: Jul 13, 2012, 04:45 pm by Nathax Reason: 1
Ok, danke Leute.
Ich werde vorerst versuchen, die Schaltung, wie geplant mit den Schieberegistern und den von mir genannten ICs zu bauen.
Ich habe nämlich 10SR und 10ICs zu Hause und möchte die jetzt nicht in den Sand werfen.
Wenn es nicht klappen sollte, kann ich mir ja die Alternativen anschauen.
Was haltet ihr alternativ als beste Lösung?

Edit: Bei meiner Schaltung muss ich ja auch multiplexen. Bräuchte ich falls ich die 16 TLC5940s nehmen würde, dann noch die 48 Widerstände für die Kathoden?

uwefed

#22
Jul 13, 2012, 10:15 pm Last Edit: Jul 13, 2012, 10:25 pm by uwefed Reason: 1

hi,

Quote
Bei einem LED-Matrix ist die Helligkeit oft nicht so wichtig da man direkt draufschaut. Meist ist der volle mögliche Strom sowieso zu hell.


ok, versteh' ich, bei matrizen macht's sinn...

Quote
Die Programmierung der TLC ist nicht so einfach.


das sehe ich allerdings nicht so.

beim 74HC595 schalte ich drei leds so ein:

Code: [Select]
const int latchPin = 8;
const int clockPin = 12;
const int dataPin = 11;

void setup() {
 pinMode(latchPin, OUTPUT);
 pinMode(dataPin, OUTPUT);  
 pinMode(clockPin, OUTPUT);
}

void loop() {
 digitalWrite(latchPin, LOW);
 shiftOut(dataPin, clockPin, MSBFIRST, B00100001);
 shiftOut(dataPin, clockPin, MSBFIRST, B00001000);
 digitalWrite(latchPin, HIGH);
 delay(100);
}


beim TLC 3 leds auf verschiedene helligkeiten:

Code: [Select]
#include "Tlc5940.h"

void setup() {
 Tlc.init();
}

void loop() {
 Tlc.clear();
 Tlc.set( 5,  500);
 Tlc.set( 8, 1000);
 Tlc.set(13, 4000);
 Tlc.update();
 delay(100);
}


da macht ja die library die ganze arbeit...

gruß stefan

Dann versuch mal mit dieser Bibiothek eine LED-Matrix anzusteuern und dann sprechen wir uns nochmal und tauschen unsere Erfahrung aus ;) ;) ;)
Die Bibiothek ist nämlich ungeeignet für LED-Matrix da das Umschaltung der multigeplexten Reihen/Spalten synchronisiert mit der Ansteuerung der PWM geschehen muß.
Ich hab die Bibiothek von http://www.thebox.myzen.co.uk/Hardware/Mini_Monome.html für ein Projekt verwendet; diese muß aber auf eine 8x8 Matrix umgeschrieben werden.

@Nathax
Die TLC haben Konstantstromsenken als Ausgang. Darum brauchen die LED keinen Vorwiderstand. Der Strom aller Konstantstromsenken wird mit 1 Widerstand an Pin Iref bestimmt.

Grüße Uwe

Nathax

Ok, dann hört sich diese Variante wohl besser an.
Könntest du mir, falls es dir nichts ausmacht,
einmal den Schaltplan für die 16x16 RGB-LED-Matrix zeichen,
eine Liste der Teile geben, die ich brauche
und mir sagen, welche Bibliothek ich dafür dann verwenden soll?
Wäre sehr nett. Ich bräuchte nämlich eine Übersicht, um besser abwägen zu können.

Eisebaer

#24
Jul 13, 2012, 10:55 pm Last Edit: Jul 13, 2012, 11:12 pm by Eisebaer Reason: 1
hi, uwe, hi, nathax,

das meinte ich mit:
Quote
ok, versteh' ich, bei matrizen macht's sinn...


multiplexen macht sicher sinn, aber es ist nicht meins, hab' keine verwendung für...

Quote
Was haltet ihr alternativ als beste Lösung?


es geht nicht um alternativ, sondern darum, was Du erreichen willst, was Du zahlen willst, und wieviel Du lernen willst:

1. 74HC595 ohne multiplexen: einfach und billig.
2, 74H595C und multiplexen: nicht ganz so einfach, noch billiger
3. TLC5940 ohne multiplexen: nicht so billig(35€), sehr einfach, kann am meisten.
4. TLC5940 mit multiplxen: am kompliziertesten, kann praktisch soviel wie 3, billiger als 3, aber anfangen würd' ich nicht damit.

ich finde es auch nicht soo schlau, mit so einer schaltung auf platine anzufangen. besorg Dir ein breadboard, ein paar drähte, widerstände, 4 74HC595er, zwei TLC5940 und bau verschiedene schaltungen auf, probiere herum, programmiere aus spaß an der freud'. Deine fragen beantworten sich dann von selbst. die TLCs sind bei uns recht teuer, ich hab' mir unlängst 10 aus china kommen lassen, ich schick' Dir gern 2 kostenfrei, wenn es nicht nur eine laune von Dir ist.

@uwe:
Quote
Dann versuch mal mit dieser Bibiothek eine LED-Matrix anzusteuern und dann sprechen wir uns nochmal und tauschen unsere Erfahrung aus


gib nicht so an, ich beschäftige mich jetzt schließlich auch schon fast 3 monate mit elektronik,  :smiley-eek-blue:

gruß stefan
nimm abblockkondensatoren!  100nF.  glaub mir, nimm abblockkondensatoren!

uwefed


@uwe:
Quote
Dann versuch mal mit dieser Bibiothek eine LED-Matrix anzusteuern und dann sprechen wir uns nochmal und tauschen unsere Erfahrung aus


gib nicht so an, ich beschäftige mich jetzt schließlich auch schon fast 3 monate mit elektronik,  :smiley-eek-blue:

gruß stefan

Ich hab auch eine Weile gebraucht bis ich meine 6x5 RGB-Matrix (TIX Uhr Nachbau)  zum Laufen gebracht hatte.
Grüße Uwe

Eisebaer

hallo, uwe,

und bei mir ist's eine equinox-ähnliche uhr, die mich reizt.

gruß stefan
nimm abblockkondensatoren!  100nF.  glaub mir, nimm abblockkondensatoren!

Nathax

Vielen Dank für deine Bereitschaft Eisebaer.
Ich hatte ja eigentlich vor, mit dem Schieberegister zu multiplexen.
Das Prinzip habe ich ja verstanden und könnte mir eigentlich auch eigene Funktionen dafür schreiben.
Eigentlich mangelt es mir nur an Elektronik-Kentnissen, mein Vater hingegen kennt sich in diesem Bereich eigentlich recht gut aus.
Ich wollte halt in den Sommerferien ein 16x16 Display mit möglichst geringem Kostenaufwand zusammenbasteln, wobei meistens mein Vater
das elektronische Wissen hat und ich ihm dabei helfe, die ICs etc. richtig zu verkabeln, oder wie auch immer man das nennen mag.
Ich mach dann den softwareseitigen Teil und das hat bis jetzt auch eigentlich immer gut geklappt.
Wir haben uns dann das zuvor gepostete Video angeschaut und gedacht, sowas kann man bestimmt auch
auf 16x16 und 3 farbig machen. Nachdem ich den Videoautor gefragt habe, ob es so machbar sei haben wir die SR und ICs bestellt, eine Probeschaltung zu den SR gebaut
und es hat sofort funktioniert. Prima, haben wir gedacht und uns vorgenommen das dann auf die 4 Matrizen anzuwenden.
Ich hab schon einmal mit dem Gedanken gespielt, mir ein Breadboard anzulegen, doch entschlossen habe ich mich bisher nicht.
Villeicht wäre es eine gar nicht so schlechte Idee. Problem ist halt auch ein wenig die Zeit.
Ich glaube, dass wir es mit den richtigen Teilen schaffen könnten innerhalb von 2 Wochen die Grundfunktionen des Displays herzustellen.
Ich habe während der Schulzeit nicht ganz so viel Zeit für solche Projekte und habe dieses deshalb auf die Sommerferien gelegt.
Bisher habe ich einen Arduino Uno in meinem PC verbaut, den ich per Software steuern kann. Er regelt u.A. die Farbe meines Frontlüfters.
Dann habe ich noch ein kleines Display-Panel geschrieben, mitdem ich ne RGB-Lampe dimmen und animieren (Farbverlauf, Musik synchron etc.) konnte.
Ich bin sehr begeistert von Arduino und Co und würde mich sehr freuen, wenn du mir 2 von den TLC5940 schicken könntest.
Ich würde mir dann ein Breadboard zulegen (welches?) und ein wenig herumexperimentieren, um dann zum endgültigen Entschluss zu kommen.
Ich bin euch sehr dankbar für die bis jetzt von euch gezeigte Unterstützung und hoffe,
dass ihr mir auch in nächster Zeit während meines Projektes bei Fragen zur Seite stehen werdet.
Wenn du bereit wärest, mir die 2ICs zu schicken und vllt. noch ein gutes u. großes Breadboard empfehlen könntest, Eisebaer,
dann schreib mir bitte eine private Nachricht und ich werde dir meine Adresse zukommen lassen.

Mfg. Nathax  :)

uwefed

#28
Jul 14, 2012, 12:38 am Last Edit: Jul 14, 2012, 07:59 am by uwefed Reason: 1
Steckbrett: ein großes: eins mit 830 Kontakten. ZB: http://www.watterott.com/de/Breadboard-830-Pin?x922a4=f6badf101ba2b1ee2b0fd3fefcde3a8c
Ein weißes ist einem durchsichtigen vorzuziehen, da es zwar schöner aussieht, aber beim Schaltungsaufbau schwerer zu sehen ist wo die Dräte einzustecken sind.
Steckbretter hat jeder Elektronikladen.
Als Dräte verwende ich starre Telefonkabel die an beiden Seiten ca 1 cm abisoliert sind (Kupfervolldraht verzinnt ca 0,5mm Durchmesser).  

Für Deine Fragen sind wir hier.

Grüße Uwe

Eisebaer

danke, uwe,

immer erst flexibel probieren, da kommt man auf viele dinge drauf.
klick auf mich und schick mir eine PM. nimm Dein stammlokal als adresse, ich würd' meine daten auch nicht einem fremden geben. außerdem mußt Du es dann nicht von der post holen.

gruß stefan
nimm abblockkondensatoren!  100nF.  glaub mir, nimm abblockkondensatoren!

Go Up