7 Segment anzeige zurücklesen

Gast #2572177
Tach zusammen,

mein Arbeitskollege und ich grübeln gerade darüber, wie man mathematisch 
herleiten kann, welche Segmente man mindestens auslesen muss um alle 
Zahlen von 0 - 9 zurücklesen zu können. Wir sind durch rumprobieren 
darauf gekommen, dass Segement c und d nicht nötig sind um die Zahlen 
von 0 - 9 eindeutig zu bestimmen. Aber wie könnte man da mehr 
systematisch rangehen um das herauszufinden?

Gruß

Nils
Gast
Bin kein Mathematiker, aber ein einfacher "Algorithmus" wäre, angesichts 
der kleinen Datenmenge, immer ein Bit wegzulassen, dann zu prüfen, ob 
sich einer der 10 Datensätze wiederholt. Wenn ja: Bit wird benötigt, 
anderes Bit weglassen und erneut probieren. Wenn nein, diesen Zustand 
als neuen Ausgangszustand annehmen und um ein weiteres Bit kürzen. Bis 
diese Aktion mit jedem der ursprünglichen Bits keinen Erfolg mehr 
bringt, dann sind nur die übrig, die nicht redundant sind.
Gast
War ja nur nach dem Prinzip gefragt. Macht doch keinen Unterschied wie 
die Anzeige geartet ist...

KV Diagramm ist schon mal ein Hinweis. Schau ich mir mal an. Schönen 
Dank!
Persönliche Seite
Vielleicht laesst sich da ein Reduktionsverfahren ueber den Potenzmengen 
der Elemente verwenden wenn man sich die 7-Segment-Anzeige als einen 
Zustandsautomaten betrachtet und die Segmente selber die Zustaende 
darstellen... ;)

Dadurch werden automatisch alle unnoetigen Zustaende eliminiert und auch 
unnuetze Wegstrecken (die zum selben Ergebnis fuehren), damit hast Du 
den minimalen Erkennungsalgorithmus ableitbar gemacht.
Persönliche Seite
Nils schrieb:
> Ach so einfach geht das :-) Da muss ich aber erstmal n Stündchen drüber
> nachdenken...

Ja gell? Hehe
Ein Vorteil zur Excel-tabelle bietet das Verfahren auch noch, denn Du 
hast die zeitliche Achse mit in Beruecksichtigung genommen, wenn Dein 
Erkenner sehr schnell ist und nicht alle Elemente gleich angelegt werden 
sparst Du Dir ggf. noch mehr...
@Nils,

natürlich kann man das 'mathmatisch' herleiten. Du musst Dir nur eine 
entsprechende Logik ausdenken, die den von Dir gewünschten Encoder 
realisieren kann. Die kannst du mit Boolscher Algebra beschreiben. Dort 
würden sich dann durch vereinfachen der Gleichungen die Signale 
wegkürzen die auf das Ergebnis der Gleichung keinen Einfluss haben.

Sascha
Sascha Weber schrieb:
> @Nils,
>
> natürlich kann man das 'mathmatisch' herleiten. Du musst Dir nur eine
> entsprechende Logik ausdenken, die den von Dir gewünschten Encoder
> realisieren kann. Die kannst du mit Boolscher Algebra beschreiben. Dort
> würden sich dann durch vereinfachen der Gleichungen die Signale
> wegkürzen die auf das Ergebnis der Gleichung keinen Einfluss haben.

In meinem Tietze/Schenk ist eine solche Schaltung abgedruckt.
Nach meiner Erinnerung braucht man ca. 30 Dioden pro Stelle.
Gruss
Harald
der Gedanke dass 3 Bit mit zwei Zuständen nicht reichen um 10 Werte 
eindeutig zu beschreiben, also quasi das minimum ist einfach 
herzuleiten.

Es werden 4 Bit a 2 Zustände benötigt um 10 Werte eindeutig zu 
beschreiben. Wenn man es also schafft 3 Segmente zu elemenieren, dann 
hat man sein Ziel erreicht, wobei es erstmal egal ist welche das 
letztendlich sind...

Das ist zwar noch keine Lösung, aber eine Einkreisung der Problematik.

TS

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 14 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.