www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik zahl in einzelne Ziffern zerlegen für 7-seg PIC


Autor: Jens Plappert (Firma: FTSK) (gravewarrior)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
HEy Leute, bin die ganze zeit am rumüberlegen wie ich es hinbekommen 
könnte wenn ich eine Zahl habe, das ich diese in ihre einzelnen ziffern 
"auflösen" könnte um diese dann auf ner 7-segment-anzeige auszugeben.

gibt es dazu irgendwo vl schon ein beispiel? wollte diesen teil heute 
noch fertig machen, steh aber ,leider grad total aufm schlauch.


greets, Jens

Autor: Lars (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Division der Zahl durch 10, durch hundert, durch tausend... um die 
einzelnen Ziffern BCD kodiert zu erhalten.
Ich glaube es ist auch etwas im AVR Tutorial drin, aber da wird 
subtrahiert.

Autor: Ralf Moshage (ego)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn's für einen PIC sein soll da gibt es von Microchip eine AN. Da mußt 
du nach Dezimal zu BCD suchen.

MFG
ralf

Autor: Jens Plappert (Firma: FTSK) (gravewarrior)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
also das problem ist nicht direkt wie ich den BCD-Code mache, die 
tabelle steht schon. Mir geht es also darum aus 124 eine   1 und eine 2 
und eine 4 zu machen. Ich glaube di erste antwort dürfte in diese 
richtung gehen.

Autor: H. W. (digger72)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich denke , du verwechselst da was.
In der Tabelle machst du aus der auszugebenden
Zahl (eine Stelle) den entsprechenden 7-Segmentcode.
BCD-Code heisst, das in einem Byte zwei Stellen
einer Dezimalzahl codiert sind,
z.B 95h als  BCD = 95 (dezimal)
    95h normal =  149.
Hast du hier aber nicht.
Der zu wandelnde Wert ist eine Hex-Zahl (0-255).
Es führen bekanntlich viele Wege nach Rom,
imho dauern zwei Divisionen zu lange
(Rest muss auch berücksichtigt werden).
Einfacher wäre es, in einer Schleife erst jeweils
100 und dann 10 so oft zu subtrahieren, bis ein Überlauf
stattfindet und dabei Variablen für die 100er und 10er
hochzuzählen.
Der Rest entspricht der 1er Stelle.

MfG
Digger

Autor: Jens Plappert (Firma: FTSK) (gravewarrior)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
wird wohl noch die beste lösung bleiben. merci, ich gehe ans probieren!

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.