You have no items in your shopping cart.

Subtotal: 0.00

Aim

To Implement the FIR High pass filter using TMS320C5505 KIT.

Requirements

Theory

In signal processing, a finite impulse response (FIR) filter is a filter whose impulse response (or response to any finite length input) is of finite duration, because it settles to zero in finite time. This is in contrast to infinite impulse response (IIR) filters, which may have internal feedback and may continue to respond indefinitely (usually decaying).

The impulse response of an Nth-order discrete-time FIR filter (i.e., with a Kronecker delta impulse input) lasts for N + 1 samples, and then settles to zero.

The output y of a linear time invariant system is determined by convolving its input signal x with its impulse response b.

For a discrete time FIR filter, the output is a weighted sum of the current and a finite number of previous values of the input. The operation is described by the following equation, which defines the output sequence y[n] in terms of its input sequence x[n]:





where:

x[n] is the input signal,

y[n] is the output signal,

bi are the filter coefficients, also known as tap weights, that make up the impulse response,

N is the filter order; an N th-order filter has ( N + 1 ) terms on the right-hand side. The x[n-i] in these terms are commonly referred to as taps, based on the structure of a tapped delay line that in many implementations or block diagrams provides the delayed inputs to the multiplication operations. One may speak of a 5th order/6-tap filter, for instance.

 

1. Open Code Composer Studio v4 .

2. In WorkSpace Launcher.

  • BROWSE → Select the project location and make one new folder, MAKE NEW FOLDER → Type the Workspace name, OK → OK.

3. FILE ⇒ NEW ⇒ CCS PROJECT

  • Project name: Type your project name.
  • Tick use default location. → NEXT
  • Project type: C5500.
  • Tick Debug And Release. → NEXT → NEXT.
  • Output type: Executable.
  • Device Variant : TMS320C55XX - TMS320C5505.
  • Device Endianness : big
  • Code Generation Tools: TI v4.3.5.
  • Run time support library: automatic.
  • Target content: none. →FINISH

4.FILE ⇒ NEW ⇒ SOURCE FILE

  • Source file: Type your projectname.c( .c extension is must ).
  • Type the program.
  • FILE → SAVE.

5. Paste the following board library files in workspace location.

  • include folder (contains header files)
  • Gel folder (contains gel file)
  • Library folder(contains library files)

6. Paste the Linker file in the project location.(linker file is available in cd)

Note: Those folders and linker file are availble at cd.

7. PROJECT ⇒ PROPERTIES ⇒ C/C++ BUILD ⇒ BASIC OPTION

  • Target processor version(--silicon version, -mv)    :   5505 OK.

8. FILE ⇒ NEW ⇒ TARGET CONFIGURATION FILE

  • file name: projectname. ccxml (.ccxml extension is must)
  • Connection: Texas Instrument XDS100 v1 USB Emulator.
  • Device: TMS320C5505. (Tick the TMS320C5505)→ SAVE → TARTGET CONFIGURATION →C55XX_0 →BROWSE, browse the workspace location, open the gel folder and select the GEL file. → OPEN → SAVE.

9. In C/C++ Project window, Right click the project ⇒ REBUILD PROJECT.

10. Connections :

  • Connect the usb cable, PC to TMS320C5505 KIT.
  • Connect the 5v adapter.
  • Power on the kit.

11. TARGET ⇒ DEBUG ACTIVE PROJECT.

12. TARGET ⇒ RUN.(wait few seconds)

13. TARGET ⇒ HALT.

14. Output is displayed at Console Window.

Program

// ideal high pass filter coefficients #include<stdio.h> #include <math.h> #define PI 3.14 void main() { const int sampf=10000; const int cutf=1000; double value,a,b,output,final; int nyqf,n,c0; int *coeff; coeff = (int *)0xc0001000; nyqf=sampf/2; c0=cutf/nyqf; for(n=-5;n<6;n++) { if(n==0) { output = 0.5; } else a = (n * PI)/2; b = n * PI; value = sin(a); output = value/b; final = 1 - output; printf("\n The Fir High pass filter coefficient : %f",final); } }

Result

Thus, the FIR High pass filter was Implemented and displayed the results in console window.