Hallo,

ich weiß nicht ob das noch relevant ist. Aber schau doch mal bei microchip bei den Appnotes vorbei. Dort gibts jede Menge Material zu math-routinen, inklusive *.asm/*.inc Dateien. Die solltest Du dann mit dem C-Compiler einbinden (extern "C" ...) wie das geht steht da vermutlich auch gut beschrieben.

Eine float-Variable besteht aus der Mantisse (=Zahl mit einem Bit vor dem komma und dem Rest dahinter) und dem Exponenten. Die "länge" der Float-variabel in bit gibt daher nur dei Genauigkeit an, nicht aber Ihren Wertebereich.

Aber Achtung! Float-Berechnungen drücken die Geschwindigkeit ordentlich in die Knie, umso genauer umso schlimmer. Eine mittlere Anzahl der benötigten Taktzyklen findest Du auch in den Appnotes.

Nochwas: Das Library ist nicht reentrant, d.h. Du sollst es dann nicht im Interrupt und gleichzeitig im Haputprogramm verwenden (gemeinsame Variablen).

Mario