⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 iir.c

📁 这是本人在TI DSP C6713DSK开发板上开发的IIR滤波器实现程序
💻 C
字号:
//IIR.c  IIR filter using cascaded Direct Form II
//Coefficients a's and b's correspond to b's and a's from MATLAB

#include "DSK6713_AIC23.h"		//codec-DSK support file
Uint32 fs=DSK6713_AIC23_FREQ_8KHZ; 	//set sampling rate
#include "bs1750.cof"       	 //BS @ 1750 Hz coefficient file
short dly[stages][2] = {0};    //delay samples per stage

interrupt void c_int11()	 //ISR
{  
 short	i, input;
 int 	un, yn;

 input = input_sample();	 //input to 1st stage
 for (i = 0; i < stages; i++)  //repeat for each stage
 {
  un=input-((b[i][0]*dly[i][0])>>15) - ((b[i][1]*dly[i][1])>>15);

  yn=((a[i][0]*un)>>15)+((a[i][1]*dly[i][0])>>15)+((a[i][2]*dly[i][1])>>15);

  dly[i][1] = dly[i][0]; 	 //update delays
  dly[i][0] = un;             //update delays
  input = yn;  			 //intermediate output->input to next stage
 }
  output_sample((short)yn);          //output final result for time n
  return;				 //return from ISR
}

void main()
{
  comm_intr();                 //init DSK, codec, McBSP
  while(1);				 //infinite loop
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -