Hallo ich bin gerade dabei mir beizubringen wie man einen MSP430149F (VDD 3,3V) Programmiert. Und dabei bin ich jetzt dabei eine Zählerfunktion zur schreiben die eine 7-Segmentanzeige ansteuert weil ich das für meine spätere Funktion benötige. Ich möchte später sehr viele 7-Segmentanzeigen multplexen. Ich habe dafür einen ...4511.. Decoder gefunden mit dem es auch ganz gut funktioniert. Leider muss bei diesem Decoder der LE (Latch Enable) Eingang immer auf high bleiben und zum abspeichern des neuen Wertes kurz auf low gesetzt werden. Jetzt meine Frage: gibt es einen 7-Segment Decoder bei dem der LE dauernd auf low stehen muß und nur zum Speichern des neuen Wertes kurz auf high gesetzt werden muß? Es vereinfacht das Programmieren eine bisschen. Vielen Dank schon mal. Markus
Öhm... also diese 4511, die ich hab, brauchen das nicht, LE ist da immer fest auf GND. Da wird der Wert an den Eingängen ohne irgend ne "Clock" sofort an die Ausgänge gelegt.
> Jetzt meine Frage: gibt es einen 7-Segment Decoder bei dem der LE > dauernd auf low stehen muß und nur zum Speichern des neuen Wertes kurz > auf high gesetzt werden muß? > Es vereinfacht das Programmieren eine bisschen. Du Armer. Lass LE auf low und du hast keine Probleme. Du könntest allerdinga den externen CD4511 ganz weglassen, wenn du stattdessen an 7 Ausgänge (ein Port) bereits einen dekodierten Wert aus einer internen 7-Segment-Decoder-Tabelle mit 10 oder 16 Positionen ausgibst. Das verkompliziert aber das Programmieren ein bischen :-( Wenn du viele 7-Segment-Anzeigen leuchten lassen willst, lohnt es sich, sich über Multiplexing Gedanken zu machen, dazu brauchst du aber Strom, viel mehr Strom also so ein CD4511-Ausgang liefern kann. Siehe http://dse-faq.elektronik-kompendium.de/dse-faq.htm#F.8.1
Hallo, Danke schon mal für Eure Antworten. @MeinEiner, > Öhm... also diese 4511, die ich hab, brauchen das nicht, LE ist da immer > fest auf GND. Da wird der Wert an den Eingängen ohne irgend ne "Clock" > sofort an die Ausgänge gelegt. das stimmt schon was du sagst, aber ich will ja mehrer 7-Segment Decoder parallel ansteuern und sie sollen ja nicht alle das Gleiche anzeigen, deshalb muß ich sie nacheinander ansteuern. @MaWin, > Du könntest allerdinga den externen CD4511 ganz weglassen, wenn du > stattdessen an 7 Ausgänge (ein Port) bereits einen dekodierten Wert aus > einer internen 7-Segment-Decoder-Tabelle mit 10 oder 16 Positionen > ausgibst. könnte ich machen, aber dann brauchen ich für eine Anzeige 7 Pins, mit dem Decoder nur 4 plus den LE Ausgang für jeden weiteren Decoder > Wenn du viele 7-Segment-Anzeigen leuchten lassen willst, lohnt es sich, > sich über Multiplexing Gedanken zu machen, dazu brauchst du aber Strom, > viel mehr Strom also so ein CD4511-Ausgang liefern kann. ja das stimmt, aber der MSP430 liefert auch nicht so viel Strom als das ich da so viele Anzeigen anschließen könnte. Ich wollte ja auch für jede Anzeige einen eigenen Decoder vorsehen den ich spreche nicht von 3 oder 4 7-Segment Anzeigen sonder von ca. 24 Stück Sorry hätte ich vielleicht vorher sagen sollen. :0) Gruß Markus
>ja das stimmt, aber der MSP430 liefert auch nicht so viel Strom als das >ich da so viele Anzeigen anschließen könnte. >Ich wollte ja auch für jede Anzeige einen eigenen Decoder vorsehen den >ich spreche nicht von 3 oder 4 7-Segment Anzeigen sonder von ca. 24 >Stück Transistorarrays wie der ULN2803 und der UDN2982A und das Zeitmultiplex-Verfahren würden Dir die Arbeit wesentlich erleichtern und das Platinenentflechten wäre ein Klacks. Die 7-Segment-Dekodierung würde ich auch im Controller machen, dann kannst Du nämlich auch Sonderzeichen ausgeben, die der 4511 nicht kann...
Hallo Trevel Rec, > Transistorarrays wie der ULN2803 und der UDN2982A und das > Zeitmultiplex-Verfahren würden Dir die Arbeit wesentlich erleichtern und > das Platinenentflechten wäre ein Klacks. Die 7-Segment-Dekodierung würde > ich auch im Controller machen, dann kannst Du nämlich auch Sonderzeichen > ausgeben, die der 4511 nicht kann... ich hätte vielleicht noch erwänen sollen, dass ich bezüglich der Elektronik noch ein bisschen in den Kinderschuhen stecke und auch im programmieren arbeite ich mich noch nach oben :o) Was ich jetzt aber rausbekommen habe das die beiden Bausteine, die du genannt hast, mit 5V arbeiten und der MSP430 nur max 3,3 Volt abgeben kann. Das würden bedeuten, dass ich auch wieder zusätzliche Bauteile benötige. Und da ich mit den 7-Segment Anzeigen nur Temperaturen anzeigen will, brauche ich auch keine Sonderzeichen. Trozdem vielen Dank für deine Hilfe Markus
Wenn es übersichtlich seien soll, würde ich 74HC595 + die 4511er empfehlen. An jeden 74HC595 passen dann 2 7-Segment Treiber. Durch zusätzliche 74HC595 beliebig erweiterbar. Die SPI ansteuerung der 595er ist auch in ein paar Zeilen erledigt.
Jörg S. schrieb: > Wenn es übersichtlich seien soll, würde ich 74HC595 + die 4511er > empfehlen. An jeden 74HC595 passen dann 2 7-Segment Treiber. Durch > zusätzliche 74HC595 beliebig erweiterbar. Warum dann nicht gleich einen 74HC595 pro Digit? Spart einen IC je 2 Digits ein. Peter
Hallo Jörg hallo Peter, wenn ich die Funktion 74HC595 richtig verstanden habe setzt er bei jeden Impuls auf den Eingang am parallen Ausgang nacheinander jeden Ausgangspin kurz auf high. Das spart auf jeden Fall pins am MSP430. Aber um wieder auf meine Ursprungsfrage zurückzukommen habe ich einen Decoder der einen low Impuls braucht das heißt ich müsste den Ausgang am 74HC595 noch negieren. Oder ihr kennt einen Decoder der ein kurzes high Signal als latch Signal braucht. Vielen Dank Markus
>wenn ich die Funktion 74HC595 richtig verstanden habe setzt er bei jeden >Impuls auf den Eingang am parallen Ausgang nacheinander jeden >Ausgangspin kurz auf high. Der 595er ist ein seriell parallel Wandler. Die schiebst z.B. 01101110 seriell rein und am 595 steht dann an den 8 Ausgangspins ebenfalls 01101110 an. >Aber um wieder auf meine Ursprungsfrage zurückzukommen habe ich einen >Decoder der einen low Impuls braucht ... Wie schon weiter oben steht, brauchst du keinen low-Impuls. Den Pin kannst du GENERELL auf low lassen.
Du sollst (wenn ich das richtig verstanden habe) die LED-Segmente direkt mit Vorwiderständenan die HC595 anschließen, je HC595 ein Digit. Die Bitmuster für die einzelnen Segmente schiebst Du der Reihe nach in die HC595 Schieberegister und wenn Du fertig mit schieben bist, gibst Du eine StoreClock und die Muster erscheinen an den Ausgängen und bleiben dort so lange, bis Du nach dem Neuladen der Register wieder eine StoreClock gibst. Die Dekodierung der Bitmuster machst Du im Controller über eine Tabelle. Das spart die 4511 Dekoder komplett. Du brauchst vom Controller 3 Leitungen zu den Schieberegistern: ShiftClock, ShiftData und StoreClock. Fertig.
Hallo Jörg und Travel Rec. ok, ich habe verstanden wie der HC595 funktioniert. Das hört sich sehr interessant an aber ich bin beim Programmieren noch nicht so weit dass ich mit Tabellen arbeiten kann und das ich serielle Daten ausgeben kann usw. Aber ich werde mit Hochdruck drann arbeiten ;o). Bis jetzt noch mal vielen Dank an alle die mir geholfen haben. Gruß Markus
Markus S. schrieb: > aber ich bin beim Programmieren noch nicht so weit dass > ich mit Tabellen arbeiten kann Eine Tabelle ist einfach nur ein (Byte-)Array mit Vorbelegung. In C wirst Du ohne Arrays nicht weit kommen. > und das ich serielle Daten ausgeben kann Die meisten MCs haben dafür ein SPI. Geht aber auch in Software. Mit dem Schiebebefehl (>> oder <<) kann man die Bits eines Bytes nacheinander auslesen. Peter
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.