Hallo zusammen,
ich hoffe ihr könnt mir weiterhelfen. Ich habe einen Arduino und
versuche damit eine 7-Segment-Anzeige anzusteuern.
http://www.elv.de/lucky-light-7-segment-anzeige-kw1-2301awb-weiss-56-8-mm.html
Die Anzeige hat einen gemeinsamen Anoden Anschluss und pro Segment 4
LED's. Da ich hier mit meinen 5 Volt von meinem Controller nicht
hinkomme, verwene ich externe 12V auf der gemeinsamen Anode.
Nur wie kann ich die Grounds über meinen Controller am besten Schalten?
Bin für jede Hilfe dankbar.
Das Ding (ULN2803) hat 8 Ausgänge, die nach Masse schalten. Daran
schließt Du die Segmentanschlüsse (Kathoden) aller Bausteine an. Du
brauchst für weitere Stellen noch pro einen Digit-Treiber, der nach Vcc
schaltet. (z. B. einen Transistor)
Hast Du Dich mit solchen Anzeigen und deren Ansteuerung (Multiplex)
schon mal beschäftigt?
Ist mein erstes mal, aber ich glaube ich hab es verstanden.
Meine 8 Controller Ausgänge (die mir bei high 5 Volt liefern) lege ich
auf die 8 Eingänge des ULN2803, die 8 Ausgänge des ULN2803 bekommen
jeweils einen der 8 Kathoden meiner 7-Segment Anzeige. Die gemeinsame
Anode der Anzeige auf 12V und dann sollte es ja funktionieren.
Tobias schrieb:> Die gemeinsame> Anode der Anzeige auf 12V und dann sollte es ja funktionieren.
Wenn Du nur eine Stelle/Digit hast, ist das so richtig.
LED-Vorwiderstände nicht vergessen!
Ja genau, habe nur eine Stelle. Klar Vorwiderstand 100 Ohm. Also
leuchten tut es schon :) Bald dann auch angesteuert über den Controller.
Vielen Dank für Deine/Eure Hilfe.
Tobias schrieb:> Klar Vorwiderstand 100 Ohm.
Du brauchst nicht einen, sondern acht. Aber probier es mit einem ruhig
mal aus. ;-) Es geht nichts kaputt.
Ich habe einen Uhren-Bausatz aus China 3x aufgebaut. Da wird nur ein
gemeinsamer Vorwiderstand für alle 7 Segmente verwendet.
Erstaunlicherweise sehe ich keine nennenswerten Helligkeitsunterschiede
zwischen den Segmenten. Im Datenblatt des Herstellers wird diese
Betriebsart kurz erwähnt aber davon abgeraten.
Man sieht, dass die Chinesen mutiger sind, wenn es darum geht, ein paar
Cent einzusparen.
Stefan U. schrieb:> Ich habe einen Uhren-Bausatz aus China 3x aufgebaut. Da wird nur ein> gemeinsamer Vorwiderstand für alle 7 Segmente verwendet.> Erstaunlicherweise sehe ich keine nennenswerten Helligkeitsunterschiede> zwischen den Segmenten.
Daraus könnte man schließen, dass die Einschaltdauer jeder einzelnen
Stelle abhängig von der Anzahl der leuchtenden Segmente variiert wird.
Tobias schrieb:> Ja genau, habe nur eine Stelle. Klar Vorwiderstand 100 Ohm.
Der Punkt benötigt min. 270 Ohm, da hier nur 2 LEDs in Reihe liegen.
Stefan U. schrieb:> Ich habe einen Uhren-Bausatz aus China 3x aufgebaut. Da wird nur ein> gemeinsamer Vorwiderstand für alle 7 Segmente verwendet.> Erstaunlicherweise sehe ich keine nennenswerten Helligkeitsunterschiede> zwischen den Segmenten.
Wenn man immer nur 1 Segment leuchten lässt, geht das. Allerdings
erreicht man so nie die max. mögliche Helligkeit, da jedes Segment nur
noch 1/8 der Zeit leuchten kann. Oder man betreibt die Segmente mit
deutlich mehr Strom als für Dauerbetrieb zulässig. Dann riskiert man
aber ein Durchbrennen, wenn die Ansteuerung mal hängen bleibt und ein
Segment doch für längere Zeit leuchtet.
Na, da hab ich aber Zweifel das mit 100 Ohm und 12V das so einfach
geht. Die Reverse-Spannung ist lt. Datenblatt nur 5V.
Lt. Diagramm fließen bei 13V Forwardspg. erst die zulässigen 25mA.
Was hat die Reverse-Spannung jetzt damit zu tun. Die hängen ja nicht an
einer Vollbrücke, wo sie verpolt werden...
4 Weiße LEDs in Reihe an "nur" 12 Volt ist jedoch wohl etwas knapp.
Tany schrieb:> UN2803 und haufen Vorwiderstände?> Wie wäre es mit einem "richtigen" Treiber wie z. B TLC5916?
Hier läuft eine Uhr mit 16 Stellen und 16+8 Transistoren. Solange genug
Ports vorhanden sind, muß man keine speziellen ICs teuer kaufen.
Stefan U. schrieb:> Was heißt hier teurer Chip? Sind die 8 Transistoren und 16 Widerstände> wirklich billiger als 1,50€?
Wenn der wirklich 1,50 kostet, OK. Bei R* und C* steht er nicht im
Katalog, also für den Bastler schwer zu beschaffen.
Transistoren sehe ich als 'kosten nichts', weil in Menge vorhanden.
Tobias schrieb:> Ja genau, habe nur eine Stelle.
Also ist ein ULN die sinnvolle Lösung.
Cyborg schrieb:> Lt. Diagramm fließen bei 13V Forwardspg. erst die zulässigen 25mA.
Dieser Hinweis ist viel wichtiger: An 12 Volt ist ein sicherer Betrieb
nicht möglich, die Segmente haben 4 weiße LEDs in Reihe!
Manfred schrieb:> OK. Bei R* und C* steht er nicht im> Katalog, also für den Bastler schwer zu beschaffe
TME liefert auch an Privat.
Dort kostet z. B ein TLC5916 knapp 1,4 EUR.
Man braucht weniger Ports und Energie. Außerdem kann die Helligkeit
regeln.
Ist der Mehrpreis von 50 Cents nicht wert?
Wenn man mit SMD umgehen kann, kostet dort ein SCT2168 nur knapp 40
Cent, sogar noch billiger als ein ULN2803.
Tobias schrieb:> Die gemeinsame> Anode der Anzeige auf 12V und dann sollte es ja funktionieren.
Das reicht nicht, denn:
- lt. Datenblatt ist die Forward Voltage typ. 12,8V und max. 16V,
- der ULN "verbraucht" mindestens noch 1V,
- am Vorwiderstand fällt auch Spannung ab.
Und ist der Vorwiderstand zu klein (d.h. Spannungsabfall zu gering), ist
die Helligkeit stark abhängig von Exemplarstreuung, Temperatur und
Spannungsschwankungen.
Danke für den Tipp mit dem SCT2168! Schade, das 90mA dann doch n bissl
dünn sind. Gibt es sowas mit 250mA? Der TLC5916 macht "immerhin" schon
130mA.
Fakt ist hier jedoch, das der liebe TE ( so er noch mitliest ) seine 12
Volt (wie auch immer) aufstocken muss. Ich nehme da immer einen freien
Timerpin, Transistor hinter und mit einer NPN-PNP Halbbrücke und einer
halbe Delon(oder war's Villard) aus MUR4007 und 470µF auf die
Betriebsspannung aufgestockt. Reicht ja hier aus, fehlen schließlich nur
ein paar Volt.
EDiT: eben nochmal den Eingangspost gelesen:
das mit dem Aufstocken hat der Tobi verstanden, oder soll ich aufmalen?