基于DSP/BIOS的FIR數(shù)字濾波器設(shè)計與實現(xiàn)
(2)新建一個DSP/BIOS的配置文件,命名為Fiher.cmd,并將其加入該工程中。在配置文件中設(shè)置所用到的硬件中斷,它對應(yīng)A/D采樣的硬件中斷。還需設(shè)置一個軟件中斷,用來對A/D轉(zhuǎn)換模塊采集到的數(shù)據(jù)濾波。因為濾波器處理數(shù)據(jù)需一定時間,所以將其放到軟件中斷中,通過BIOS的任務(wù)調(diào)度實現(xiàn)對信號的濾波。
(3)配置系統(tǒng)時鐘,系統(tǒng)有基于PLL的時鐘模塊,為器件及各種外設(shè)提供時鐘信號。在X1/XCLKIN和X2兩個引腳間連接一個30MHz的晶體振蕩器(可采用外部時鐘),將輸入的時鐘信號直接接到X1/XCLKIN引腳,而X2引腳懸空,這種情況下,不使用內(nèi)部振蕩器。然后經(jīng)PLL倍頻后,為系統(tǒng)提供時鐘。通過PLLCR寄存器的值可配置15~150 MHz的時鐘。則TMS320F2812得到SYSCLKOUT,通過配置高速外設(shè)時鐘HISPCP和慢速外設(shè)時鐘LOSPCP控制外設(shè),從而實現(xiàn)整個系統(tǒng)的時鐘系統(tǒng)控制。這里設(shè)置系統(tǒng)的時鐘HSPCLK為150 MHz。
(4)數(shù)字濾波器通過EVA1模塊設(shè)置采樣頻率。首先將該模塊配置為連續(xù)增計數(shù)模式。當(dāng)周期寄存器和定時器的值相等時,產(chǎn)生一個外設(shè)中斷請求,選擇其啟動A/D轉(zhuǎn)換器,則在中斷標志位置位的同時將A/D轉(zhuǎn)換啟動信號送至A/D轉(zhuǎn)換模塊。故只需配置定時器的周期值,便可改變A/D轉(zhuǎn)換器的采樣頻率。濾波器的通用定時器采用內(nèi)部CPU時鐘(HSPCLK)作為時鐘源,而內(nèi)部時鐘源可通過時鐘預(yù)定標參數(shù)寄存器設(shè)置。這里設(shè)置的內(nèi)部高速外設(shè)時鐘為系統(tǒng)時鐘。
(5)A/D轉(zhuǎn)換模塊的配置。A/D轉(zhuǎn)換模塊的A/D轉(zhuǎn)換器有16個通道,可配置為2個獨立的8通道模塊,分別服務(wù)于事件管理器A和B。兩個獨立的8通道模塊也可級聯(lián)構(gòu)成一個16通道模塊。盡管在模數(shù)轉(zhuǎn)換模塊中有多個輸入通道和兩個排序器,但僅有一個轉(zhuǎn)換器。將其配置為兩個獨立8通道模塊,讓EVA事件管理器A觸發(fā)A/D轉(zhuǎn)換器、信號從ADINAO引腳輸入,從ADCRESULTO結(jié)果寄存器中讀取轉(zhuǎn)換結(jié)果。
(6)處理采集到的數(shù)據(jù),即是對采集的信號進行濾波。首先根據(jù)信號通過濾波器設(shè)計過程進行運算,得到系統(tǒng)差分方程的系數(shù),用一個數(shù)組存放該系數(shù),以方便計算。主程序的數(shù)據(jù)采集即硬件中斷所要完成的工作。
為驗證所設(shè)計濾波器的濾波效果,將其應(yīng)用于某電路實驗的實測信號濾波,濾波前后波形如圖2所示。由圖2可看出,濾波效果較好。本文引用地址:http://butianyuan.cn/article/173546.htm
5 結(jié)論
所設(shè)計的濾波器濾波效果理想,達到了設(shè)計要求。在DSP/BIOS多任務(wù)的調(diào)度下,不但可在濾波算法的基礎(chǔ)上添加新任務(wù),實現(xiàn)多任務(wù)系統(tǒng),而且還能較好地滿足需進行濾波處理的系統(tǒng)開發(fā)。
評論