Sie sind auf Seite 1von 24

MC LC

Phn

Trang

Li m u ...................................................................................................................... 2

Li cm n ........................................................................................................................ 3

I. Yu cu b lc v l thuyt tng qut ........................................................................ 4

1. Yu cu v b lc FIR ......................................................................................... 4

2. L thuyt b lc FIR ............................................................................................ 4

II. M phng MATLAB v vit chng trnh CCS ..................................................... 10

1. M phng Matlab bi ton b lc FIR ............................................................... 10

2. Yu cu phn mm v phn cng ...................................................................... 14


3. Vit chng trnh trn CCS 6.1 ......................................................................... 16

III. Kt qu ....................................................................................................................... 23

IV. Ti liu tham kho .................................................................................................... 24

Bo co bi tp ln
GVHD: PGS.TS L Tin Thng

X l tn hiu tng t v s
Nhm 1

LI M U
X l tn hiu s (Digital Signal Processing DSP) tr thnh mn hc c s cho nhiu
ngnh khoa hc, k thut: in- in t, Vin thng,Trong , php x l c bn nht
ca DSP l lc, v cc h thng c cp n nhiu nht trong x l tn hiu s l cc
b lc s (Digital Filter). Nu xt v p ng xung c th chia cc b lc s thnh 2 loi
chnh l b lc c p ng xung hu hn FIR (Finite Impulse Response) cn gi l lc
khng quy, v b lc c p ng cung v hn IIR (Infinite Impulse Response) cn gi
l lc quy. Xt v p ng tn s bin c th chia cc b lc, FIR hay IIR, thnh 4
loi c bn: thng thp, thng cao, thng di v chn di. Cc b lc ny c th c thit
k bng nhng phng php sau y: phng php ca s ( Window Design Techniques),
phng php ly mu tn s (Frequency Sampling Design Techniques) v phng php
xp x ti u cn bng gn sng (Optimal Equiripple Design Techniques).
Trong bo co bi tp ln ny, nhm xin php c trnh by vic thit k b lc thng
thp FIR bc 3 thc hin trn phn cng TMS320C5515 ca Texas Instrument (TI)
nm vng l thuyt v b lc FIR cng nh lm quen vi KIT TMS320C5515 v cc phn
mm h tr Code Composer Studio (CCS), MATLAB

Bo co bi tp ln
GVHD: PGS.TS L Tin Thng

X l tn hiu tng t v s
Nhm 1

LI CM N

Trn thc t khng c s thnh cng no m khng gn lin vi nhng s h tr, gip
t hay nhiu, d trc tip hay gin tip ca ngi khc. Trong sut thi gian thc hin bo
co ny, nhm em nhn c s quan tm, gip ca qu Thy c v bn b.
Vi lng bit n su sc nht, nhm xin chn thnh cm n PGS.TS L Tin Thng
hng dn nhm trong vic tip cn n cc vn X l s tn hiu hon thnh bo
co ny.
Project c thc hin trong gn sut hc k 2, bc u gip nhm tm hiu thm v
mt s kin thc cn hn ch v cn nhiu b ng. Do vy, khng trnh khi nhng thiu
st l iu chc chn, nhm rt mong nhn c nhng kin ng gp qu bu ca qu
Thy c v cc bn hc cng lp nhng kin thc ca nhm trong lnh vc ny c
hon thin hn.

Bo co bi tp ln
GVHD: PGS.TS L Tin Thng

X l tn hiu tng t v s
Nhm 1

I. Yu cu b lc v l thuyt tng qut


1. Yu cu v b lc FIR
Trong project ny, yu cu thit k b lc thng thp FIR bc 3, c tn s ct =
3000.
Thit k trn KIT TMS 320C5515.
2. L thuyt b lc FIR
Cc h thng LTI ri rc c th phn loi thnh h thng FIR ( Finite Impulse Response)
v IRR ( Infinite Impulse Response), l n c p ng xung h(n) hu hn hay v hn.
Trong bi bo co ny, ta ch cp n b lc FIR.
y l dng b lc c p ng xung h(n) c gi tr trn khong thi gian hu hn 0
v bng 0 cc gi tr khc:
= {0 , 1 , 2 , , , 0,0,0, . }
trong M c xem nh l bc ca b lc. Tng ng vi n, chiu di ca vector p
ng xung ca b lc FIR = {0 , 1 , 2 , , } l = + 1.
Cc h s ca p ng xung {0 , 1 , 2 , , } c gi theo nhiu cch khc nhau h s
lc ( filter coeficients, filter weights, hay filter taps).
Ta bit y(n) l tch chp (convolution) ca chui u vo x(n) vi chui b lc h(n),
c vit di dng:
() = (0)() + (1)( 1) + (2)( 2)
Hay vit rt gn li l:
( ) = ( ) ( )

()

V vy vi b lc FIR, c phng trnh n gin nh sau:

() = ()( )
=0

Hay khai trin ra l:


() = 0 () + 1 ( 1) + + ( )
Nh vy, phng trnh I/O nhn c t tng c trng s ca cc mu u vo hin to v
M mu trc ( 1), ( 2), , ( )
4

Bo co bi tp ln
GVHD: PGS.TS L Tin Thng

X l tn hiu tng t v s
Nhm 1

V mt l thuyt, da trn c im ca p ng tn s, x l tn hiu s quan tm n 4


loi b lc l tng sau y:
a. B lc thng thp l tng
p ng bin - tn s : | ( )| = {

1, ||
0,

Khi p ng xung ca b lc thng thp l tng vi tr nhm l:


( ) =

sin ( )

b. B lc thng cao l tng


p ng bin - tn s : | ( )| = {

1, ||
0,

Khi p ng xung ca b lc thng thp l tng vi tr nhm l:


( ) = ( )

sin ( )

c. B lc thng di l tng
p ng bin - tn s : | ( )| = {

1, 1 || 2
0
,

Khi p ng xung ca b lc thng thp l tng vi tr nhm l:


( ) =

2
1
sin 2 ( )
sin 1 ( )

d. B lc chn di l tng
p ng bin - tn s : | ( )| = {

0, 1 || 2
1
,

Khi p ng xung ca b lc thng thp l tng vi tr nhm l:


( ) = ( )

2
1
sin 2 ( ) +
sin 1 ( )

Chng ta c nhn xt l p ng cung ca cc b lc l tng ni trn c chiu di v hn,


xut pht t ch s n +, v khng nhn qu, dn n khng th thc hin c v
mt vt l. Khi tng hp b lc thc t, ta phi chp nhn p ng xung phi xut pt t
ch s 0 p ng iu kin nhn qu. Khi , p ng tn s ca b lc thc t c phn
qu t di thng n di chn, hoc ngc li, v c gi l di chuyn tip (transition

Bo co bi tp ln
GVHD: PGS.TS L Tin Thng

X l tn hiu tng t v s
Nhm 1

band). ng thi phi c s gn sng (ripple) c di thng v di chn hoc t nht ti


mt trong hai, di thng hoc di chn.
Vic thit k b lc l qu trnh tm ra cc tham s, hay dy p ng xung ca b lc, tha
mn cc yu cu ch tiu k thut cho trc, c th l mt s hoc tt c cc tham s tuyt
i (absolute specification) sau:

Tn s ct di thng
Tn s ct di chn
gn sng di thng 1
gn sng di chn 2

Trn thc t, cc tham s thng c cho di dng tng i(relative specification) tnh
theo n v decibels di dng sau y:
gn sng di thng theo dB c tnh bng cng thc:
= 20 log

1 1
[]
1 + 1

suy gm di chn theo dB c tnh bng cng thc:


= 20 log

2
[]
1 + 1

B lc FIR c mt s u im v mt thc hin nh sau:


p ng pha l tuyn tnh
Tng i d thit k v lun lun l h thng n nh
Thc hin c vi hiu qu cao
C th thc hin c trn c s p dng bin i Fourier ri rc
Hm p ng pha - tn s ca b lc FIR c dng sau:
() = , ,

V hm p ng tn s ca b lc FIR c cho di dng ln v pha nh sau:


( ) = ( ) , ( )
Da trn tnh cht i xng hay phn i xng ca dy p ng xung v chiu di N ca
dy p ng xung, ngi ta phn loi b lc FIR lm 4 loi sau y:
a. B lc FIR loi 1:
h(n) i xng, N l, = 0, =

1
2

Bo co bi tp ln
GVHD: PGS.TS L Tin Thng

X l tn hiu tng t v s
Nhm 1
1
2

( ) = ()
[
vi (0) = (

),(

=0

1
1
() = 2 (
) , 1
2
2
1
2
dn n: ( ) = =0
() , () =

1
2

b. B lc FIR loi 2:
h(n) i xng, N chn, = 0, =

1
1
( ) = ()cos( ) 2
2
=0
[
]

vi () = 2 ( ) , 1

2
dn n: ( ) = =0
()cos( ) , () =

c. B lc FIR loi 3:

h(n) i xng, N l, = , =

1
2

1
)
2

( ) = () ( 2
[
vi () = 2 (

1
2

=0

) , 1

]
1
2

1
2
dn n: ( ) = =0
() , () =

1
2

Bo co bi tp ln
GVHD: PGS.TS L Tin Thng

X l tn hiu tng t v s
Nhm 1

d. B lc FIR loi 4:

h(n) i xng, N chn, = , =

1
1
( ) = ()sin( ) ( 2 2 )
2
=0
[
]

vi () = 2 ( ) , 1

2
dn n: ( ) = =0
()sin( ) , () =

1
2

C 3 phng php tng hp b lc FIR pha tuyn tnh, l:


Phng php ca s.
Phng php ly mu tn s
Phng php lp

Trong phn ny ta xt phng php thit k da trn phng php ca s.


T tng c bn ca phng php ca s l tm ra p ng xung ca b lc l tng
risau ct xn hai u ( hay nhn vi mt hm ca s) dy p ng xung sao cho
ta thu c mt b lc FIR pha tuyn tnh, ng thi l nhn qu. im nhn mnh
phng php ny l tm ra p ng xung thch hp ca b lc l tng v la chn hm
ca s thch hp. V mt l tng, b lc thng thp l tng pha tuyn tnh c li di
thng bng 1 v p ng tn s bng 0 trn ton di chn, tc l:
( ) = {

, ||
, vi
0 ,

Th ta s thu c dy p ng xung
( ) =

sin ( )

C tnh cht i xng ti


Vi cc b lc s l tng khc, bao gm thng cao, thng di, v chn di, dy ca p
ng xung cng c dng tng t nh vy v c th suy ra t dng p ng xung ca b lc
thng thp l tng ni trn.
thu c p ng xung ca b loc FIR v mt thc t, phng php ca s dng k
thut nhn hm p ng xung ca b lc l tng () vi mt hm ca s w(n), vi
8

Bo co bi tp ln
GVHD: PGS.TS L Tin Thng

X l tn hiu tng t v s
Nhm 1

w(n) l mt hm i xng vi trong khong t 0 n N-1 v bng 0 trong khong cn


li. Kt qu l hm p ng xung ca b lc thc t h(n) l i xng hoc phn i xng
vi =

1
2

trong khong [0,N-1].

Cc ca s thng dng:

Ca s ch nht
Ca s tam gic
Ca s Hamming
Ca s Hanning
Ca s Blackman
Ca s Kaiser

Bo co bi tp ln
GVHD: PGS.TS L Tin Thng

X l tn hiu tng t v s
Nhm 1

II. M phng MATLAB v lp trnh trn CCS


1. M phng Matlab bi ton b lc FIR
Trc khi thit k b lc FIR da trn yu cu t ra, nhm thc hin thit k b lc FIR
trn Matlab bng cng c fdatool ca n. Sau tin hnh m phng trn Simulink da
vo b lc FIR c thit k vi mt s mu tn hiu.
Tng quan v cng c thit k b lc s FDATool
Cng c thit k b lc s (FDATool) cung cp cho ta nhng k thut in tin thit k,
phn tch, m phng cc b lc s. N cho php nng cao kh nng x l h thng trong
thi gian thc nh vi b lc thch nghi, b lc a nhim v s chuyn i gia chng.
hp cng c h tr thit k b lc FIR gm:
+ Tramg b cho thit k b lc FIR bao gm cc chc nng gim thiu v th t, v gn
song, v pha, v bang k bn, v im n bang, li xp x, song hi v gn song ln
nht ca thit k.
+ Thit k vi b lc FIR gn nh, ti u vi nhng thit k pha phi tuyn v gim thiu
c li.
+ Thit k b lc FIR na bng tn c trang b bao gm: phng php ca s, phng
php hnh vung
Tin hnh thit k b lc FIR vi fdatool
+ G lnh >>fdatool trn command window, hin ra ca s lm vic Filter Design &
Analysis Tool.
+ Trong ca s lm vic, thit k b lc FIR theo yu cu, s dng phng php ca s
(Design/Window)

10

Bo co bi tp ln
GVHD: PGS.TS L Tin Thng

X l tn hiu tng t v s
Nhm 1

Hnh 1. B lc thng thp FIR dng phng php ca s trong Design v Response

Hnh 2. Chn bc b lc trong Filter v s dng ca s hnh ch nht bng cch chn
Rectangular Window trong Options

11

Bo co bi tp ln
GVHD: PGS.TS L Tin Thng

X l tn hiu tng t v s
Nhm 1

Hnh 3. Trong Frequency chn Fc- tn s ct ca b lc FIR v tn s ly mu- Fs


Cui cng, nhn Design Filter hon thnh vic thit k b lc.
Ta thy p ng tn s ca b lc hin th trn ca s Filter

Hnh 4. p ng tn s ca b lc hin th trn ca s Filter


V p ng xung ca FIR c xut ra bng cch chn File/ Export
Trong Command Window s hin ra bng Num cha cc gi tr ca h(n)

12

Bo co bi tp ln
GVHD: PGS.TS L Tin Thng

X l tn hiu tng t v s
Nhm 1

Hnh 5. Cc gi tr ca h(n)
Do vy, ta c () = {0.2406, 0.2594, 0.2594, 0.2406}
Da vo thit k b lc FIR trn, m phng bng code Matlab nh sau
Tn hiu u vo x(t ) 5sin(1000 t ) 3cos(4000 t ) 6sin(20000 t ) 8cos(32000 t )
f1=500;
f2=2000;
f3=10000;
f4=16000;
fs=40000;
T=1/fs;
L=1000;
t=(0:L-1)*T;
NFFT = 2^nextpow2(L);
x=5*sin(2*pi*f1*t)+3*cos(2*pi*f2*t)+6*sin(2*pi*f3*t)+8*cos(2*pi*f4*t);
X=fft(x,NFFT)/L;
f=fs/2*linspace(0,1,NFFT/2+1);
subplot(2,2,1);
plot(f,2*abs(X(1:NFFT/2+1)));
title('Input signal X(t)');
xlabel('f[Hz]');
ylabel('Magnitude of X(t)');
h4=[0.2406 0.2694 0.2594 0.2406];
y=conv(x,h4);
Ly=L+length(h4)-1;
NFFTy=2^nextpow2(Ly);
Y=fft(y,NFFTy)/Ly;
fy=fs/2*linspace(0,1,NFFTy/2+1);
subplot(2,2,2); plot(fy,2*abs(Y(1:NFFTy/2+1)));
title('Output signal Y(t) after X(t) pass throw Lowpass FIlter 3kHz');
xlabel('f[Hz]'); ylabel('Magnitude of Y(t)');

13

Bo co bi tp ln
GVHD: PGS.TS L Tin Thng

X l tn hiu tng t v s
Nhm 1

Ph bin ca tn hiu u ra v u vo nh sau

Hnh 6. Ph bin ca tn hiu vo v ra


Cho thy vi b lc thng thp FIR tn s ct 3kHz, ti cc tn s cao 10kHz v 16kHz
u b trit tiu gn nh hon ton. V vy c th s dng b lc FIR h = {0.2406, 0.2694,
0.2594, 0.2406}.
2. Yu cu phn mm v phn cng

Phn mm v phn cng


Cc phn mm v phn cng cn thit cho bi tp ln bao gm
B TMS320C5515 eZdsp USB Stick Development Tool do TI sn xut
Phn mm giao tip gia PC vi b KIT Code Composer StudioTM (CCS)
Phn mm tnh ton MATLAB ( thc hin vic m phng)
My tnh Laptop, USB, phn mm h tr pht song.
Gii thiu v KIT TMS320C5515 eZdsp USB Stick Development Tool

Hnh 7. KIT TMS320C5515 eZdsp USB Stick Development Tool


14

Bo co bi tp ln
GVHD: PGS.TS L Tin Thng

X l tn hiu tng t v s
Nhm 1

Cc thnh phn chnh ca b KIT

C55x CPU v cc b nh lin quan


Phn cng tng tc FFT
Bn b iu khin DMA v giao din b nh bn ngoi
Module qun l in
Cc thit b ngoi vi I/O bao gm I2S, I2C, SPI, UART, Timers, EMIF, 10 bit SAR
ADC, iu khin LCD, USB 2.0.

Hnh 8. S khi chc nng b KIT


Phn mm giao tip gia PC vi b KIT Code Composer StudioTM (CCS)

15

Bo co bi tp ln
GVHD: PGS.TS L Tin Thng

X l tn hiu tng t v s
Nhm 1

Hnh 9. Phn mm giao tip gia PC vi b KIT Code Composer StudioTM (CCS)
Code Composer Studio l mi trng pht trin tch hp c TI xy dng nhm h tr
khch hng trong vic tip cn v pht trin ng dng vi cc sn phm ca TI. IDE ny
c mi trng lm vic kh thn thin, c kt hp vi Programer v Debugger.

3. Lp trnh trn CCS 6.1


Trong project ny, nhm s dng tn hiu u vo nh trn
x(t ) 5sin(1000 t ) 3cos(4000 t ) 6sin(20000 t ) 8cos(32000 t )

V c to ra t matlab nh sau
f1=500;
f2=2000;
f3=10000;
f4=16000;
fs=40000;
T=1/fs;
L=1000;
t=(0:L-1)*T;
% Tao tin hieu x(n) cac tan so f1, f2, f3, f4
x=5*sin(2*pi*f1*t)+3*cos(2*pi*f2*t)+6*sin(2*pi*f3*t)+8*cos(2*pi*f4*t);
% Tao file du lieu vao dang binary
id = fopen('F:\Project\x.bin','wb');
fwrite( id, x, 'float') ;
fclose(id) ;

16

Bo co bi tp ln
GVHD: PGS.TS L Tin Thng

X l tn hiu tng t v s
Nhm 1

Sau khi chy trong matlab, nhm c file x.bin lm ng vo ca KIT TMS320C5515.
Trong CCS 6.1, to Project mi lp trnh cho KIT vi cc thng s b FIR tn s ct
3kHZ nh trn:
h = {0.2406, 0.2694, 0.2594, 0.2406}
Trong main.c
#include <stdio.h>
#include <stdlib.h>
#include "usbstk5515.h"
#include "convolution.h"
#include "overlap.h"

#define

#define

Lx

1000

int main( void )


{
float h[M+1] =

0.2406, 0.2694, 0.2694, 0.2406 } ;

float *x , *y, *ytemp

= ( float* ) malloc(

Lx

= ( float* ) malloc( ( M + Lx )* sizeof ( float* ) ) ;


M

* sizeof ( float* ) ) ;

ytemp = ( float*)

malloc(

* sizeof ( float* ) ) ;

if( ( x == NULL )

|| ( y == NULL ) || ( ytemp == NULL ) )

{
printf(" Error : Memory full \n") ;
exit ( 1 ) ;
}
overlap( M, h, Lx, x, y, ytemp ) ;
printf(" OK \n " ) ;
return 0 ;
}

17

Bo co bi tp ln
GVHD: PGS.TS L Tin Thng

X l tn hiu tng t v s
Nhm 1

Trong overlap.c
#include <stdio.h>
#include <stdlib.h>
#include "overlap.h"
#include "usbstk5515.h"
#include "convolution.h"

void overlap( unsigned short M,

float *h ,

unsigned short Lx, float *x ,


float *y , float *ytemp )
{
FILE *pfile_in, *pfile_out ;
and output

// open files input

Uint8 *pdata_in, *pdata_out ;


Uint32 i, k

// buffer_data

// count var

Uint32 *p_y_Uint32 = ( Uint32* )y ,tempt ;

// tranmitter

Uint32 *p_x_Uint32 = ( Uint32* )x, data[4] ;

// receiver

float sizefile

;//Int32 sizefile ;

//

sizefile of input

(byte)
Uint32 number_block ;

//

How many blocks have input file got ?

//--------------------------------------------------------------------------------//
//

Open file input and output

//--------------------------------------------------------------------------------//
pfile_in = fopen("D:\\CCS\\workspace\\LowpassFilter\\x.bin","rb");
pfile_out = fopen("D:\\CCS\\workspace\\LowpassFilter\\y.bin","wb");
if ( ( pfile_in == NULL ) || ( pfile_out == NULL ) )
{

18

Bo co bi tp ln
GVHD: PGS.TS L Tin Thng

X l tn hiu tng t v s
Nhm 1

printf(" Error : can't open files \n");


exit(1) ;
}
//--------------------------------------------------------------------------------//
//

Buffer Data

//--------------------------------------------------------------------------------//
pdata_in

= ( Uint8* ) malloc( 4 * Lx * sizeof( Uint8 ) ) ;

pdata_out = ( Uint8* ) malloc( 4 * Lx * sizeof( Uint8 ) );


if ( ( pdata_in == NULL )|| ( pdata_out == NULL ) )
{
printf(" Error : memory are full \n") ;
exit(1);
}
//--------------------------------------------------------------------------------//
//

xem file x.bin co bao nhieu byte

//--------------------------------------------------------------------------------//
fseek( pfile_in, 0L , SEEK_END ) ;
sizefile = (float)ftell ( pfile_in ) ;

// sizefile dang byte

fseek( pfile_in, 0L, SEEK_SET ) ;


//--------------------------------------------------------------------------------//
//

Processing

//--------------------------------------------------------------------------------//
for ( i = 0 ; i < M ; i++ )
ytemp[i] = 0 ;
for ( number_block = 0 ; number_block <
number_block++ )

sizefile /( 4*Lx )

fread( pdata_in, sizeof(Uint8), 4 * Lx, pfile_in ) ;


for ( i = 0 ; i < Lx ; i++ )
{

19

Bo co bi tp ln
GVHD: PGS.TS L Tin Thng

X l tn hiu tng t v s
Nhm 1

if ( number_block % 50 == 0 ) printf(" %ld \n ", number_block ) ;


//--------------------------------------------------------------------------------//
fread( pdata_in, sizeof(Uint8), 4 * Lx, pfile_in ) ;
for ( i = 0 ; i < Lx ; i++ )
{
data[0] =

(Uint32)( *( pdata_in + 4*i

) )

data[1] =

(Uint32)( *( pdata_in + 4*i + 1 ) ) << 8

data[2] =

(Uint32)( *( pdata_in + 4*i + 2 ) ) << 16

data[3] =

(Uint32)( *( pdata_in + 4*i + 3 ) ) << 24

*( p_x_Uint32 + i ) = (Uint32)( data[0] | data[1] |


data[2] | data[3] ) ;
}
//--------------------------------------------------------------------------------//
conv( M, h, Lx, x, y ) ;
for ( k = 0 ; k < M ; k++ )
{
y[ k ]

+= ytemp[ k ] ;

ytemp[ k ] = y[ k + Lx ] ;
}
//--------------------------------------------------------------------------------//
for (i = 0; i < Lx ; i++ )
{
tempt = *( p_y_Uint32 + i ) ;
*( pdata_out + 4*i

) =

(Uint8) (

tempt & 0x000000FF

);
)

>> 8

) ;

>> 16

) ;

*( pdata_out + 4*i + 1 ) =

(Uint8) ( ( tempt & 0x0000FF00

*( pdata_out + 4*i + 2 ) =

(Uint8) ( ( tempt & 0x00FF0000

20

Bo co bi tp ln
GVHD: PGS.TS L Tin Thng

*( pdata_out + 4*i + 3 ) =

X l tn hiu tng t v s
Nhm 1

(Uint8) ( ( tempt & 0xFF000000 )

>> 24

) ;

}
fwrite( pdata_out, sizeof(Uint8), 4 * Lx, pfile_out) ;
}
//--------------------------------------------------------------------------------//
//--------------------------------------------------------------------------------//

fread( pdata_in, sizeof(Uint8), (sizefile - number_block * Lx * 4 ) ,


pfile_in ) ;
for ( i = 0 ; i < Lx ; i++ )
{
if ( i < (sizefile/4 - number_block * Lx ) )
{
data[0] =

(Uint32)( *( pdata_in + 4*i

) )

data[1] =

(Uint32)( *( pdata_in + 4*i + 1 ) ) << 8

data[2] =

(Uint32)( *( pdata_in + 4*i + 2 ) ) << 16

data[3] =

(Uint32)( *( pdata_in + 4*i + 3 ) ) << 24

*( p_x_Uint32 + i ) = (Uint32)( data[0] | data[1] |


data[2] | data[3] ) ;
}
else
*( p_x_Uint32 + i ) =

0 ;

}
//--------------------------------------------------------------------------------//
conv( M, h, Lx, x, y ) ;

21

Bo co bi tp ln
GVHD: PGS.TS L Tin Thng

X l tn hiu tng t v s
Nhm 1

for ( k = 0 ; k < M ; k++ )


{
y[ k ]

+= ytemp[ k ] ;

ytemp[ k ] = y[ k + Lx ] ;
}
//--------------------------------------------------------------------------------//
for (i = 0; i < Lx ; i++ )
{
tempt = *( p_y_Uint32 + i ) ;
*( pdata_out + 4*i

) =

(Uint8) (

tempt & 0x000000FF

) ;
8

) ;

16

) ;

24

) ;

*( pdata_out + 4*i + 1 ) =

(Uint8) ( ( tempt & 0x0000FF00 )

>>

*( pdata_out + 4*i + 2 ) =

(Uint8) ( ( tempt & 0x00FF0000 )

>>

*( pdata_out + 4*i + 3 ) =

(Uint8) ( ( tempt & 0xFF000000 )

>>

}
fwrite( pdata_out, sizeof(Uint8), 4 * Lx, pfile_out) ;
//--------------------------------------------------------------------------------//
for (i = 0; i < M ; i++ )
{
tempt = *( ytemp + i ) ;
*( pdata_out + 4*i

) =

(Uint8) (

tempt & 0x000000FF

) ;
8

16
24

*( pdata_out + 4*i + 1 ) =

(Uint8) ( ( tempt & 0x0000FF00 )

>>

*( pdata_out + 4*i + 2 ) =
) ;

(Uint8) ( ( tempt & 0x00FF0000 )

>>

*( pdata_out + 4*i + 3 ) =

(Uint8) ( ( tempt & 0xFF000000 )

>>

) ;

) ;
}

22

Bo co bi tp ln
GVHD: PGS.TS L Tin Thng

X l tn hiu tng t v s
Nhm 1

fwrite( pdata_out, sizeof(Uint8), 4 * M , pfile_out) ;


//--------------------------------------------------------------------------------//
//

Close

//--------------------------------------------------------------------------------//
free(pdata_in);
free(pdata_out) ;
fclose(pfile_in) ;
fclose(pfile_out) ;

III. Kt qu
Kt qu thc hin c
Nhm tm hiu l thuyt b FIR v mt s l thuyt lin quan trong bi tp ln
ny.
Tm c b lc c p ng ph hp vi yu cu ca project
Thc hin code trong CCS v build thnh cng
M phng MATLAB c kt qu ph hp vi yu cu

23

Bo co bi tp ln
GVHD: PGS.TS L Tin Thng

IV.

X l tn hiu tng t v s
Nhm 1

Ti liu tham kho


Gio trnh X l s tn hiu v wavelet L Tin Thng.
Gio trnh: Digital Design of Signal Processing Systems - Shoab Ahmed
Khan.
Gio trnh: Digital Signal Processing Using MATLAB, 3rd Edition
Vinay K.Ingle v John G.Proakis
Cc ti liu, ebook c thu thp trn mng Internet.

24

Das könnte Ihnen auch gefallen