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

📄 main.c

📁 基于DSP 6711 的数字滤波器
💻 C
字号:
//FIR 150阶Equiripple低通滤波器
//采样频率fs=9600,带通fpass=1000,带阻fstop=1500
//吴臻志作于2006/12/8
#include <c6x.h>
#include "math.h"
float input[1000],output[1000];
const float hn[151] = {
  -6.821143740954e-007,-8.231525454932e-007,-1.108515771199e-007,1.769728583639e-006,
  3.753287040544e-006,3.607900917028e-006,-4.7239123945e-007,-7.51758657807e-006,
  -1.271595790846e-005,-9.632331361307e-006,4.462181284995e-006,2.358438435872e-005,
  3.34393517595e-005,1.98858732021e-005,-1.812057573614e-005,-6.070789594826e-005,
  -7.400941691258e-005,-3.273273723983e-005,5.422780913429e-005, 0.000135971097565,
   0.000143919775049,4.108727354119e-005,-0.0001349276815218,-0.0002733053634464,
  -0.0002513733097153,-2.802956630823e-005,0.0002947805781212,0.0005028052058228,
  0.0003989811579797,-3.826670801028e-005,-0.0005828692740218, -0.00085794955583,
  -0.0005775977384193,0.0002099591904858, 0.001063525476571, 0.001370713219496,
  0.0007588097755802,-0.0005646503323556,-0.001815400887812,-0.002064867329854,
  -0.0008865502682663, 0.001210225925973, 0.002929702838291, 0.002948505083607,
  0.0008679687376017,-0.002290900672422, -0.00451007810814,-0.004007304978016,
  -0.0005620019874984, 0.003999424555613,  0.00667986825819, 0.005200291549417,
  -0.0002403921506735,-0.006608527518153,-0.009609688242407,-0.006459649192111,
   0.001862778436419,  0.01055735399654,  0.01359928445527, 0.007695483864648,
  -0.004875312327758, -0.01670713271109, -0.01932575537974, -0.00880541816368,
    0.01053989202493,  0.02723886866414,  0.02876171468146, 0.009687768039416,
   -0.02282788241895, -0.05017447068234, -0.05048285471445, -0.01025608656381,
    0.06667769300826,   0.1581747530314,   0.2321139939642,    0.260452339752,
     0.2321139939642,   0.1581747530314,  0.06667769300826, -0.01025608656381,
   -0.05048285471445, -0.05017447068234, -0.02282788241895, 0.009687768039416,
    0.02876171468146,  0.02723886866414,  0.01053989202493, -0.00880541816368,
   -0.01932575537974, -0.01670713271109,-0.004875312327758, 0.007695483864648,
    0.01359928445527,  0.01055735399654, 0.001862778436419,-0.006459649192111,
  -0.009609688242407,-0.006608527518153,-0.0002403921506735, 0.005200291549417,
    0.00667986825819, 0.003999424555613,-0.0005620019874984,-0.004007304978016,
   -0.00451007810814,-0.002290900672422,0.0008679687376017, 0.002948505083607,
   0.002929702838291, 0.001210225925973,-0.0008865502682663,-0.002064867329854,
  -0.001815400887812,-0.0005646503323556,0.0007588097755802, 0.001370713219496,
   0.001063525476571,0.0002099591904858,-0.0005775977384193, -0.00085794955583,
  -0.0005828692740218,-3.826670801028e-005,0.0003989811579797,0.0005028052058228,
  0.0002947805781212,-2.802956630823e-005,-0.0002513733097153,-0.0002733053634464,
  -0.0001349276815218,4.108727354119e-005, 0.000143919775049, 0.000135971097565,
  5.422780913429e-005,-3.273273723983e-005,-7.400941691258e-005,-6.070789594826e-005,
  -1.812057573614e-005,1.98858732021e-005,3.34393517595e-005,2.358438435872e-005,
  4.462181284995e-006,-9.632331361307e-006,-1.271595790846e-005,-7.51758657807e-006,
  -4.7239123945e-007,3.607900917028e-006,3.753287040544e-006,1.769728583639e-006,
  -1.108515771199e-007,-8.231525454932e-007,-6.821143740954e-007
};
   

void filter(){

		
		int n,i;
		float y;
		for (i=0;i<500;i++){
			input[i]=sin(2*3.1415926*900*i/9600)+sin(2*3.1415926*1200*i/9600)+sin(2*3.1415926*1500*i/9600);
		}
		//input[250]=1e37;
		for (i=0;i<500;i++){
			y=0;			
			for(n=0;n<=150;n++){
			if (i-n>=0)
				y=y+input[i-n]*hn[n];
			}
			output[i]=y;
		}
while(1);
}

void main(){
	filter();
}


⌨️ 快捷键说明

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