#include "stdlib.h"
#include "stdio.h"
#include "typedef.h"
#include "Fir.h"
#define Length 80
#define FirOrder 22
void main()
{
Word16 i ;
Word16 Input[Length] ;
Word16 Output[Length] ;
Word16 Fir_Memory[FirOrder] ;
Word16 Fir_Coef[FirOrder] = { 3405, 571, -1029, 267, 38, 130, -79, -539, 1032, 45 } ;
// 产生随机输入数据, 以及随机的FIR滤波器状态
Input[0] = 392 ;
for( i = 1 ; i < Length ; i ++ )
{
Input[i] = (Word16)((51*(Input[i-1])+259)&0xffff) ;
}
Fir_Memory[0] = 9257 ;
for( i = 1 ; i < FirOrder ; i ++ )
{
Fir_Memory[i] = (Word16)((17*(Fir_Memory[i-1])+328)&0xffff) ;
}
Fir( Input, Output, Fir_Coef, Fir_Memory, FirOrder, Length ) ;
return ;
}