Forum
Hex ind BCD umwandeln - Micropython (Computertechnik)
» Hallo an alle,
» ich habe einen I2C-Bus Baustein TC74a0 mit dem ich Temperaturen einlesen
» möchte
» Das Ergebnis wird im Zweierkomplement zur Verfügung gestellt
»
» Ich bräuchte das Ergebnis aber als BCD-Zahl
»
» Weiß jemand wie das geht?
» Ich bon noch nicht dahinter gekommen
Um Micropython habe ich bis jetzt einen Bogen gemacht, aber im Prinzip geht das (unabhängig von der Programmiersprache) so: Zuerst den Absolutwert der Zahl bilden und das Vorzeichen merken. Dann die Zahl ganzzahlig durch 10 teilen, der Teilungsrest (modulo) ist die Einerstelle der BCD-Zahl. Ganzzahliges Ergebnis der vorigen Operation wieder durch 10 teilen, der Teilungsrest ist die Zehnerstelle usw., bis der ganzzahlige Teil <10 ist, das ist dann die höchstwertige Stelle der BCD-Zahl. Abschliessend bekommt die BCD-Zahl das Vorzeichen der ursprünglichen Zahl.
Gruß
grindstone
--
Es ist unter der Würde eines Technikers, die Gebrauchsanweisung zu lesen!
Gesamter Thread: