Ansteuerung von 7-Segment-Anzeigen (Hardware)

Das heisst: Shiftout... macht alles und wäre somit ein mächtiger Befehl, der den Schaltaufwand auf zwei Pins reduziert. Wer von Euch hat's gewusst?


Grüsse und gute Nacht (endgültig).

Michael
 
Ansteuerung einer 8-stelligen 7-Segment-Anzeige

Hallo zusammen,

ich hab mal einen kleinen Schaltplan gebastelt.
7Seg_FAQ_3.png

Es handelt sich um eine 8-stellige Multiplex-Anzeige mit 7-Segment-Displays.

Die Displays können bei der Schaltung auch die größeren 57mm hohen sein.
In der Schaltung sind Displays mit gemeinsamer Anode eingesetzt. Wenn
man Anzeigen mit gemeinsamer Kathode verwenden möchte, dann müssen
lediglich die beiden Treiberbausteine gegeneinander ausgetauscht werden.

Die Formel für die Berechnung der Vorwiderstände ist mit im Plan drin.

Ich hoffe, es hilft einigen Leuten weiter.

Es ist mittlerweile wieder ein Beitrag erschienen der zu diesem Thema paßt.
Er ist hier...
7-Segment-Display Beispielschaltung Multiplex (z.B. für Uhren)
zu finden.

Gruß
Dino
 
T

Hallo & toller Beitrag Dino,

ich bin wirklich froh das ich hier im Forum gelandet bin nach einer lange Google suchen über dieses Thema.

Nach einer Leselektüre, wird einem etwas klarer im Bezug Ansteuerung 7-Segment anzeigen und anderen wichtigen Sachen.
Ich kann nur sagen Dino Hut ab, und hoffe das du noch lange diesem Forum zu Seite stehen wirst!

De noch möchte ich das Thema wider aufgreifen, und eine Frage stellen:
Ist es möglich Max7221 für die SC40-19SRWA anzeige mit ULN2803 und UDN2981 zu verschalten?

Die 4 x SC40-19SRWA & 2x Max7221 habe ich schon seit einem Jahr liegen, und hatte bis jetzt wenig Zeit was zu unternehmen wegen meiner Arbeit, und möchte meinem Hobby wieder nachgehen.

Würde mich über eine Antwort freuen.

Guss
RoTo
 

Anhänge

  • SC40-19SRWA.pdf
    130,5 KB · Aufrufe: 34
  • MAX7219-MAX7221.pdf
    459,9 KB · Aufrufe: 28
Hi RoTo

ich bin wirklich froh das ich hier im Forum gelandet bin nach einer lange Google suchen über dieses Thema.

Nach einer Leselektüre, wird einem etwas klarer im Bezug Ansteuerung 7-Segment anzeigen und anderen wichtigen Sachen.
Ich kann nur sagen Dino Hut ab, und hoffe das du noch lange diesem Forum zu Seite stehen wirst!
Danke für die Blumen :) Ich hoffe mal es bleibt immer etwas Zeit fürs Hobby
übrig ;)

De noch möchte ich das Thema wider aufgreifen, und eine Frage stellen:
Ist es möglich Max7221 für die SC40-19SRWA anzeige mit ULN2803 und UDN2981 zu verschalten?

Die 4 x SC40-19SRWA & 2x Max7221 habe ich schon seit einem Jahr liegen, und hatte bis jetzt wenig Zeit was zu unternehmen wegen meiner Arbeit, und möchte meinem Hobby wieder nachgehen.
Tja ... Nach Datenblatt ist der MAX7221 für Anzeigen mit
... "Drive Common-Cathode LED Display" ... also mit gemeinsamer Kathode
gedacht. Außerdem kümmert er sich selber mit den Ausgangstreibern um
den Segmentstrom. Man benötigt also keine Widerstände für die Segmente.
Die Treiber werden also keine Gegentaktausgänge haben die man für einen
definierten Digitalpegel verwenden kann. Soweit die Analyse des Zustands.

Nun die Synthese ...
Vcc--SEGx-->|---DIGn--GND
Die Segment-Ausgänge würde ich über 1-4,7k Widerstände (was grad so da
ist) gegen GND schalten. Die Digigit-Ausgänge mit identischen Widerständen
gegen Vcc. Damit erzeugt man sich erstmal definierte Pegel an den Ausgangs-
Pins. Nun könnte man die Treiberbausteine theoretisch an die Pins hängen.
Theoretisch .... Aaaaaabbbbbeerrrr ... :D :p
Die SEGx-Ausgänge schalten nach Vcc ein (also bei Vcc aktiv). Da könnte
man problemlos einen der Treiber dransetzen.
Die DIGn-Ausgänge für die Stellen schalten aber wegen Common-Cathode
nach GND ein (also aktiv-Low gegen GND) um die Ausgänge mit einem der
Treiberbausteine zu verstärken müßte man Inverter zwischenschalten da die
ULN/UDN ja mit Vcc einschalten. Also genau umgekehrt.

Mal schnell überlegen .... der Einfachheit halber nen IC mit 8 Invertern ...
8Bits findet man bei Bustreibern ... der 74541 ist nicht invertierend ...
Den kenn ich aus dem Kopf ... evtl existiert auch ein invertierender ... blätter..
such ...


Nimm den 74540. Schau dir mal das Datenblatt an. Den kann man
wegen der schön sortierten Pins direkt ohne Kabelgewusel gegen einen der
Treiber ULN... oder UDN... schalten.
Ungefähr verstanden wie ich es meine ? ...

1. Mit PullUp- und PullDown-Widerständen an den Ausgängen für definierte
Logikpegel sorgen.
2. Die Digit-Ausgänge über nen 74540 invertieren (such dir aus ob HCT,LS,...)
3. Die Treiberbausteine dran wie man sie braucht (gemeinsame Anode oder
Kathode).
4. Jetzt benötigst du aber Segmentwiderstände weil du keine Stromregelung
mehr hast.

Denn viel Spaß beim basteln ... ;)

Gruß
Dino
 
T-Ja

Hallo Dino,
erstmals Tausend dank für die mühe :) ich wäre gerne dein Schüler!
Das ist was anderes wie ewig Schalt-Anlagen-Bau und die Stromlaufpläne da für zu zeichnen.
Na ja wie man so schön sagt jedem das seine, wenn ich so einen Lehrer wie du :adore: gehabt hätte, wer weiß, vielleicht wäre aus mir auch was besseres geworden.

Und jetzt zum Thema:
Bis lang habe ich ich mit Max und paar LED's für mich was zusammen "gewurstelt" :yes4: , denn der Max übernehmt natürlich einige Dinger, wie z.b. PWM mit 16 stufen, keine Widerstände wie du es schon erwähnt hast, und bei den 7-Segment anzeige das mal 8 (0-7 DIG's) auch wenn die IC gerade das gegen teil vom, wie man so schön sagt: > nicht günstig ist <
Mit Schieberegister & Multiplex, hatte ich nix am Hut gehabt bis lang muss jetzt auch nicht sein, aber mit schiebe-registern IC?
De noch möchte ich die Teile in Anspruch nehmen auch wenn es CA Ansteuerung günstiger wäre, wenn ich so hier im Forum nachlese:mad:

Bei aller Liebe danke.:adore: :adore: :adore: :adore: :adore: :adore:


Sorry muss beendden
 
große 7 Segment Anzeige Steuerung

Hi ich habe ein Problem und vielleicht kann mir irgendjemand helfen:

Ich möchte eine große Preisanzeige bauen , ähnlich wie bei den Tankstellen, ( also ungefähr 24 große 7 Segment-Anzeigen sollen durch PC ( USB oder RS232 )gesteuert werden).

Meine 7 Segment-Anzeigen sind 7" ( 100x180 mm) groß hier einpaar Daten:

U=12v
20 Led pro Segment.
I=60mA pro Segment
I Dezimalpunkt=15mA
I total= 435 mA
-----------------------------------------

Kann mir jemand sagen, welche Mikrocontrollern sind geeignet für sowas? oder könnt ihr mal kurz die Bauteile auflisten die ich brauchen werde .

Ich studiere Maschinenbau und was an die Elektronik angeht bin leider nicht so fit :confused:

Gruß Nxitimi
 
Hi
In der Elektrik ist es oft genau so wie in der Mechanik: du brauchst ein Mengengerüst. Deinen Angaben konnte ich nicht so ganz folgen, 20 LED pro Segment halte ich für sehr viel.... 60 mA für ein Segment auch, denn so eine 7 Segment-Anzeige hat wie der Name schon sagt 7 Segmente, also 140 LED und im ungünstigsten Fall sind auch 7* 60mA, also 420 mA. Bei einer gemultiplexten Anzeige ist das im Rahmen deiner Spezifikation.
24 LED -Ziffern zu multiplexen, da reicht ein Controller allein nicht aus. Ein Atmega 16 hat 32 IO, davon brauchst du mindestens 1 für externen Takt, 2 für die Kommunikation und den Reset solltest du auch nicht beschalten. Übrig bleiben also 28 verwendbare IO. Nun kommen wir mal zu Bauteilen, die eng mit Controllern arbeiten und genau für solche Zwecke bestimmt sind. Ich kenne allerdings nur die "alte" 74LSxx Technik. So könntest du 3 74LS244 Treiber dazu benutzen, schon mal deine 24 Ziffern in 3 Gruppen anzusteuern. Das erledigt der CS-Pin.(Chip-Select) Damit und ein paar zusätzlichen Leistungstreibern köntest du z. B. die gemeinsamen Anoden- oder Kathodenansteuerung ausführen. Die benötigten IO reduzieren sich damit auf 8 +3 = 11. also weniger als die Hälfte der Ziffern. Für die Segmente könntest du einen BCD zu 7Segment-Decoder (74LS47) einsetzen. Dadurch reduzieren sich die IO's für die Segmente von 7 auf 4. Schon bist du bei 15 IO-Pins. Damit bist du im Bereich eines Atmega8/Atmega88, der dir 22 IO's bietet. Sicherlich gibt's aber auch modernere IC's. Mal sehen, was die Gemeinde noch so weiß....
Gruß oldmax
 
Hi Markus,

nachdem mein Asus EeePC grade mal wieder ohne Vorwarnung von der
Akkukraft verlassen wurde :mad: :banghead: :viking: wird der bei mir wohl
nicht mehr lange leben :eek: :p Mein Acer hat selbst nach 5 Jahren noch
2,5h Laufzeit :D

OK ... Also alles nochmal :eek: jetzt in Kurzform ...

Nimm nen Mega32. Ein Port mit Treiber-IC auf die Segmente (= 8 Pins am Mega)
Dann die Stellen (24 Stück) in Gruppe Teilen. zB 3 x 8 Stellen. Dann nimmst du
3 Stk CD4028 CMOS ICs. Das ist ein BCD-zu-Dezimal-Dekoder. Eingänge A,B,C
werden parallel von allen 3 verbunden. Mit den Ausgängen Q0-Q7 steuerst du
jeweils 8 Stellen an (auch über Treiber-ICs). Die Ausgänge Q8+Q9 bleiben
frei (DAS IT WICHTIG!). Mit Eingang D selektierst du einen der drei Bausteine
mit Low (0) an dem Eingang. Dafür benötigst du dann 3+3=6 Pins am Atmel.

Macht zusammen für ne 24stellige 7Segment also mit Dezimalpunkt ...
8+3+3=14Pins :D Geht doch mit einem Mega ;) sogar mit nem Mega8

EDIT: und damit ihr euch den Kopf nicht so zerbrechen müßt ...
Hier ist die Lösung für ne Anzeige mit gemeinsamer Kathode :
7Segm-Display_24stellig.png
Viel Spaß beim basteln :D

Gruß
Dino
 
Zuletzt bearbeitet:
Hallo Dino,
vielleicht habe ich da jetzt noch nicht richtig durchgeschaut.
Aber für mich sieht das so aus, als wäre immer nur eine der 24 Stellen an. Da glaube ich aber, dass mit einem Duty Cycle von 1:24 keine vernünftige Helligkeit zu erzielen sein wird. Oder man müsste seeeeehr viel Strom durch die LEDs schicken

HBA
 
Hi HBA,

Aber für mich sieht das so aus, als wäre immer nur eine der 24 Stellen an.
da hast du recht ;)

Da glaube ich aber, dass mit einem Duty Cycle von 1:24 keine vernünftige Helligkeit zu erzielen sein wird. Oder man müsste seeeeehr viel Strom durch die LEDs schicken
Das wär nen Versuch wert :D
Wir haben hier bei 5mA Dauerstrom schon recht gute Helligkeiten ...
Na mal sehen ...
5mA x 24 => 120mA Strom durch die LEDs. Naja OK ... Dafür sind es nur
sehr kurze Zeiträume :rolleyes:
Wenn das Programm festhängt und nur eine Anzeige an ist dann könnte das
im Silizium-Himmel enden. Aber bei nem funktionierenden Multiplexing sollte
das klappen. Evtl noch etwas weiter mit dem Strom runter. Ist halt ein wenig
ausprobieren dran.

Aber in gewisser Weise hast du da schon recht. ;)

Gruß
Dino
 
Hi
In der Elektrik ist es oft genau so wie in der Mechanik: du brauchst ein Mengengerüst. Deinen Angaben konnte ich nicht so ganz folgen, 20 LED pro Segment halte ich für sehr viel.... 60 mA für ein Segment auch, denn so eine 7 Segment-Anzeige hat wie der Name schon sagt 7 Segmente, also 140 LED und im ungünstigsten Fall sind auch 7* 60mA, also 420 mA. Bei einer gemultiplexten Anzeige ist das im Rahmen deiner Spezifikation.
24 LED -Ziffern zu multiplexen, da reicht ein Controller allein nicht aus. Ein Atmega 16 hat 32 IO, davon brauchst du mindestens 1 für externen Takt, 2 für die Kommunikation und den Reset solltest du auch nicht beschalten. Übrig bleiben also 28 verwendbare IO. Nun kommen wir mal zu Bauteilen, die eng mit Controllern arbeiten und genau für solche Zwecke bestimmt sind. Ich kenne allerdings nur die "alte" 74LSxx Technik. So könntest du 3 74LS244 Treiber dazu benutzen, schon mal deine 24 Ziffern in 3 Gruppen anzusteuern. Das erledigt der CS-Pin.(Chip-Select) Damit und ein paar zusätzlichen Leistungstreibern köntest du z. B. die gemeinsamen Anoden- oder Kathodenansteuerung ausführen. Die benötigten IO reduzieren sich damit auf 8 +3 = 11. also weniger als die Hälfte der Ziffern. Für die Segmente könntest du einen BCD zu 7Segment-Decoder (74LS47) einsetzen. Dadurch reduzieren sich die IO's für die Segmente von 7 auf 4. Schon bist du bei 15 IO-Pins. Damit bist du im Bereich eines Atmega8/Atmega88, der dir 22 IO's bietet. Sicherlich gibt's aber auch modernere IC's. Mal sehen, was die Gemeinde noch so weiß....
Gruß oldmax

Hi Oldmax,

wenn ich mich nicht irre die Daten sollten so sein,

hier mal den Link , wo ich die gekauft habe

http://store.qkits.com/moreinfo.cfm/MXA003

was ist eigentlich besser multiplex oder statisch ich mein im Bezug aufs Lebensdauer der LEDs?

Gruß Nxitimi
 
was ist eigentlich besser multiplex oder statisch ich mein im Bezug aufs Lebensdauer der LEDs?
Multiplexen mit gleicher Helligkeit wie Normalbetrieb mit Nennstrom ist sicherlich wesentlich schlechter. Außerdem besteht immer die Gefahr, dass Multiplexen mal unterbrochen wird und eine dann dauerhaft leuchtet. Dann kann es ganz schnell gehen. Nimmt man aber wegen der Vorteile eigentlich immer in Kauf.

HBA
 

Über uns

  • Makerconnect ist ein Forum, welches wir ausschließlich für einen Gedankenaustausch und als Diskussionsplattform für Interessierte bereitstellen, welche sich privat, durch das Studium oder beruflich mit Mikrocontroller- und Kleinstrechnersystemen beschäftigen wollen oder müssen ;-)
  • Dirk
  • Du bist noch kein Mitglied in unserer freundlichen Community? Werde Teil von uns und registriere dich in unserem Forum.
  •  Registriere dich

User Menu

 Kaffeezeit

  • Wir arbeiten hart daran sicherzustellen, dass unser Forum permanent online und schnell erreichbar ist, unsere Forensoftware auf dem aktuellsten Stand ist und der Server regelmäßig gewartet wird. Auch die Themen Datensicherheit und Datenschutz sind uns wichtig und hier sind wir auch ständig aktiv. Alles in allem, sorgen wir uns darum, dass alles Drumherum stimmt :-)

    Dir gefällt das Forum und unsere Arbeit und du möchtest uns unterstützen? Unterstütze uns durch deine Premium-Mitgliedschaft!
    Wir freuen uns auch über eine Spende für unsere Kaffeekasse :-)
    Vielen Dank! :ciao:


     Spende uns! (Paypal)