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

📄 firdesign.h

📁 可以实现FIR滤波器任意阶数和窗函数下的设计。并且有可以在VC下显示幅频响应曲线和滤波效果。
💻 H
字号:
// FIRDesign.h: interface for the CFIRDesign class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_FIRDESIGN_H__E290426D_C094_4B7A_AD3A_2F352B358554__INCLUDED_)
#define AFX_FIRDESIGN_H__E290426D_C094_4B7A_AD3A_2F352B358554__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

#define PI			3.14159265358979
//窗函数宏定义
#define	BOXCAR		1		//矩形窗
#define	BARTLETT	2		//巴特利特窗
#define	HANNING		3		//汉宁窗
#define	HAMMING		4		//哈明窗
#define	BLACKMAN	5		//布莱克曼窗
//FIR滤波器类型宏定义
#define	LP			1		//LowPass,低通滤波器
#define	HP			2		//HighPass,高通滤波器
#define	BP			3		//BandPass,带通滤波器
#define	BS			4		//BandStop,带阻滤波器

class CFIRDesign  
{
public:
	void Freqz(double* pAR, double* pPR, int nLen);
	void Filter(double* pSignal, int Length);
	void FIR(int N, double Wl, double Wh, int Type=BP, int Window=HAMMING);
	void FIR(int N, double Wc, int Type=LP, int Window=HAMMING);
	void Window(int M, int Type);
	CFIRDesign();
	virtual ~CFIRDesign();

	double* m_pWindow;		//窗函数数组指针
	double* m_pFIR;			//FIR滤波器冲击响应函数数组指针
	int m_nWindowLength;	//窗函数长度(与滤波器配合使用时,窗函数长度=滤波器长度=滤波器阶数+1)
	int m_nFilterOrder;		//滤波器阶数(滤波器长度=滤波器阶数+1)

private:

};

#endif // !defined(AFX_FIRDESIGN_H__E290426D_C094_4B7A_AD3A_2F352B358554__INCLUDED_)

⌨️ 快捷键说明

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