Hallo Leute, ich habe ein Frage und zwar möchte ich einen Zähler der von 0 - 999999 Zählt auf einem LCD Display ausgeben, dazu meine Frage wie ich das tun könnte ich habe bereits einen code erstellt wo die zählung pro zahl in einem Register vorgenommen wird das wären aber dann schon 6 Register, dies würde ich gerne anders anstellen habt ihr dazu eine Idee? MC= AT90S oder ATMega Programiersprache Assembler
könntest auch mit 3 Registern auskommen, das Zählen vereinfacht sich damit (rein binäre Zählweise), dafür hast du mehr Aufwand beim Ausgeben einer Binärzahl in BCD. Wenn du sonst nichts anderes mit der Zahl machen willst als darstellen, ist das durchaus möglich, gleich im BCD-Code zu zählen. Was hast du denn mit den anderen 26 Registern vor, wenn du nicht 6 abgeben willst? Nur, um noch mehr Reserve zu haben?? Gibt auch die Möglichkeit, mit packed-BCD zu arbeiten, je nibble eine Dezimalzahl. Ich halte es immer so: solange die Zahl im MC ist: binär, Umwandlung erst bei der Ausgabe.
Also wenn ICH faul bin G dann nehm ich mir 6 Bytes aus dem RAM dafür frei. Musste halt immer LDS und STS machen, aber du brauchst nur ein temporäres Register, Umwandlung so leicht wie 6 Register. Schöner isses natürlich allemals in binärer Form, kommt aber immer auf das Drumherum an. dave
Mhm sehr interessant die sache, mit BCD allerdings verstehe ich sie überhaupt nicht. Hab leider auch wenig dazu in Deutsch gefunden! Aber selbst wenn müsste ich die Gezählte zahl doch in ein ASCII Format bringen zur ausgabe oder etwa nicht?
Ist ASCII Format bringst du die Zahl, indem du einfach zum Binärwert 48 hinzu addierst. Angenommen binär hast du 7, 48 dazu macht 55, und genau das ist der ASCII-Wert von '7'.
Hi Ingo, hast du zufällig noch den Code von deinem Zähler? Bzw den Fertig erstellten Code? Ich muss für eine Testvorrichtung in der Arbeit einen Zähler bauen/Programmieren. Die Ausgabe über LCD wäre die Kröning. Könntest du mir eine Kopie des Codes als Anregung schicken? Mit freundlichen Grüßen Eddy
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.