www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Bitte um Hilfe: Schaltung 7-Segment (Multiplexing +Treiber)


Autor: Jhoropopo (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen,

Ich möchte Euch um Rat und Hilfe bei meinem ersten uC-Projekt bitten. 
Für eine Funkuhr brauche ich ein 6-stelliges 7-Segment-Display 
anzusteuern. Ich möchte auf die bewährte Idee von Multiplexing 
aufsetzen, wie bei 
http://www.mikrocontroller.net/articles/DCF77-Funk....

Software ist kein Thema bei mir, bei Hardware habe ich ein paar mehr 
Schwierigkeiten. Meine Grundvorstellung habe ich in der angehängten 
Schaltung dargestellt (sorry für die Handzeichnung, Eagle muss ich noch 
lernen). Kurze Erklärung:

* Damit die Grafik einfacher ist, zeige ich nur 2 aus 6 Ziffern. Ich
  will jedes Segment einzeln ansteuern können, daher ist ein CMOS 4511
  als Treiber ausgeschlossen. Aber ein Treiber muss da sein, da ich noch
  andere Sachen im Projekt vorhabe, die auch Strom brauchen werden.

* Es handelt sich um 7-Segment-Displays mit gemeinsamen Kathode;
  die Vorwiderstände schalte ich also zwischen Treiber und Anoden.

* Fürs Multiplexen benutze ich pnp-Transistoren in der Basisschaltung
  (Basiswiderstand = 10k). Wenn bei enable_X 5V liegen, dann soll der
  Transistor Strom erlauben, sonst sperren.  Mit enable_1 bis _6 mache
  ich also das Multiplexen.


Trotz aufwändiger Forum-Recherche bleiben einige Fragen noch offen:

* Was für Treiber würde hier passen? Ich habe vor, bis zu 30-40 mA pro
  Segment  zu benutzen. Ich habe die Vermutung, dass ein Darlington-
  Array ULN2803 passend sein könnte, bin mir aber nicht sicher.

* Passt die Konfiguration der Transistoren? Darüber hinaus überlege ich
  mir, nicht einzelne Transistoren zu benutzen sondern ein Transistor-
  Array (IC). Ich kenne aber keinen solchen Bauteil.

Ich wäre für Hilfe und Anmerkungen seeehr dankbar :)
Viele Grüsse
Jhoro

Autor: rayelec (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo! Das ist alles im Prinzip i.O so. Falls du Anoden treiben willst, 
brauchst du nicht den ULN280x, sondern den UDN2981 (oder TD62783 von 
Toshiba). Hättest Du ein Common-Anode-Display, könntest du den ULN2803 
nehmen, dann müsten aber die Digit-Treiber PNP-Transistoren sein.

Gruss
rayelec

Autor: Matthias Lipinsky (lippy)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sieht gut aus. Das funktioniert.
Was für einen Treiber wilslt du da nehmen?

Wenn der Impulsstrom 20mA nicht überschreitet, kannst du den Treiber 
auch weglassen. zB falls du low-current 7-Seg nimmst. (HDN1075O)

Du kannst allerdings als Spaltentreiber auch pnp Transistoren in 
Kollektorschaltung nehmen, damit sparst du dir die Vorwiderstände für 
diese Transistoren...

Autor: Jhoropopo (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@rayelec

Ich treibe definitiv die Anoden, also schaue ich mir im Detail das 
Datenblatt von UDN2981


@Matthias

> Was für einen Treiber wilslt du da nehmen?

Das war eigentlich meine Frage gewesen. Aber rayelec meint, UDN2981 
sollte passen.

> Wenn der Impulsstrom 20mA nicht überschreitet, kannst du den Treiber
> auch weglassen. zB falls du low-current 7-Seg nimmst. (HDN1075O)

Dadurch dass ich 6 Displays multiplexen muss, gehe ich davon aus, dass 
sie mit 20mA nicht hell genug sein werden. Also ich werde mehr als 20mA 
brauchen. Aber auch wenn die 20mA i.O. wären, würde das 140mA 
aufaddieren. Ich will aber mehrere Sachen ansteuern, nicht nur die, die 
in der Schaltung gezeigt wurden. Also ist der Treiber notwendig.

> Du kannst allerdings als Spaltentreiber auch pnp Transistoren in
> Kollektorschaltung nehmen, damit sparst du dir die Vorwiderstände für
> diese Transistoren...

Danke für den Hinweis! Geht es auch mit einer IC? Dann brauche ich keine 
6 Bauteile sondern nur einen!


Danke für Eure extrem schnelle Antworten!
Jhoro

Autor: Matthias Lipinsky (lippy)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Danke für den Hinweis! Geht es auch mit einer IC? Dann brauche ich keine
>6 Bauteile sondern nur einen!

Ja, nimm drei Portpins und gehe auf einen 74HC138. Der hat acht 
ausgänge. (also max acht Spalten). Jeder Ausgang ist LOW-Aktiv und 
treibt DIREKT (ohne R_vor) die Basis eines pnp-Transistor, dessen 
Kollektor! auf GND und Emitter! an den Kathodenanschlüssen liegt.
Das funktioniert immer bestens..

Aso. falls du die sechs Transistoren weglassen willst. Wird schwer. Evtl 
einen zweiten Treiber a la UDN..
Aber ich würde eher die Transistoren einsetzen. BC857, was will man 
mehr...

Autor: Jhoropopo (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Ich habe nochmals die Schaltung gezeichnet, so wie ich jetzt die Sache 
verstehe. Ist sie so richtig?

Meine einzige Frage: BC857 ist ein SMD-Transistor. Kann ich stattdessen 
einen BC 636/640 nehmen? Laut 
http://www.mikrocontroller.net/articles/Standardbauelemente hält so ein 
Transistor bis zu 500 mA, was bei mir ausreichen sollte.

Zwischendurch habe ich übrigens entdeckt, dass hier 
http://www.mikrocontroller.net/mc-project/Pages/Pr... 
die Bauteile ULN2803 und UDN2981 benutzt werden. Sieht so aus, dass die 
LEDs mit ULN2803 getrieben werden und dann die Transistoren mit UDN2981. 
Ich kann aber nicht erkennen, ob die 7-Segment-Displays gemeinsame 
Kathode oder gemeinsame Anode haben. Aber meine ideale Lösung würde so 
ähnlich aussehen: die Displays + Widerstände + 2 ICs (eine zum Treiber, 
andere fürs Multiplexen)

Viele Grüsse
Jhoro

Autor: Holger Krull (krulli) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Jhoropopo wrote:
> Sieht so aus, dass die
> LEDs mit ULN2803 getrieben werden und dann die Transistoren mit UDN2981.
> Ich kann aber nicht erkennen, ob die 7-Segment-Displays gemeinsame
> Kathode oder gemeinsame Anode haben.
Es steht sogar dran, dass es gemeinsame Anoden sind... (CA)

Autor: Jhoropopo (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Es steht sogar dran, dass es gemeinsame Anoden sind... (CA)

Ups, als Laie habe ich das übersehen...

Heisst das also bei mir, dass ich die Anoden mit UDN2981 treiben kann 
und die Transistoren mit ULN2803 schalten kann?

Danke!!

Autor: Matthias Lipinsky (lippy)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die Schaltung sieht doch gut aus. Klar kannst du auch andere 
Transistoren nehmen, wenn sie von ihren Daten passen.

Autor: Jhoropopo (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Könnte ich also statt einzelnen Transistoren einen ULN2803-Bauteil 
verwenden? Das wäre aus meiner Sicht einfacher zu schalten, auch wenn 
ein bisschen teurer.

Jhoro

Autor: Matthias Lipinsky (lippy)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Klar geht das auch.

Autor: Andreas K. (a-k)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Obacht mit den Spannungen, nachrechnen empfohlen. Der UDN kommt an den 
Ausgängen nicht annähernd an die Versorgungsspannung ran (=> Datasheet) 
und an der Kathode geht bei dieser Schaltung noch Ube der Transistoren 
weg, so dass es bei 5V für die LEDs knapp werden könnte.

PS: ULN statt BC an der Kathode macht's da auch nicht besser, im 
Gegenteil, geht noch mehr weg.

Autor: Josef Warta (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
es geht doch noch einfacher mit einem IC beispielsweise von AMS:
http://www.austriamicrosystems.com/03products/prod...
AS1107 kann direkt eine 8 stellige 7-segment Anzeige ansteuern. Es 
muessen nur noch die Daten ueber SPI in den IC getaktet werden und man 
spart sich das gesamte Multiplexen und Decodern.

Und kostenlose Muster kann man direkt ueber die Website anfordern.

Autor: Jhoropopo (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Obacht mit den Spannungen, nachrechnen empfohlen. Der UDN kommt an den
> Ausgängen nicht annähernd an die Versorgungsspannung ran (=> Datasheet)
> und an der Kathode geht bei dieser Schaltung noch Ube der Transistoren
> weg, so dass es bei 5V für die LEDs knapp werden könnte.

> PS: ULN statt BC an der Kathode macht's da auch nicht besser, im
> Gegenteil, geht noch mehr weg.

So wie ich das sehe, brauche ich dann aber nur kleinere Vorwiiderstände, 
oder? Die Erfahrung hatte ich schon mit dem CMOS 4511 gemacht, der kann 
nur 4,4 V oder so an den Ausgang schalten. Das reicht aber für meine 
LEDs vom 7-Segment-Display

Jhoro

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.