RM新时代网站-首页

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

DSP操作教程:有限沖激響應(yīng)濾波器算法(LCD顯示)

冬至子 ? 來源:創(chuàng)龍教儀-木江鵬 ? 作者:創(chuàng)龍教儀-木江鵬 ? 2023-11-08 16:55 ? 次閱讀

一、實(shí)驗(yàn)?zāi)康?/h1>

了解FIR濾波器的特點(diǎn),掌握程序算法生成濾波器系數(shù)的方法,并實(shí)現(xiàn)FIR濾波器濾除高頻信號(hào),并在LCD上顯示結(jié)果。

二、實(shí)驗(yàn)原理

FIR濾波器

FIR(Finite Impulse Response)濾波器:有限長(zhǎng)單位沖激響應(yīng)濾波器,又稱為非遞歸型濾波器,是數(shù)字信號(hào)處理系統(tǒng)中最基本的元件,它可以在保證任意幅頻特性的同時(shí)具有嚴(yán)格的線性相頻特性,同時(shí)其單位抽樣響應(yīng)是有限長(zhǎng)的,因而濾波器是穩(wěn)定的系統(tǒng)。因此,F(xiàn)IR濾波器在通信、圖像處理、模式識(shí)別等領(lǐng)域都有著廣泛的應(yīng)用。

有限脈沖響應(yīng)(FIR)濾波器(N-1階),不存在輸出對(duì)輸入的反饋支路,其單位脈沖h(n)是有限長(zhǎng)。對(duì)于一個(gè)FIR濾波器系統(tǒng),它的沖激響應(yīng)總是有限長(zhǎng)的,其系統(tǒng)函數(shù)可記為:

image.png

其中,N-1為FIR的濾波器的階數(shù)。

帶有常系數(shù)的FIR濾波器是一種LTI(線性時(shí)不變)數(shù)字濾波器。沖激響應(yīng)是有限的意味著在濾波器中沒有發(fā)反饋。長(zhǎng)度為N的FIR輸出對(duì)應(yīng)于輸入時(shí)間序列x(n)的關(guān)系由一種有限卷積和的形式給出,最基本的具體形式如下:

image.png

FIR濾波器特性

有限長(zhǎng)單位沖激響應(yīng)(FIR)濾波器有以下特點(diǎn):

(1)系統(tǒng)的單位沖激響應(yīng)h (n)在有限個(gè)n值處不為零。

(2)系統(tǒng)函數(shù)H(z)在|z|>0處收斂,極點(diǎn)全部在z = 0處(因果系統(tǒng))。

(3)結(jié)構(gòu)上主要是非遞歸結(jié)構(gòu),沒有輸出到輸入的反饋,但有些結(jié)構(gòu)中(例如頻率抽樣結(jié)構(gòu))也包含有反饋的遞歸部分。設(shè)FIR濾波器的單位沖激響應(yīng)h (n)為一個(gè)N點(diǎn)序列,0 ≤ n ≤N -1,則濾波器的系統(tǒng)函數(shù)為:H(z)=∑h(n)* z^(-n),就是說,它有(N-1)階極點(diǎn)在z = 0處,有(N-1)個(gè)零點(diǎn)位于有限z平面的任何位置。

FIR濾波器的設(shè)計(jì)

FIR濾波器的設(shè)計(jì)比較簡(jiǎn)單,就是要設(shè)計(jì)一個(gè)數(shù)字濾波器去逼近一個(gè)理想的低通濾波器。通常這個(gè)理想的低通濾波器在頻域上是一個(gè)矩形窗。

在數(shù)字信號(hào)處理中,傅里葉變換用來求取時(shí)域信號(hào)的頻率成分。因此,通過對(duì)特定頻率幅度和相位的響應(yīng),求取傅里葉變換的逆變換(IDFT),就可以求出滿足要求的數(shù)字濾波器。

設(shè)計(jì)FIR濾波器需要提供的參數(shù)

(1)濾波器的類型:低通、高通、帶通、帶阻

(2)濾波器的采樣頻率

(3)濾波器的系數(shù)個(gè)數(shù)

(4)阻帶衰減(dB)

(5)通帶紋波(dB)

(6)過渡帶帶寬(Hz)

算法生成FIR濾波系數(shù)

本實(shí)驗(yàn)利用Kaiser窗設(shè)計(jì)一個(gè)FIR低通濾波器,有用信號(hào)為100Hz,需要濾掉的信號(hào)為450Hz。

Kaiser窗是一種應(yīng)用廣泛的可調(diào)節(jié)窗,它可以通過改變窗函數(shù)的形狀來控制窗函數(shù)旁瓣的大小,從而在設(shè)計(jì)中可用濾波器的衰減指標(biāo)來確定窗函數(shù)的形狀。與其他窗相比,Kaiser窗最大的特點(diǎn)是可以同時(shí)調(diào)整主瓣和旁瓣寬度。 Kaiser窗的定義如下:

image.png

其中n=1,2,?,N-1 ,N 表示窗函數(shù)的總長(zhǎng)度, I_0是第一類貝瑟爾函數(shù)。β是一個(gè)可調(diào)參數(shù),可以通過改變?chǔ)碌闹祦碚{(diào)整窗函數(shù)的形狀,從而達(dá)到不同的阻帶衰減要求。

void filter_coefficient(int n, int band, float fs, float fln, float fhn, float wn, float beta, float h[])

n:濾波器階數(shù)(偶數(shù))

band:濾波器類型,1=低通,2=高通,3=帶通,4=帶阻

Fs:采樣頻率

fln:通帶上邊界頻率(低通) 、通帶下邊界頻率(高通、帶通、帶阻)

fhn:無意義(低通、高通)、通帶上邊界頻率(帶通、帶阻)

wn:濾波器窗體,1=retangular,2=tapered rectangular,3=triangular,4=Hanning,5=Hamming,6=Blackman,7=Kaiser

beta:Kaiser窗口的β參數(shù)(3< β <10)

h:濾波器系數(shù)

程序流程設(shè)計(jì):

設(shè)計(jì)中首先要進(jìn)行外設(shè)使能配置,然后進(jìn)行LCD管腳復(fù)用配置和LCD中斷配置,接著進(jìn)行LCD顯示和觸摸的初始化。然后通過FIR濾波器系數(shù)算法生成濾波因子,最后產(chǎn)生帶有噪聲的原始信號(hào)并進(jìn)行FIR濾波和FFT運(yùn)算,將結(jié)果顯示在LCD屏幕上,在循環(huán)中進(jìn)行觸摸檢測(cè),根據(jù)標(biāo)志位判斷顯示時(shí)域或者頻域波形。

image.png

數(shù)字信號(hào)處理庫(kù)

DSPLIB 包含優(yōu)化的、C語言可調(diào)用的通用信號(hào)處理例程,用于計(jì)算密集型實(shí)時(shí)應(yīng)用程序。 調(diào)用這些例程的運(yùn)行速度比直接用C語言編寫的等效代碼快得多。使用DSPLIB可以縮短應(yīng)用程序開發(fā)時(shí)間。

DSPLIB 3_4_0_0包括適用于 C64x+ 或 C66x 或 C674x 處理器的 Windows 或 Linux 安裝可執(zhí)行文件。 每個(gè)可執(zhí)行文件安裝一個(gè)組件包存儲(chǔ)庫(kù)、一個(gè)文檔目錄、一個(gè) Eclipse 插件目錄和一個(gè)擴(kuò)展的組件目錄結(jié)構(gòu),其中包含組件庫(kù)、頭文件和測(cè)試示例。

TMS320C6748處理器使用的是dsplib_c674x_3_4_0_0。

image.png

函數(shù)源碼

FIR濾波函數(shù)

使用DSPLIB 的庫(kù)來進(jìn)行FIR濾波。使用時(shí),直接包含“DSPF_sp_fir_r2.h”文件 即可。

API接口

void DSPF_sp_fir_r2(const float *x, const float *h,float *restrict r, const int nh, const int nr);

程序使用DSPLIB 的庫(kù)來進(jìn)行FIR濾波,調(diào)用的程序源碼和使用說明可以安裝DSPLIB后查看。調(diào)用的FIR濾波函數(shù)中:

第一個(gè)參數(shù)是指向大小為nr+nh-1 的輸入數(shù)組的指針。

第二個(gè)參數(shù)是指向大小為nh 的系數(shù)數(shù)組的指針。

第三個(gè)參數(shù)是指向大小為nr 的輸出數(shù)組的指針。

第四個(gè)參數(shù)是系數(shù)個(gè)數(shù)。

第五個(gè)參數(shù)是輸出樣本數(shù)

image.png

FFT運(yùn)算函數(shù)

使用DSPLIB 的庫(kù)來進(jìn)行FFT運(yùn)算。使用時(shí),直接包含“DSPF_sp_fftSPxSP.h”文件 即可。

API接口

void DSPF_sp_fftSPxSP(int N, float *ptr_x, float *ptr_w, float *ptr_y, unsigned char *brev, int n_min, int offset, int n_max);

程序使用DSPLIB 的庫(kù)來進(jìn)行FFT運(yùn)算,調(diào)用的程序源碼和使用說明可以安裝DSPLIB后查看。調(diào)用的FFT函數(shù)中:

第一個(gè)參數(shù)是樣本中FFT 的長(zhǎng)度,

第二個(gè)參數(shù)是指向數(shù)據(jù)輸入的指針。

第三個(gè)參數(shù)是指向復(fù)雜旋轉(zhuǎn)因子的指針。

第四個(gè)參數(shù)是指向復(fù)雜輸出數(shù)據(jù)的指針。

第五個(gè)參數(shù)是指向包含64 個(gè)條目的位反轉(zhuǎn)表的指針。如果樣本的FFT長(zhǎng)度可以表示為 4 的冪,

第六個(gè)參數(shù)是4,否則 第六個(gè)參數(shù)是 2 。

第七個(gè)參數(shù)是從主FFT開始的樣本中的子 FFT偏移索引 。

第八個(gè)參數(shù)是樣本中主FFT的大小。

image.png

FFT逆變換函數(shù)

使用DSPLIB 的庫(kù)來進(jìn)行FFT逆變換。使用時(shí),直接包含“DSPF_sp_ifftSPxSP.h”文件 即可。

API接口

void DSPF_sp_ifftSPxSP (int N, float *ptr_x, float *ptr_w, float *ptr_y,

unsigned char *brev, int n_min, int offset, int n_max);

程序使用DSPLIB 的庫(kù)來進(jìn)行FFT逆變換,調(diào)用的程序源碼和使用說明可以安裝DSPLIB后查看。調(diào)用的IFFT函數(shù)中:

第一個(gè)參數(shù)是樣本中FFT 的長(zhǎng)度。

第二個(gè)參數(shù)是指向數(shù)據(jù)輸入的指針。

第三個(gè)參數(shù)是指向復(fù)雜旋轉(zhuǎn)因子的指針。

第四個(gè)參數(shù)是指向復(fù)雜輸出數(shù)據(jù)的指針。

第五個(gè)參數(shù)是指向包含64 個(gè)條目的位反轉(zhuǎn)表的指針 。如果樣本的FFT長(zhǎng)度可以表示為 4 的冪,

第六個(gè)參數(shù)是4,否則第六個(gè)參數(shù)是2 。

第七個(gè)參數(shù)是從主FFT開始的復(fù)雜樣本中的子FFT偏移索引 。

第八個(gè)參數(shù)是樣本中主FFT的大小。

image.png

三、操作現(xiàn)象

實(shí)驗(yàn)設(shè)備

image.png

硬件連接

(1)連接仿真器電腦USB接口。

(2)將撥碼開關(guān)撥到DEBUG模式01111,連接實(shí)驗(yàn)箱電源,撥動(dòng)電源開關(guān)上電。

image.png

軟件操作

導(dǎo)入工程,選擇Demo文件夾下的對(duì)應(yīng)工程

編譯工程,生成可執(zhí)行文件

將CCS連接實(shí)驗(yàn)箱并加載程序

程序加載完成后點(diǎn)擊運(yùn)行程序

運(yùn)行程序后,LCD會(huì)顯示FIR濾波前后的時(shí)域波形,上方為100Hz信號(hào)與450Hz噪聲組成的混合信號(hào),下方為濾波后得到的結(jié)果(保留100Hz信號(hào))。

點(diǎn)擊一下LCD屏幕,會(huì)切換頻域波形,上方顯示原始頻域信號(hào)+噪聲,下方顯示濾波后的頻域波形,輸入波形為一個(gè)低頻率的正弦波與一個(gè)高頻的正弦波疊加而成,通過觀察頻域圖可知輸入波形中的低頻波形通過了濾波器,而高頻部分被濾除。

實(shí)驗(yàn)結(jié)束后,先點(diǎn)擊黃色按鈕暫停程序運(yùn)行,再點(diǎn)擊紅色按鈕退出CCS與實(shí)驗(yàn)板的連接,最后實(shí)驗(yàn)箱斷電即可。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 信號(hào)處理
    +關(guān)注

    關(guān)注

    48

    文章

    1026

    瀏覽量

    103256
  • 衰減器
    +關(guān)注

    關(guān)注

    4

    文章

    640

    瀏覽量

    34334
  • LCD顯示
    +關(guān)注

    關(guān)注

    0

    文章

    132

    瀏覽量

    18360
  • fir濾波器
    +關(guān)注

    關(guān)注

    1

    文章

    95

    瀏覽量

    19037
  • 傅里葉變換
    +關(guān)注

    關(guān)注

    6

    文章

    441

    瀏覽量

    42590
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    DSP教學(xué)實(shí)驗(yàn)箱_DSP算法實(shí)驗(yàn)_嵌入式教程:4-3 有限沖激響應(yīng)濾波器(FIR)算法(CCS顯示

    有限長(zhǎng)單位沖激響應(yīng)濾波器,又稱為非遞歸型濾波器,是數(shù)字信號(hào)處理系統(tǒng)中最基本的元件,它可以在保證任意幅頻特性的同時(shí)具有嚴(yán)格的線性相頻特性,同時(shí)其單位抽樣
    發(fā)表于 05-16 09:30

    FIR濾波器FAQ原理簡(jiǎn)述

      1、FIR 濾波器是在數(shù)字信號(hào)處理(DSP)中經(jīng)常使用的兩種基本的濾波器之一,另一個(gè)為IIR濾波器。  2、FIR代表有限
    發(fā)表于 09-24 16:05

    IIR濾波器和FIR濾波器的對(duì)比分析介紹

    1.兩種濾波器都是數(shù)字濾波器。根據(jù)沖激響應(yīng)的不同,將數(shù)字濾波器分為有限沖激響應(yīng)(FIR)
    發(fā)表于 06-26 06:15

    怎么實(shí)現(xiàn)有限沖激響應(yīng)濾波器的設(shè)計(jì)?

    本文介紹了應(yīng)用Altera 公司的FLEX10K系列CPLD快速完成卷積的方法實(shí)現(xiàn)有限沖激響應(yīng)(FIR)濾波器的設(shè)計(jì)。
    發(fā)表于 05-18 06:56

    本次視頻講解的是有限沖激響應(yīng)濾波器算法實(shí)驗(yàn),MATLAB輔助,LCD顯示

    本帖最后由 創(chuàng)龍教儀 于 2023-5-30 10:28 編輯 1、實(shí)驗(yàn)?zāi)康谋敬谓坛淌腔趧?chuàng)龍教儀DSP教學(xué)實(shí)驗(yàn)箱:TL6748-PlusTEB完成的本次視頻講解的是有限沖激響應(yīng)濾波器
    發(fā)表于 05-29 14:10

    4-6 無限沖激響應(yīng)濾波器(IIR)算法(MATLAB輔助,LCD顯示

    4-6 無限沖激響應(yīng)濾波器(IIR)算法(MATLAB輔助,LCD顯示) 實(shí)驗(yàn)?zāi)康?本次教程是基于 創(chuàng)龍教儀
    發(fā)表于 06-08 12:04

    國(guó)產(chǎn)教學(xué)實(shí)驗(yàn)箱_DSP教學(xué)實(shí)驗(yàn)箱_操作教程:4-4 有限沖激響應(yīng)濾波器(FIR)算法LCD顯示

    Response)濾波器有限長(zhǎng)單位沖激響應(yīng)濾波器,又稱為非遞歸型濾波器,是數(shù)字信號(hào)處理系統(tǒng)中最基本的元件,它可以在保證任意幅頻特性的同時(shí)
    發(fā)表于 11-08 15:40

    嵌入式操作教程:4-6 無限沖激響應(yīng)濾波器(IIR)算法(MATLAB 輔助,LCD顯示

    一、實(shí)驗(yàn)?zāi)康?了解IIR濾波器的特點(diǎn),掌握Matlab輔助設(shè)計(jì)濾波器系數(shù)的方法,并實(shí)現(xiàn)IIR濾波器濾除高頻信號(hào),并在LCD顯示結(jié)果。 二、
    發(fā)表于 11-16 15:08

    有限長(zhǎng)單位沖激響應(yīng)FIR數(shù)字濾波器的設(shè)計(jì)方法

    有限長(zhǎng)單位沖激響應(yīng)FIR數(shù)字濾波器的設(shè)計(jì)方法一、IIR濾波器的優(yōu)缺點(diǎn)二、FIR DF 優(yōu)點(diǎn)FIR濾波器在保證幅度特性滿足技術(shù)要求的同時(shí),很容
    發(fā)表于 07-25 11:47 ?40次下載

    有限沖激響應(yīng)數(shù)字濾波器設(shè)計(jì)

    有限沖激響應(yīng)數(shù)字濾波器設(shè)計(jì),希望大家能喜歡哦,加油哦。
    發(fā)表于 01-12 18:24 ?0次下載

    關(guān)于有限沖激響應(yīng)濾波器設(shè)計(jì)實(shí)驗(yàn)資料下載

    有限沖激響應(yīng)濾波器設(shè)計(jì)
    發(fā)表于 04-19 10:55 ?1次下載

    IIR濾波器和FIR濾波器詳細(xì)對(duì)比

    1.兩種濾波器都是數(shù)字濾波器。根據(jù)沖激響應(yīng)的不同,將數(shù)字濾波器分為有限沖激響應(yīng)(FIR)
    發(fā)表于 10-30 10:40 ?5次下載
    IIR<b class='flag-5'>濾波器</b>和FIR<b class='flag-5'>濾波器</b>詳細(xì)對(duì)比

    FIR濾波器和IIR濾波器的區(qū)別與聯(lián)系

    1.根據(jù)沖激響應(yīng)的不同,將數(shù)字濾波器分為有限沖激響應(yīng)(FIR)濾波器和無限沖激響應(yīng)(IIR)
    的頭像 發(fā)表于 12-30 23:45 ?3832次閱讀

    DSP C6000教學(xué)實(shí)驗(yàn)箱操作案例分享丨有限沖激響應(yīng)濾波器(FIR)算法LCD顯示

    》、《電機(jī)控制系統(tǒng)設(shè)計(jì)》、《DSP系統(tǒng)設(shè)計(jì)與應(yīng)用》向下滑動(dòng)查看所有實(shí)驗(yàn)列表內(nèi)容2?案例分享一、實(shí)驗(yàn)名稱:4-4有限沖激響應(yīng)濾波器(FIR)算法
    的頭像 發(fā)表于 09-13 08:08 ?455次閱讀
    <b class='flag-5'>DSP</b> C6000教學(xué)實(shí)驗(yàn)箱<b class='flag-5'>操作</b>案例分享丨<b class='flag-5'>有限</b><b class='flag-5'>沖激響應(yīng)</b><b class='flag-5'>濾波器</b>(FIR)<b class='flag-5'>算法</b>(<b class='flag-5'>LCD</b><b class='flag-5'>顯示</b>)

    DSP 數(shù)字信號(hào)處理實(shí)驗(yàn)箱操作有限沖激響應(yīng)濾波器(FIR)算法LCD顯示

    》、《電機(jī)控制系統(tǒng)設(shè)計(jì)》、《DSP系統(tǒng)設(shè)計(jì)與應(yīng)用》向下滑動(dòng)查看所有實(shí)驗(yàn)列表內(nèi)容2?案例分享一、實(shí)驗(yàn)名稱:4-4有限沖激響應(yīng)濾波器(FIR)算法
    的頭像 發(fā)表于 09-28 10:00 ?482次閱讀
    <b class='flag-5'>DSP</b> 數(shù)字信號(hào)處理實(shí)驗(yàn)箱<b class='flag-5'>操作</b>丨<b class='flag-5'>有限</b><b class='flag-5'>沖激響應(yīng)</b><b class='flag-5'>濾波器</b>(FIR)<b class='flag-5'>算法</b>(<b class='flag-5'>LCD</b><b class='flag-5'>顯示</b>)
    RM新时代网站-首页