Hallo Besucher, der Thread wurde 7,3k mal aufgerufen und enthält 45 Antworten

letzter Beitrag von DerSchatten am

Geht das überhaupt? 7-Segment-Anzeige an Drehschalter?

  • Da dies weniger mit dem C64 zu tun hat, wusste ich nicht wohin mit meiner Frage (Sorry ;( )


    Hab da mal eine Frage an unsere Elektro - Bastler (Genies).
    Ist es möglich, eine 7-Segment-Anzeige mit einem Drehschalter zu steuern? Wenn ja, wie? Und wenn ja, bleibt die Anzeige, auch nach Stromunterbrechung, als Beispiel auch auf der "6".
    Ich vermute das dies irgendwie über ein Eprom laufen müsste. - jedoch weiß ich leider nicht wie das geht... ?(
    Wäre super, wenn mir da jemand helfen könnte.


    Danke schon mal vorab.


    Gruß Manne

  • Moin,


    meinst Du mit Drehschalter einen "richtigen" mechanischen Drehschalter oder einen Dreh Encoder?
    Wenn Du einen richtigen Drehschalter hast, kannst Du tatsächlich ein entsprechend programmiertes Eprom
    verwenden und die Ausgänge vom Drehschalter auf die Adress Eingänge vom Eprom legen, Pullup Widerstände
    nicht vergessen und Steuerleitungen des Eproms wie /CS, /OE ggf auf Masse legen.
    Für Fall2 wirst Du an einem Mikrocontroller nicht vorbeikommen, der bringt auch gleich ein EEprom
    mit, um die letzte Einstellung nach Powerdown wieder herzustellen.
    Ich würde in jedem Fall einen Mikrocontroller verwenden, schneller Programmiert/Umprogrammiert
    und auch wesentlich flexibler als so ein olles Eprom. Ich hab noch ne alte Schaltung aus der Zeit vor
    Mikrokontrollern angehängt, da wurde eine Audioumschaltung über Drehschalter und Eprom gemacht.

  • Für 7-Segment Anzeigen gibt es Decoder. Aber in deinem Fall ist da wohl nicht so einfach, weil die Decoder meist einen BCD Eingang haben.
    Der Drehschalter hat aber lauter einzelne Bits. Mit einem EPROM könnte man hier schon was tricksen und es als Wahrheitstabelle missbrauchen.


    Edit, ja würde auch einen uController verwenden.

  • Du willst ja vermutlich nicht nur die Lämpchen der 7-Segment schalten sondern auch irgend eine Funktion.
    Dann benötigst du wie bereits erwähnt einen Drehschalter mit mehreren Ebenen.


    Je nachdem welche Ziffern du anzeigen möchtest, brauchst du sonst nur die entsprechenden PIN's der 7-Segment mit Spannung versorgen. Das geht recht einfach.

  • Wenn Du nur eine Ebene für die Anzeigefunktion hast und nur 0-7 darstellen musst, dann wäre noch ein Prioritätsencoder zusätzlich zu verwenden.
    https://m.reichelt.de/ICs-C-MO…SEARCH=priorit%25C3%25A4t


    Die diskrete Lösung ist aber Bastelaufwand.
    Eleganter wäre ein Microcontroller, wie oben schon beschrieben.

  • Du willst ja vermutlich nicht nur die Lämpchen der 7-Segment schalten sondern auch irgend eine Funktion.
    Dann benötigst du wie bereits erwähnt einen Drehschalter mit mehreren Ebenen.


    Je nachdem welche Ziffern du anzeigen möchtest, brauchst du sonst nur die entsprechenden PIN's der 7-Segment mit Spannung versorgen. Das geht recht einfach.

    Ja, klar - also Ziel ist es, dass die 7 Pins angesteuert werden, und die entsprechende Aufgaben durchgeführt werden (Es geht um eine "kleine" Steuerung an unserem Heizbrenner in der Firma). Da ich den Brenner nicht sehe, sollte die Anzeige des "Programms" in der Steuertafel zu sehen sein.
    Das mit den mehreren Ebenen am Drehschalter ist schon mal eine Lösung.
    Für alle Kritiker - den Einbau der Streuerung macht ein Fachmann, ich soll nur die "Vorarbeit" machen...
    Danke erst mal für die Tipps.


    Gruß Manne


    PS: Wenn dafür jemand einen kleinen Schaltplan hätte - wäre das Perfekt :search:

  • Ginge das ganze nicht einfacher, wenn man ein BCD Anzeigeelement nimmt, einen Drehregler der einzelne Impulse ausgibt und zwischen die beiden einen Zählerbaustein? dann noch zwei drei UND Verbindungen zum Reset und fertig ist die Laube?

    ?(?( Sorry - verstehe nur Bahnhof (bin halt Anfänger)...
    Ich hätte jetzt den Drehschalter dafür genommen Drehschalter
    Eingangsspannung sind 5V - wenn ich alles richtig verstehe - müsste der Drehschalter mit dem ATMEGA eigentlich alles machen was ich möchte - und das unter 20.- Euro. Oder hab ich da (mal wieder) einen Denkfehler?


    Wichtig ist auch, dass das Programm welches gerade läuft am nächsten (nach Stromunterbrechung) morgen wieder angezeigt.

  • ich finde das ist ein klassisches Beispiel für Dinge die man nicht mit dem Arduino / Atmega / Pic usw. Microcontroller machen sollte, weil man es nicht muss.


    Ein Micro-Controller ist eine Zustandsmaschine, die bei einem Reset ihren Zustand erstmal vergisst und wenn sie aus irgendwelchen Gründen nicht wieder an die richtige (alte) Stelle in ihrem Betriebsprogramm zurückfindet, beginnt das große Rätselraten wo sie sich denn nun befindet. In den Mikrocontroller sieht man von aussen sowenig hinein wie in den Brenner .... Und da alle Signale im Prozessor extrem hochfrequent sind (wenn er überhaupt mit seinem Taktgeber anschwingt), ist es nix mit "mal eben mit dem Multimeter die Pegel testen".


    In der Sprache der Kernenergie-Sicherheit: der Mikroprozessor ist von Haus aus weder eigensicher noch fail-safe. Das müsste man ihm erst mühsam beibringen. Er hat wesentlich mehr wesentlich schwieriger zu überschauende Fehlermöglichkeiten als eine diskrete Schaltung, schon allein durch die hohe Integrationsdichte.


    Ein Drehschalter, der durch seine mechanische Stellung und mech. Trägheit sein Gedächtnis physisch verkörpert ist m.E. die mit weitem Abstand weitaus bessere Lösung, vor allem wenn nur deterministische Bauteile (einige wenige Relais, einige wenige Transistoren ..) dann zum Stellglied führen. Nicht abertausende wie in einem Mikrochip!


    Edit: beim Drehschalter müsste man sich Gedanken machen, dass er nicht prellt und / oder kurzzeitig zwei Heizprogramme gleichzeitig aktiviert... nicht dass die Steuerung danach sich "verschluckt" ...



    Zitat von Lysosom

    Ginge das ganze nicht einfacher, wenn man ein BCD Anzeigeelement nimmt, einen Drehregler der einzelne Impulse ausgibt und zwischen die beiden einen Zählerbaustein? dann noch zwei drei UND Verbindungen zum Reset und fertig ist die Laube?

    Ja. Der Drehregler den der Fragesteller verlinkt hat gibt m.E. aber keine Impulse aus - anders als z.b. der optische Dreh-Impulsgeber in einer alten PC-Maus - , sondern verbindet einen von 12 im Halbkreis befindlichen Kontakte mit einem Schleifer. Da wäre der o.g. Prioritätsencoder das Bauteil der Wahl, anstatt des Zählers 74LS193 o.ä..

  • Die Frage wäre halt, was genau willst du denn alles anzeigen? Alle Ziffern von 0 - 9. Oder nur einige davon?

    Planerisch sind es derzeit 6 Programme. Da wir aber vor einem Jahr noch 2 Programme hatten - jetzt sind es 6 gehe ich davon aus, dass wir auf max. 10 Programme (also 0-9) kommen werden. Das Problem ist, dass wir heute noch nicht absehen können, in wie weit sich unsere Produktpalette der zu trocknenden Kunst- und Metallstoffe noch entwickeln wird. Bislang kommen wir mit einem "Umschalter"klar, indem wir von Hand eintragen, welcher Trocknungsprozess aktuell läuft. Problem dabei ist der Mensch! Einmal vergessen einzutragen, und die Teile könnten ggf. beschädigt werden. Also müssen wir derzeit alles doppelt kontrollieren.


    Es gibt Alternativen seitens des Ofenbauers, jedoch in Dimensionen die wir uns als 4 - Mann Betrieb niemals leisten können :(

  • Die Frage ist ja auch was bringst Du an Kentnissen bezüglich Programmiersprache mit..? Nützt ja noch nicht viel den Drehschalter an die GPIOs vom Controller zu hängen.
    Welcher art sollen die Augänge der Schaltung sein, willst Du einen Transitor ansteuern oder ein Relais anziehen..? Dann brauchst Du natürlich auch geeignete Ausgangstreiber,
    der AVR bringt ja nur geringen Strom bzw. nur eine geringe Spannung. Paar mehr Details wären von Vorteil..

  • Ginge das ganze nicht einfacher, wenn man ein BCD Anzeigeelement nimmt, einen Drehregler der einzelne Impulse ausgibt und zwischen die beiden einen Zählerbaustein? dann noch zwei drei UND Verbindungen zum Reset und fertig ist die Laube?

    Geht noch einfacher: Man besinnt sich auf die Bauelemente, die immer sicher und immer einfach/günstig zu haben sind. In diesem Fall sind es Dioden und Widerstände. Am Drehschalter muss eine Umschaltung frei sein, die für die Verteilung der Versorgungsspannung der Segmente verwendet wird. Je nachdem, welches Dioden/Widerstandspäärchen bestückt ist, leuchtet ein Segment oder eben nicht. So kann man auch Buchstaben oder andere Symbole anzeigen, die sonst ein xx147-Encoder nicht kennt.


    Jens