Ich habe mir eine LED Matrixanzeige mit dem PIC 18F2320 aufgebaut. Es werden 20 5x7 Segmente angesteuert. Leider bekomme ich keine ausreichende Hellikeit hin. Die einzelnen Zeilen werden mit 7 Darlington Transitoren BDX54c geschaltet. Ich wollte sie mit 12V speisen, dann leuchte aber alle LED's auf. Ich muss dann zurückschrauben auf etwa 7V damit die Laufschrift lesbar ist. (Aber leider zu dunkel.) Weis jemand bescheid, wie mann die Hardware richtig aufbaut ?
@Reto Kaufmann: Hmm, klingt etwas seltsam, dass alle LEDs bei 12V leuchten, bei 7V aber nur die gewünschten. Ich kenne mich mit den PICs nicht aus, aber vielleicht könntest Du einen Schaltplan posten, damit etwas klarer wird, was genau Du gemacht hast. Dann könnte man auch eventuelle Fehler im Hardwareaufbau finden. Z.B. wäre es interessant wie die 100 Spalten angesteuert werden... Am Meisten hilft natürlich der komplette Schaltplan. @crazy horse: Solche Kommentare kannst Du Dir nun wirklich sparen. ____________________ http://www.dark-sun.de
die Frage war: weiss jemand, wie mans richtig baut -> ja. Zur nichtfunktionierenden Schaltung kann man nichts sagen, da nicht vorhanden.
Ich hatte mal ein ganz ähnliches schaltungstechnisches Problem. Mit NPN-Transistoren wäre das nicht passiert. Der Controller wird mit 5 Volt versorgt, nehme ich an. Wenn der Portpin, der die Basis eines jeweiligen PNP-Darlingtons ansteuert, auf Low geschaltet ist, leitet der PNP. Sollte jedenfalls, der Logik nach. So weit, so gut. Wenn aber nun der Portpin auf High ist, und der nachgeschaltete Transistor sperren sollte, so funktioniert das nur dann problemlos, wenn die Spannung am Emitter die Spannung an der Basis nicht wesentlich übersteigt. Bei einer Spannung am Emitter, die wesentlich höher ist als 5V, fließt in den Transistor bereits ein nennenswerter Basisstrom, auch wenn er (mit High-Pegel angesteuert) gar nicht leiten sollte. Für den Transistor ist dann nämlich die Spannung an der Basis (+5V) bereits deutlich negativer als die am Emitter (+12V), folglich fängt er an zu leiten. Leider habe ich die Schaltung damals verworfen, anstatt sie zu überarbeiten, daher kann ich hier keine praxiserprobte Lösung präsentieren. Allerdings gibt es mehrere theoretische Ansätze: Wenn es NPN-Transistoren sein dürfen, alle Ausgänge invertieren und die Sache funktioniert. Wenn so wenig wie möglich geändert werden soll, könnte man versuchen, zwischen die Basisanschlüsse der Transistoren und die Portpins, die sie ansteuern, Z-Dioden von ein paar Volt (z.B. 3V3) einzufügen. Dies würde die an der Basis erforderliche Mindest-Spannung erhöhen und die Transistoren in gewisser Weise unempfindlicher machen. Das Problem dabei ist, daß der Spannungsabfall an einer Z-Diode bei geringen Strömen oft nicht dem Nennwert entspricht, und sich, in diesem eher ungünstigen Teil der Kennlinie mit dem Basisstrom ändern kann. Einen Versuch wäre es aber wert, wenn eine Notlösung gefragt ist. Für ein Serienprodukt würde ich das aber nicht empfehlen. Dann lieber andere Transistoren, oder Optokoppler verwenden, was die Sache aber komplizierter macht. Eine andere Schummel-Lösung wäre es, den Mikrocontroller über einen Negativ-Spannungsregler zu versorgen, d.h. +5V an +12V anschließen, aber (!) die Masse/Ground-Leitung nicht an 0V, sondern an eine geregelte Spannung von 7V anzuschließen. Der Mikro merkt davon nichts, und die Transistoren sollten nun korrekt ansprechen. Man sollte aber wissen, was man tut. Schaltungen, in denen die Masse nicht auf 0V liegt, können sich, insbesondere beim Anschluß an externes Meßequipment, als tückisch erweisen.
wenn du +12V schalten willst, musst du erst mit nem npn in emitterschaltung die spannung auf +12V erhöhen, sonst kannst du den pnp nicht ansteuern mit deinem pic. da der nur 0/5V hat ist das immer negativer als 12V wie hast du die gemultiplext?
Upss...das ist doch genau mein Problem. Vielen herzlichen Dank. Ich werde mal versuchen einen Treiber (ULN2003 oder ähnlich) vorzuschalten. Das Layout ist noch nicht gemacht. Alles noch im Versuchsaufbau. Die Matrix steuere ich im Zeilenmultiplex an. 1. Schieberegister für die 1.Zeile abfüllen. (5x20 = 100 Bits) 2. 1.Zeile einschalten 3. leuchten lassen. 4. 1.Zeile ausschalten 5. Schieberegister für die 2.Zeile abfüllen usw.
Was nimmst Du denn für Schieberegister ? Wenn das Schieben lange dauert in Bezug auf die Darstellzeit, nimmt die Helligkeit stark ab. Besser nimm den 75HC595, den kannst Du in Ruhe laden und dann einfach die neuen Daten mit nur einem Latchimpuls ausgeben. Peter
Vielen Dank für den Tip mit dem 74HC595. Leider ist das Display schon fertig aufgebaut. (Nur die Ansteuerung noch nicht) Ich habe MC14015B 4-Bit Schiebregister verbaut, da ich noch viele von diesen IC's hatte. Wenn dann die Ansteuerung der Zeilen richtig funktioniert, sollte die Hellikeit kein Problem mehr sein.
Hast du testweise mal eine zeile direkt angelötet um zu testen, ob deine schieberegister ordentlich arbeiten?
"Ich habe MC14015B 4-Bit Schiebregister verbaut" Na dann ist mir alles klar, warum die LEDs nur dunkel vor sich hin funzeln. Die 4015 sind Hochvolt-CMOS, d.h. bei 5V liefern die nur etwa 1..3mA. Peter
"Die 4015 sind Hochvolt-CMOS, d.h. bei 5V liefern die nur etwa 1..3mA." Es ist noch ein ULN2003 nachgeschaltet. :-) Es funktioniert jetzt alles. Es war das beschriebene Problem von Sebastian Eckert. (siehe oben) Nun leuchten die LED super Hell. Besten Dank für die guten Tips.
Ich hab mir mal eine Laufschrift mit 5x7 LED Matrix Bausteinen gebastelt. Schau mal bei http://www.poms-engineering.at/html/index.php?lang=de&inc=projects_moving_screen vorbei, vielleicht kann ich dir ja weiterhelfen. Ich verwende als Controller den PIC18F458.
ich hatte sowas mal mit 3 8x5 bausteinen gemacht. das ganze hat ähnlich funktioniert. Im moment plane ich ein Radiowecker mit 2 Zeilen a 8x96 smd leds. Der soll dann ales mögliche anzeigen. Da ich ne DBOX am Bett stehen habe, wird er seine Daten von Ihr beziehen, und auch evtl den MP3Player als Radiowecker ansteuern. Wenns fertig ist, gibts Bilder
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.