Forum: Mikrocontroller und Digitale Elektronik BCD to BIN16 (PIC16FXX) unpacked conversion


von Daniel (Gast)


Lesenswert?

Hallo zusammen!

Ich suche eine Routine für den PIC16F77, o. ä. mit der sich eine 5-
stellige BCD Zahl in eine 16-Bit Binärzahl umrechnen lässt. Dabei soll
jede der 5 BCD-Stellen ein eigenes Register haben. Im Netz gibt es
viele Beispiele, wobei alle ein Register für 2 Stellen benützen.

Vielen Dank schon im Voraus für Eure Hilfe!!!!

Daniel

von Peter D. (peda)


Lesenswert?

Macht sowas denn Spaß, immer alles fertig gebacken zu wollen ?


Entweder versuchen, den Code zu verstehen, dann kann man ihn auch
anpassen oder selber schreiben.


Z.B.:

16Bit = D0 + 10 * (D1 + 10 * (D2 + 10 * (D3 + 10 * (D4 + 10 * D5))))



Peter

von Frank K. (Gast)


Lesenswert?

Hi

Nimm doch mal Micro-Studio-Plus von http://www.melabs.com/ damit geht
alles einfacher für solche sachen.

PS: wechsle mal das Forum nach http://www.fernando-heitor.de/pic/

von Daniel (Gast)


Lesenswert?

Macht sowas denn Spaß, immer einen "klugen" Spruch von sich zu geben ?

Ich dachte, dass man in eienem Forum kompetente Leute antrifft, die
auch "fertig gebackenes" zur verfügung stellen ...
Ich schreibe grundsätzlich alles selbst, auch komplexe
Programmstrukturen. Leider fehlt mir ein wenig mathematisches
Verständnis um genau solche Routinen selbst zu schreiben! Aus fertigen
Routinen lässt sich fehlendes Verständnis manchmal ausbessern.

Jedenfalls vielen Dank an Frank K.! Die Links waren
sehr hilfreich!!!

von Peter D. (peda)


Lesenswert?

@Daniel,

war auch nicht so ernst gemeint:-)

Ich hatte bloß nicht gesehen, was so schwierig daran ist, je 2*4Bit in
ein Byte zusammen zu pappen.

Ich selber benutze ja das angegebene Prinzip der Multiplikation *10,
geht schneller und braucht weniger Code. Da besteht dann dieses Problem
nicht mehr.



Peter

von Daniel (Gast)


Lesenswert?

schon okay ...
war inzwischen schon ein wenig genervt, weil ich an dieser Stelle nicht
mehr weitergekommen bin.
Die von Dir angegebene allgemeine Schreibweise ist zum Verständnis sehr
hilfreich!
Vielen Dank hierfür ...

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
Noch kein Account? Hier anmelden.