hi ich möchte an einen avr pr dacs anschließen mit den dacs sollen anschließend leds betrieben werden. bei den dacs sie ich im moment habe (von TI) muss ich danach eienen impedanzwandler als treiber verwenden das funzt zwar ist mir aber zu aufwendig die docs sollten ca 20ma bei 3 bis 4 volt liefern welchen typen könnt ihr mir da empfehlen. mfg
Willst du die LEDs an den DAC machen damit du die Dimmen kannst oder was? (schonmal was von PWM gehört?)
jo ich will die dimmen pwm kenn ich funzt aber mit sicherheit net und die led direkt an den avr anschießen bringt wohl am wenigsten
Was meinst du mit tiefen Spannungen? Mit PWM kannst du die LED's soweit runterdrehen bis sie aus sind.
wie wärs wenn du einfach einen Transistor am Ausgang deines DACs schaltest. Basis an DAC-OUT, Collector an Vdd und Emitter an Vorwiderstand der LED. So kann man ja auch eine LED dimmen.
naja das wäre ja ein ahnlicher verdratungsaufwand wie bei einem impedanzwandler und genau das wollte ich vermeiden zu pvm ich möchte ja mehrere bzw vielle leds betreiben und die dacs sind ja inder lage die werte zu speichern usw
wenn du im avr die Hardware PWM verwendets braucht das auch keine Rechnenzeit. es wird nur 1 Takt gevraucht wenn du die Helligkeit änderst.
"ach ja und bei tiefen spannungen funzt pvm bei leds doch garnicht" Den Irrtum hatten wir schonmal diskutiert. Es ist nämlich genau umgekehrt: Bis zur Flußspannung der LED funzt ein DAC nicht, Dir geht also Auflösung verloren. Eine PWM schaltet aber und funktioniert daher immer von 0% bis 100%. Peter
so ein grosser Verdrahtungsaufwand ist es dann auch nicht... immerhin fügst du nur 1 Bauteil mit 3 Pins in den Kreis ein. Wieviele LEDs willst du denn ansteuern?
ich bis nochmal ok das pwm funzt ist klar ich habs auspropiert aber ich will 32 leds ansteuern und das mit ops geht wohl sehr schlecht am besten wäre 4 dacs die genügent power hätten das direkt zu tun es gibt ja gebufferte aber nur welche mfg hommer
Mensch das wird doch wohl nich das Problem sein. Du kannst die LEDs auch als Matrix aufbauen. Geeignet angeordnet kannst du aufdie Art mit 8 Pins Portaufwand und einem kleinen bisschen Softwareaufwand alle 32 spotbillig dimmen ! Du hast dann lediglich einen verdrahtungsaufwand von 4 Widerständen (und den 32 LEDs natürlich) ! 5 6 7 8 | | | | 1-R-X-X-X-X | | | | 2-R-X-X-X-X | | | | 3-R-X-X-X-X | | | | 4-R-X-X-X-X Von den 4 Widerständen kommt jeweils einer an Stelle eines Rs. Der Wert des Widerstandes muss ein Achtel des üblichen Widerstandes betragen, damit die Gesamthelligkeit dem Dauerbetrieb entspricht. (Genaueres später). So. an jeweils ein X setzt du nun 2 LEDs parallel, aber in entgegengesetzte Richtungen. Und zwar so, dass senkrechte mit waagerechter Linie verbunden wird. Das nennt man Matrixbetrieb. Wenn du noch etwas Softwareaufwand sparen willst, baust du eine 4x8 Matrix auf - brauchst halt dann 12 Pins, musst dich aber nicht um die Flussrichtung kümmern. Mit dem 4x4-Design baust du aber trotzdem eine 4x8 Matrix auf, der einzige Unterschied besteht lediglich darin, dass du zwischendrin die Stromrichtung änderst und damit andere LEDs zum Leuchten bringst. Prinzip ist einfach : Damit die LED leuchtet, muss die Anode auf HIGH und die Kathode auf LOW. Legst du 5 auf HIGH, dann leuchtet die LED auf dem Kreuzpunkt mit 1, wenn 1 auf LOW ist. Legst du 5 auf LOW, leuchtet die LED auf Kreuzpunkt 1, wenn 1 auf HIGh ist. Damit nicht ungewollt die Kreuzpunkte der anderen Reihen (6-8) aufleuchten, musst du diese während dieser Zeit auf Eingang ohne Pull-up schalten. Dann kann kein Strom fließen. Am besten, du betreibst die Schaltung bei 3,3V, da bei 5V jeweils zwei in Serie geschaltete LEDs leuchten könnten (durch eine Spannung zwischen einen der Pins von 1-4). Wenn du trotzdem 5V willst, lies am Ende des Textes - dort steht noch eine Alternative. Nun durchläufst du Sequentiell die Leitungen 5-8 wie oben beschrieben (5H,5L,6H,6L, ... - die anderen dabei auf Eingang stellen !) und legst entsprechend an 1-4 den Zustand für die LED an. Mit etwas Softwareaufwand (bei geschickter Programmierung nicht viel) kannst du eine Software-PWM realisieren, die die Pins 1-4 während einer Leuchtperiode vorzeitig abschaltet. So durchläufst du Zeile um Zeile und zwar so schnell, dass sich das ganze "Bild" mehr als 60-70 mal pro Sekunde aufbaut. Dann wird das vom Auge nicht mehr als flimmern wahrgenommen. Das heißt, du musst deine PWM für eine Geschwindigkeit von 50*8*Auflösung auslegen. Sagen wir mal 32 Helligkeitsstufen - mehr wird wohl bei einer LED kaum Sinn machen - macht eine PWM-Grundfrequenz von 12,8 KHz. Das ist durchaus zu schaffen. Bei 8 MHz Taktfrequenz hast du bequeme 625 Takte für einen (!) PWM-Schritt zeit. Das bedeutet, dass du das bequem in die ISR eines Timers unterkriegst. Mit Assembler schluckst du vllt. 10% Rechenleistung des AVRs. Dreh es wie du willst : mit weniger Aufwand und effektiver wirst du es kaum schaffen. Das ist die Technik, wie sie auch bei Professionellen Anwendung findet. Hardwareseitig hast du 0 Aufwand. Geldbeutelseitig ebenfalls nicht. Du brauchst halt 3,3V damit du kein "Fehlleuchten" erzeugst. Wenn du doch 5V verwenden willst, kannst du das zur Not aber auch umgehen, indem du einen Spannungsabfall (kein Widerstand) in die Leitungen 1-4 einbaust, der die ON-Spannung unter die doppelte Abfallspannung einer LED drückt.
TLC5923 von Texas instruments. Treibt 16 LEDs, wird seriell angesteuert und speichert die Werte auch. Greetz kmt
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.