Ich Versuch seit Tagen mit einem Arduino UNO, Mega und Nano mittels eines TLC5940 mehrere LEDs zu steuern.
In meinem Testaufbau, habe ich erstmal nur 1 LED angeschlossen. Einmal geht das ganze UNO Board aus, sobald ich 5v einstecke, einmal flackert die 1 LED wie Wild, sobald der USB Anschluss mit dem Laptop verbunden ist, wenn ich den USB Anschluss herausziehe, und den Arduino mit Netzteil betreibe, leuchtet die LED mit voller Intensität.
Bin wirklich verzweifelt, denke ich habe alles mehrfach, richtig umgebaut.
Im Anhang 2 Fotos, von der Mega Schaltung. Ist sicher nicht viel zu sehen, aber vielleicht habt ihr noch eine Idee, nen Tipp, oder nen Link der mir weiterhelfen kann.
das ist richtig.
Ich weiß dann nicht was der Fehler sein könnte. Kannst DU ein Foto machen wo man die Verdratung sieht (wo die einzelnen Kabel am TLC hingehen)
Grüße Uwe
Stimmt, aber bei der Mega Variante vom Bild war es so, dass alles unkontrolliert geblinkt hat, wenn USB eingesteckt war und wenn nur Strom eingesteckt war, hat die LED Vollgas geleuchtet.
falsche Taste, jetzt darf ich alles wieder Tippen.
Ich habe folgenden Aufbau noch einmal gemacht.
Arduino Mega 2560
TLC5940
1 Blaue LED
12V Stromversorgung
Ich habe den Arduino Mega wie in Bild 1 mit dem TLC und den TLC mit der LED verbunden. Außerdem habe ich wie in Bild 2 die anderen Anschlüsse des Megas im vergleich zum UNO verwendet.
Ich habe alles neu zusammen gesteckt und 5 mal Kontrolliert, es sollte so also stimmen.
Als "Programm Code" habe ich folgendes auf den Arduino geladen.
Die LED blinkt ab und an, mehr nicht.
Liegt es an meiner Schaltung oder an meinem Code? Ich tendiere zum Code, ich weiß er ist sehr spartanisch, aber ich möchte gerade einfach nur verstehen wie es geht und was die befehle sind.
wenn ich das richtig sehe, hast Du die analogen pins (am foto links) genommen. Du mußt aber die PWM-pins mit der gleichen nummer auf der rechten seite nehmen, wenn ich mich recht erinnere. also 9, 11, 12 mit PWM.
suuper! das ist mir garnicht aufgefallen! hab ich gleich mal geändert und den Code habe ich wie folgt geändert.
Was sagst du/ihr zu dem Code? Es passiert so garnichts, eben ging wenigstens nach einer ewigkeit die LED an, jetzt passiert garnichts. Habe ich irgendeinen denkfehler im Code noch?
So, jetzt wo das endlich läuft, zum nächsten ausbauschritt:
ich möchte mehrere LED Strips, teilweise recht lange, so getrennt steuern. Bin mir nicht sicher, was der TLC5940 an Strom verträgt, aber denke mit 1A dürfte er überlastet sein?
Also würde ich gerne mit einer Transisotrschaltung arbeiten.
Ich habe schon Arduino PWM ausgänge mit Transistor genutzt um LED Strips zu steuern, das hat geklappt. Aber der Arduino gibt mir ja +5V die dann den Transisotr auf GND schalten und auch das +12V der LED Strips auf GND legen. (komisch ausgedrückt, aber ich hoffe ihr versteht das).
Der TLC5940 schaltet aber wenn ich das richtig verstehe doch -5V quasi. also genau anders herum als der Arduino.
Welchen Transistor TYP brauche ich dann NPN oder PNP?
Geht das überhaupt so, wie ich es mir grade vorstelle?
Der Transisot benötigt normalerweise ja auch einen "Vorwiderstand" damit nicht zu viel Spannung vom Arduino gezogen wird. Das blockt der TLC5940 aber doch schon mit seinem Widerstand, ja?
Ich muss also nach jedem Befehl Tlc.update eingeben, dachte nur einmal am Schluss, was ein Aufwand zum Programmieren.
...ist in die falsche richtung gedacht. Du mußt es weder nach jedem befehl(set, setAll...) eingeben, noch nur eimal am schluß, sondern wenn Du willst, daß alle änderungen, die Du gemacht hast, tatsächlich am tlc gesetzt werden.
das scheint nur in Deinem beispiel aufwendig, weil Du ja nur einen kanal benutzt, aber stell Dir vor, Du verwendest achzig kanäle. so wie ein schieberegister funktioniert, müssen IMMER ALLE kanäle auf einmal gesetzt werden, auch wenn sie sich nicht verändern.
daMeier:
So, jetzt wo das endlich läuft, zum nächsten ausbauschritt:
ich möchte mehrere LED Strips, teilweise recht lange, so getrennt steuern. Bin mir nicht sicher, was der TLC5940 an Strom verträgt, aber denke mit 1A dürfte er überlastet sein?
Also würde ich gerne mit einer Transisotrschaltung arbeiten.
Ich habe schon Arduino PWM ausgänge mit Transistor genutzt um LED Strips zu steuern, das hat geklappt. Aber der Arduino gibt mir ja +5V die dann den Transisotr auf GND schalten und auch das +12V der LED Strips auf GND legen. (komisch ausgedrückt, aber ich hoffe ihr versteht das).
Der TLC5940 schaltet aber wenn ich das richtig verstehe doch -5V quasi. also genau anders herum als der Arduino.
Welchen Transistor TYP brauche ich dann NPN oder PNP?
Geht das überhaupt so, wie ich es mir grade vorstelle?
Der Transisot benötigt normalerweise ja auch einen "Vorwiderstand" damit nicht zu viel Spannung vom Arduino gezogen wird. Das blockt der TLC5940 aber doch schon mit seinem Widerstand, ja?
gruß
Die Ausgänge des TLC sind Konstantstromsenken (sie halten den Strom der von +Pol über die LED in den Ausgang gegen Masse fließt).
Damit Du einen Transistor ansteuern kannst mußt Du am Ausgang einen Widerstand von ca 2kOhm auf +5V schalten und die Basis des NPN Transistors auf den Ausgang des TLC. Den Emittor auf Masse und - Pol der LED-Strips auf den Kollektor. Den Pluspol des Strips auf + Pol der Spannungsversorgung. Die LED konnen mit 12 V versorgt werden, die Masse müssen zusammengeschaltet werden.