Forum: Mikrocontroller und Digitale Elektronik 100mm 7 Segmentanzeige über Arduino Uno


von Raphael (Gast)


Lesenswert?

Schönen guten Abend zusammen,

folgendes Problem.

ich möchte gerne über einen Arduino UNO eine 100 mm große 7 
Segmentanzeige ansteuern.
http://www.conrad.de/ce/de/product/160136/7-Segment-Anzeige-Kingbright-SC40-19SGWA-Zifferhoehe-100-mm-Gruen-21-mcd?
gemeinsame Kathode


Dabei würde ich, um PIN's zu sparen einen BCD  7-Segment-Decoder 
verwenden:

http://www.conrad.de/ce/de/product/172669/CMOS-IC-Texas-Instruments-CD4511BE-Gehaeuseart-DIP-16-Ausfuehrung-7-Segment-DecoderTreiber/SHOP_AREA_17311?

Jetzt hab ich aber festgestellt, dass jedes Segment mit 8V versorgt 
werden soll. Diese Spannung liefert mir jedoch mein µc nicht.

Zuhause hatte ich noch ein 7V netzteil rumliegen welches die Anzeige 
ebenso zum leuchten bringen sollte.

Jetzt meine Frage:
Ist es möglich von meinem IC (BCD Decoder) über einen Vorwiderstand an 
einen PNP Transistor zu gehen um mir von diesem die 7V (sowie circa 
20mA) durchzuschalten oder  benötige ich eine etwas kompliziertere 
Schaltung?
Als Transistor wollte ich diesen verwenden:

http://www.conrad.de/ce/de/product/155101/Bipolar-Standard-Leistungstransistor-BC558B-PNP-Gehaeuseart-TO-92-IC-200-mA-Emitter-Sperrspannung-UCEO-30-V?ref=searchDetail

Ich bin für jede Antwort dankbar!
Bei Fragen ruhig her damit.

von holger (Gast)


Lesenswert?

>gemeinsame Kathode

Nimm eine Anzeige mit gemeinsamer Anode. Dann wird es leichter
für dich.

von Thomas (Gast)


Lesenswert?

Raphael schrieb:
> Zuhause hatte ich noch ein 7V netzteil rumliegen welches die Anzeige
> ebenso zum leuchten bringen sollte.

Wird nicht langen, da an deinem Vorwiderstand (den du ja hoffentlich 
eingeplant hast) auch noch ein paar Volt abfallen!

Raphael schrieb:
> Jetzt meine Frage:
> Ist es möglich von meinem IC (BCD Decoder) über einen Vorwiderstand an
> einen PNP Transistor zu gehen um mir von diesem die 7V (sowie circa
> 20mA) durchzuschalten oder  benötige ich eine etwas kompliziertere
> Schaltung?

Den PNP schaltest du besser über einen NPN Transistor, da der PNP sonst 
nicht richtig gesperrt werden kann (bis zu 0,9V Dropout-Spannung am 
Decoder laut Datenblatt) und ausserdem das Signal sonst invertiert 
werden würde.

holger schrieb:
> Nimm eine Anzeige mit gemeinsamer Anode. Dann wird es leichter
> für dich.

Das würde ich dir auch empfehlen!

von Raphael (Gast)


Lesenswert?

Erst mal danke für die schnelle und hilfreiche Antwort.

könntet Ihr mir eventuell kurz aufzeichnen, wie und mit welchem 
bauteilen ich dann die 7 segmentanzeige anschließe?

Ich habe noch ein 18,75V (3,1A) Netzteil zuhause.

Die Anode an meiner Anzeige wäre dann der Pin 3 und 8. Muss ich diese 
beiden anschließen oder reicht es, wenn ich einen von beiden benutze?

Wenn ich max. 7 Segmente betreibe (ohne den Punkt) fließt somit ein max 
Strom von 7 x 20mA = 140mA. Das bedeutet meine Anzeige besitzt einen 
Widerstand von 57 Ohm.
Reicht es somit aus, vor der Anzeige in Reihe einen Widerstand zu 
schalten?
(vermutlich 86 Ohm?).

Und im letzten Schritt jeweils meine Segmente (A-G) an den Kollektor 
meines NPN Transistors und die 0V seite an den Emitter zu schließen.
An die Basis schließe ich über einen Vorwiderstand meinen IC an sodass 
an der Basis eine Spannung von etwa 0,6V ankommen?

Wäre der aufbau so möglich?


Transistor:
http://www.conrad.de/ce/de/product/154725/Bipolar-Standard-Leistungstransistor-BC549B-NPN-Gehaeuseart-TO-92-IC-200-mA-Emitter-Sperrspannung-UCEO-30-V?ref=searchDetail

Anzeige:
http://www.conrad.de/ce/de/product/160135/7-Segment-Anzeige-Kingbright-SA40-19SGWA-Zifferhoehe-100-mm-Gruen-21-mcd/?ref=detview1&rt=detview1&rb=1

Widerstand:
http://www.conrad.de/ce/de/product/407208/Metallschicht-Widerstand-866-axial-bedrahtet-0207-06-W-Thomsen-1-St?ref=searchDetail

von Karl H. (kbuchegg)


Lesenswert?

Raphael schrieb:

> könntet Ihr mir eventuell kurz aufzeichnen, wie und mit welchem
> bauteilen ich dann die 7 segmentanzeige anschließe?

IM Grunde auch nicht anders als du dir das gedacht hast.
Nur schaltest du eben nicht an der Anode, sondern an der Kathode. Und du 
nimmst keinen PNP sondern einen NPN.

Ob du so schaltest
1
     o +
2
     |
3
    Schalter
4
     |
5
    Verbraucher
6
     |
7
     o -

oder so
1
     o +
2
     |
3
    Verbraucher
4
     |
5
    Schalter
6
     |
7
     o -
ist ja für den Verbraucher (in deinem Fall eine LED der Anzeige) egal. 
UNterbrochened Stromkreis ist unterbrochener Stromkreis. Ob du die 
Unterbrechung an der +-Seite des Verbrauchers machst, oder an der 
--Seite des Verbrauchers ist für den Verbraucher egal.
Aber nicht für den der ansteuert!
Sitzt der Schalter auf der - Seite, dann ist das ein NPN Transistor und 
der kann ganz einfach angesteuert werden.
Sitzt der Schalter aber an der +-Seite, dann ist das ein PNP-Transistor 
(soweit stimmt das), aber wegen den Spannungspegeln kriegst du den nicht 
vom 5V Ausgang deines Arduino angesteuert.

> Ich habe noch ein 18,75V (3,1A) Netzteil zuhause.
>
> Die Anode an meiner Anzeige wäre dann der Pin 3 und 8. Muss ich diese
> beiden anschließen oder reicht es, wenn ich einen von beiden benutze?

Im Zweifel: beide anschliessen.

> Wenn ich max. 7 Segmente betreibe (ohne den Punkt) fließt somit ein max
> Strom von 7 x 20mA = 140mA.


Ja, ok.

> Das bedeutet meine Anzeige besitzt einen
> Widerstand von 57 Ohm.

Äh. Nein.
Das ist ungefähr die Argumentation: AUf der Landstrasse ist eine 
Beschränkung auf 70km/h. Wir sind aber zu viert, d.h. wir dürfen 280km/h 
fahren. Drück drauf.

Deine Anzeige verbaucht bei Vollbetrieb 140mA.
Punkt. Eine Aussage, welchem Widerstand das entspricht ist nicht 
sinnvoll, denn dieser Strom teilt sich ja auf die 7 LED-Pfade auf.

> Reicht es somit aus, vor der Anzeige in Reihe einen Widerstand zu
> schalten?
> (vermutlich 86 Ohm?).

Nein.
Jeder LED-Pfad kriegt seinen eigenen Widerstand, der für die 20mA 
berechnet wurde.

> Und im letzten Schritt jeweils meine Segmente (A-G) an den Kollektor
> meines NPN Transistors und die 0V seite an den Emitter zu schließen.
> An die Basis schließe ich über einen Vorwiderstand meinen IC an sodass
> an der Basis eine Spannung von etwa 0,6V ankommen?

Die Spannung stellt sich von selbst ein. Um die brauchst du dir keine 
Sorgen machen.
Aber: Transistoren sind stromgesteuert. D.h. ein kleiner Strom in die 
Basis lässt es zu, dass ein entsprechend höherer Strom durch die 
Collector-Emitter strecke laufen kann. Auf der willst du die 20mA haben. 
Daraus lässt sich jetzt mit dem hFe zurückrechnen, welchen Basisstrom es 
dazu mindestens braucht. Und mit dem Basisstrom lässt sich jetzt 
wiederrum der Basiswiderstand dimensionieren.

: Bearbeitet durch User
von m.n. (Gast)


Lesenswert?

Deine Beschreibung ist mir zu kompliziert. Ein UDN2981 kann Deine 
Segmente ansteuern. Die Vorwiderstände mußt Du ausrechen.
http://such002.reichelt.de/index.html?&ACTION=446&LA=446

von m.n. (Gast)


Lesenswert?


von Raphael (Gast)


Angehängte Dateien:

Lesenswert?

Danke für die antworten.

ich hab im Anhang mal kurz ne skizze erstellt.

Könntet Ihr euch die bitte mal anschaun?


...@m.n.:

Wenn du so nett wärst und mir kurz erklären könntest wie dieser IC 
funktioniert ohne, dass ich 5 Seiten durchlesen muss wäre ich dir sehr 
verbunden :)
eine kleine Skizze wie du ihn beschalten würdest um mein Problem zu 
beseitigen wäre sehr hilfreich :) _ denn Grundsätzlich bevorzuge ich 
auch einen IC als 7 oder 8 einzelne Transistoren und co.

Danke schon mal:)

von Raphael (Gast)


Lesenswert?

Heute noch wer in der Lage ein Auge drauf zu werfen? :) - nett gefragt 
:)

von Thomas (Gast)


Lesenswert?

Deine Schaltung aus der Skizze schaut so schon mal gut aus! Den 
Basisvorwiderstand könntest du evtl. noch etwas vergrößern, ist aber 
nicht so kritisch.

Der von m.n. vorgeschlagene IC würde nur bei einer Anzeige mit 
gemeinsamer-KATHODE (wie du sie erst zuverwenden wolltest) Sinn machen. 
So wie du es jetzt hast wäre eher der ULN2803 etwas für dich. Der 
enthält dann quasi deine 8 NPN-Schalter und kann direkt mit dem Arduino 
verbunden werden. Die LED-Vorwiderstände benötigst du aber trotzdem.

Gruß

von Mike (Gast)


Lesenswert?

Thomas schrieb:
> Deine Schaltung aus der Skizze schaut so schon mal gut aus!

Da wo die "8V" dranstehen, sehe ich zwei Stränge von LEDs, die ohne 
stromverteilende Vorwiderstände parallel geschaltet sind. Nur der 
Gesamtstrom wird über den 560 Widerstand in Schach gehalten, aber wie 
der Strom sich auf den beiden gezeichneten Zweige verteilen soll, 
schreibt ihm keiner vor.

Was ist daran gut?

von Thomas (Gast)


Lesenswert?

Mike schrieb:
> Da wo die "8V" dranstehen, sehe ich zwei Stränge von LEDs, die ohne
> stromverteilende Vorwiderstände parallel geschaltet sind. Nur der
> Gesamtstrom wird über den 560 Widerstand in Schach gehalten, aber wie
> der Strom sich auf den beiden gezeichneten Zweige verteilen soll,
> schreibt ihm keiner vor.
>
> Was ist daran gut?

Da die Zweige schon innerhalb der Anzeige so verschaltet sind und man da 
von aussen garkeinen Zugriff drauf hat, wird das so schon OK sein ;)

Gruß

von Raphael (Gast)


Angehängte Dateien:

Lesenswert?

Besten Dank für dein Feedback Thomas!

ich hab nochmal versucht die Schaltung mit dem von dir erwähnten ULN2803 
aufzuzeichnen.
Jedoch müsste ich bei meinem Aufbau jetzt wieder eine Anzeige mit 
gemeinsamer Kathode wählen.
Ist das richtig oder müsste ich das ganze anders anordnen.

Danke schon mal für deine Hilfe!!!

von Raphael (Gast)


Lesenswert?

Noch was vergessen...

Meine Annahme, dass mir IC1 5V ausgibt ist richtig oder?
Ebenso, dass IC2 mit diesen 5V als Eingangssignal arbeiten kann?

In meiner Zeichnung, habe ich die Masse miteinander verbunden, ist das 
richtig?

von Karl H. (kbuchegg)


Lesenswert?

Raphael schrieb:
> Besten Dank für dein Feedback Thomas!
>
> ich hab nochmal versucht die Schaltung mit dem von dir erwähnten ULN2803
> aufzuzeichnen.
> Jedoch müsste ich bei meinem Aufbau jetzt wieder eine Anzeige mit
> gemeinsamer Kathode wählen.

Nein. falsch,

Der ULN2803 stellt 8 SChalter dar, die bei Bedarf nach Masse 
durchschalten. Vergiss den 12V Anschluss vom ULN. Den kannst du nicht 
benutzen, um damit die Anzeige zu versorgen. Dieser Anschluss würde zum 
Einsatz kommen, wenn man zb Motoren ein/aussschaltet und die im ULN 
verbauten Dioden als Freilaufdioden einsetzt.

Also. Du brauchst eine Anzeige mit gemeinsamer Anode. Die kommt an die + 
Spannung. Die Segmentleitungen von der Anzeige werden vom ULN bei Bedarf 
mit Masse verbunden (und dann leuchtet dieses Segment)

von holger (Gast)


Lesenswert?

>ich hab nochmal versucht die Schaltung mit dem von dir erwähnten ULN2803
>aufzuzeichnen.

Ein ULN2803 kann nur gegen GND schalten. Der gibt keinen
aktiven High Pegel aus.

von Raphael (Gast)


Lesenswert?

okay danke.

dann geh ich mit meine 18,75V auf die gemeinsame Anode der 7 
segmentanzeige.

anschließend wenn ich z.b. segment A leuchten lassen will von diesem zu 
meinem 560 OHM Widerstand und anschließend zum Beispiel in pin 11 am 
ULN.

PIN 10 muss ich somit gar nicht versorgen an meinem ULN.

von Raphael (Gast)


Angehängte Dateien:

Lesenswert?

grob gesagt so? : siehe Anhang

von holger (Gast)


Lesenswert?

>grob gesagt so? : siehe Anhang

Ja, so geht das. Wenn deine Widerstände dann noch
0.5W abkönnen riechen die nicht so stark wie die
normalen mit 0.25W. Muss das mit den fast 19V so sein?
Ein 12V Netzteil wär besser geeignet.

von Raphael (Gast)


Lesenswert?

Du hast mich überzeugt^^
die 6€ für ein 12V netzteil mit 1 A sollt ich auch noch zusammen kratzen 
können :D

Somit sinkt mein Widerstand auf 220 Ohm :P

von m.n. (Gast)


Lesenswert?

Alles ein wenig durcheinander hier.

1. Welche Anzeige hast Du oder willst Du definitiv einsetzen? Gemeinsame 
Anode oder gemeinsame Kathode? Das ist wichtig für den gemeinsamen 
Nenner.

2. Unabhängig von der Anzeige selbst, rate ich Dir, keinen fertigen 
BCD-7-Segmentdekoder zu verwenden, sondern ein Schieberegister CD4094 
oder 74HC595. Dieses braucht nur drei Leitungen vom Arduino. Dazu gibt 
es etliche Beiträge hier im Forum.

von Raphael (Gast)


Lesenswert?

Verwendet wird eine 100mm große 7 Segment Anzeige mit gemeinsamer Anode.

Falls es keine anderen Vorteile gibt wie die Steuerleitung, welche man 
sich spart würd ich bei dem decoder bleiben da ich diesen schon zu hause 
habe :)

von Karl H. (kbuchegg)


Lesenswert?

möglicher Vorteil ist zb. dass du nicht daran gebunden bist, nur Ziffern 
auszugeben. Ohne Dekoder kannst du jedes Segment einzeln ansteuern, so 
dass auch Dinge wie zb ein einsames '-' (um zb anzuzeigen, dass es noch 
keine sinnvolle Anzeige gibt) möglich sind, bzw. überhaupt die Anzeige 
komplett abgeschaltet werden kann. Denk auch zb an die Möglichkeiten, 
die der µC mit einer blinkenden Anzeige hast, um Aufmerksamkeit zu 
kriegen.
Mit so einem Dekoder bist du an die Ziffern 0, 1, 2, ... 9 gebunden. Die 
gehen, aber auch nur genau diese.

Ob man dann ein Schieberegister nimmt, oder ob man die 7 
Segmentleitungen direkt an den Arduino gibt, hängt jetzt davon ab, ob du 
genügend Pins am Arduino frei hast. Wenn die Pins da sind und sonst 
nicht gebraucht werden, gibt es auch für das Schieberegister keinen 
Grund. Dann kommt der ULN direkt an den Arduino und gut ists.

Programmtechnisch spielt das so gut wie keine Rolle, wenn das Programm 
die 'Arbeit' des Dekoders auch noch mitmacht. Das ist einfach nur ein 
Arrayzugriff mehr, wobei das Array die Codes enthält, die an die Anzeige 
ausgegeben werden sollen. Die auszugebende Zahl ist Index in das Array. 
Fertig.

: Bearbeitet durch User
von m.n. (Gast)


Lesenswert?

Karl Heinz schrieb:
> möglicher Vorteil ist zb. dass du nicht daran gebunden bist, nur Ziffern
> auszugeben.

... und auch die '6' und '9' lesbar anzeigen kannst.
... und bei Bedarf die Schieberegister kaskadieren kannst, ohne eine 
Steuerleitung mehr zu brauchen.
... und bei Bedarf recht einfach per PWM die Helligkeit regeln kannst.

von Raphael (Gast)


Lesenswert?

coole sache so ein Teil :D

Jetzt test ich das ganze mal so und vill ändere ich es im anschluss 
noch:)

Nur kurz noch eine Frage zu meinem Decoder - der

CD4511BE

kann ich diesen eigentlich für mein vorhaben (siehe Skizze oben) 
verwenden?

laut meinem vorhaben, müsste dieser einen Spannungspegel von 5V 
ausgeben...
oder schaltet dieser ebenso nur auf Ground durch?

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
Noch kein Account? Hier anmelden.