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.

F32);<br />

tFrac32 f32CoefBuf[FIR_NUMTAPS_MAX];<br />

#define OUT_LEN 16<br />

void main(void)<br />

{<br />

int ii;<br />

tFrac32 f32OutBuf[OUT_LEN];<br />

// Define a simple low-pass filter<br />

// The filter coefficients were calculated by the following<br />

// Matlab function (coefficients are contained in Hd.Numerator):<br />

//<br />

//function Hd = fir_example<br />

//FIR_EXAMPLE Returns a discrete-time filter object.<br />

//N = 15;<br />

//F6dB = 0.5;<br />

//<br />

//h = fdesign.lowpass('n,fc', N, F6dB);<br />

//<br />

//Hd = design(h, 'window');<br />

//return;<br />

ii = 0;<br />

f32CoefBuf[ii++] = 0xFFB10C14;<br />

f32CoefBuf[ii++] = 0xFF779D25;<br />

f32CoefBuf[ii++] = 0x01387DD7;<br />

f32CoefBuf[ii++] = 0x028E6845;<br />

f32CoefBuf[ii++] = 0xFB245142;<br />

f32CoefBuf[ii++] = 0xF7183CC7;<br />

f32CoefBuf[ii++] = 0x11950A3C;<br />

f32CoefBuf[ii++] = 0x393ED867;<br />

f32CoefBuf[ii++] = 0x393ED867;<br />

f32CoefBuf[ii++] = 0x11950A3C;<br />

f32CoefBuf[ii++] = 0xF7183CC7;<br />

f32CoefBuf[ii++] = 0xFB245142;<br />

f32CoefBuf[ii++] = 0x028E6845;<br />

f32CoefBuf[ii++] = 0x01387DD7;<br />

f32CoefBuf[ii++] = 0xFF779D25;<br />

f32CoefBuf[ii++] = 0xFFB10C14;<br />

Param.u32Order = 15;<br />

Param.pf32CoefBuf = &f32CoefBuf[0];<br />

// Initialize FIR filter<br />

GDFLIB_FilterFIRInit_F32 (&Param, &State, &f32InBuf[0]);<br />

// Initialize FIR filter<br />

GDFLIB_FilterFIRInit (&Param, &State, &f32InBuf[0], Define F32);<br />

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

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

// as default<br />

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

// Initialize FIR filter<br />

GDFLIB_FilterFIRInit (&Param, &State, &f32InBuf[0]);<br />

Chapter 4 API References<br />

// Compute step response of the filter<br />

<strong>for</strong>(ii=0; ii < OUT_LEN; ii++)<br />

{<br />

// f32Out contains step response of the filter<br />

f32OutBuf[ii] = GDFLIB_FilterFIR_F32 (FRAC32 (1.0), &Param, &State);<br />

// f32Out contains step response of the filter<br />

f32OutBuf[ii] = GDFLIB_FilterFIR (FRAC32 (1.0), &Param, &State, Define<br />

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

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

// as default<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 />

Freescale Semiconductor, Inc. 151

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

Saved successfully!

Ooh no, something went wrong!