03.08.2013 Views

Embedded Software and Motor Control Libraries for PXR40xx

Embedded Software and Motor Control Libraries for PXR40xx

Embedded Software and Motor Control Libraries for PXR40xx

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Function MLIB_Norm_F16<br />

4.161.4 Description<br />

Depending on the sign of the input value the function counts <strong>and</strong> returns the number of<br />

the left shift needed to get an equality between input value <strong>and</strong> the maximum fractional<br />

values "1" or "-1".<br />

Note<br />

Due to effectivity reason this function is implemented as inline<br />

<strong>and</strong> thus is not ANSI-C compliant.<br />

4.161.5 Re-entrancy<br />

The function is re-entrant.<br />

4.161.6 Code Example<br />

#include "mlib.h"<br />

tFrac32 f32In;<br />

tU16 u16Out;<br />

void main(void)<br />

{<br />

// first input = 0.00005<br />

f32In = FRAC32 (0.00005);<br />

}<br />

// output should be 14<br />

u16Out = MLIB_Norm_F32(f32In);<br />

// output should be 14<br />

u16Out = MLIB_Norm (f32In,Define F32);<br />

// ##############################################################<br />

// Available only if 32-bit fractional implementation selected<br />

// as default<br />

// ##############################################################<br />

// output should be 14<br />

u16Out = MLIB_Norm (f32In);<br />

4.162 Function MLIB_Norm_F16<br />

This function returns the number of left shifts needed to normalize the input parameter.<br />

<strong>Embedded</strong> <strong>Software</strong> <strong>and</strong> <strong>Motor</strong> <strong>Control</strong> <strong>Libraries</strong> <strong>for</strong> <strong>PXR40xx</strong>, Rev. 1.0<br />

640 Freescale Semiconductor, Inc.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!