Forum: Mikrocontroller und Digitale Elektronik 10*10Bit Multiplikation mit Festkommastelle


von Ralf Meiberg (Gast)


Lesenswert?

Hallo

Ich stehe vor folgendem Problem:

Beim Auslesen des ADC meines Attiny26 erhalte ich, aufgrund der
benötigten Genauigkeit 10Bit-Werte.

Diese interpretiere ich als vorzeichenlose Festkommazahl, wobei meine
obersten 3Bit meine Vorkommastelle darstellen (Werte von 0..5) und die
unteren 7 Bit meine Nachkommastelle (Genauigkeit von 7,8125e-3).

Diese Zahl möchte ich mit einer Zahl, welche immer kleiner 1  ist
multiplizieren. Auch diese Zahl besteht aus 7 Nachkommastellen.

Wie würdet Ihr das Problem lösen?
Das Ergebniss darf maximal 2 Byte lang sein.

Ich hoffe, daß mir von Euch einer weiterhelfen kann.

MfG
Ralf

von Jangomat (Gast)


Lesenswert?

Dein AD-Wert wird rechtsbündig in ein 16-Bit Wort geschoben. Diesen
multiplizierst Du mit Deiner Korrekturzahl von 0..FFFF, wobei FFFF den
Korrekturwert 1 darstellt (16-Bit unsigned Multiplikation). Das
Ergebnis besteht aus 4 Byte, wovon die 2 höchstwertigen Byte Dein
Ergebnis sind.

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.