程控濾波器的設(shè)計【畢業(yè)論文】_第1頁
已閱讀1頁,還剩41頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、<p>  本科畢業(yè)設(shè)計(論文)</p><p><b>  ( 屆)</b></p><p>  論文題目 程控濾波器的設(shè)計</p><p>  (英文) Design of Program-Controlled Filter</p><p>  所在學(xué)院 電子信息學(xué)院

2、</p><p>  專業(yè)班級 電子信息工程 </p><p>  學(xué)生姓名 學(xué)號 </p><p>  指導(dǎo)教師 職稱 </p><p>  完成日期 年 月 日</p>&

3、lt;p><b>  摘 要</b></p><p>  在現(xiàn)代信號處理和電子應(yīng)用技術(shù)領(lǐng)域,濾波器作為一種必不可少的組成部分處在了一個十分重要的位置,并日益顯示出其巨大的應(yīng)用價值。盡管濾波技術(shù)的發(fā)展到現(xiàn)在只有七十多年的歷史,但它的發(fā)生與發(fā)展已經(jīng)歷了諸多變化,作為一種信號處理的技術(shù)已相當完善,不斷發(fā)揮著其重要的作用。本論文以C8051單片機作為主控制器,利用MAX262的工作原理,通過

4、編程可將整個系統(tǒng)設(shè)置成低通、高通、帶通、帶阻等不同特性的濾波器。系統(tǒng)還可通過編程設(shè)置濾波的中心頻率和品質(zhì)因數(shù)等濾波器的重要參數(shù)。輸入信號先經(jīng)過OP07進行放大后送入MAX262。MAX262的時鐘發(fā)生模塊采用DDS模塊產(chǎn)生正弦波,后經(jīng)74HC14施密特反向觸發(fā)器經(jīng)兩次反向后輸出方波輸入MAX262時鐘端,該時鐘用于改變截止頻率。</p><p>  關(guān)鍵詞:MAX262;編程;濾波器;</p>&l

5、t;p><b>  Abstract</b></p><p>  In the field of modern signal processing and application technology,Filter as an essential part is in a very important position, and increasingly showing its gre

6、at value.Even through the history of filter technology is only 70 years up to now.But its occurrence and development has gone through many changes.it has been quite well and continue to play an important role as a signal

7、 precessing technique.In this paper, i use C8051 as core controller,make use of MAX262's working principle,and can set </p><p>  Keywords: MAX262; programming; filter;</p><p><b>  目

8、錄</b></p><p><b>  1 緒論1</b></p><p>  1.1 課題背景、目的及意義1</p><p>  1.2 本課題研究現(xiàn)狀1</p><p>  2 方案設(shè)計與選擇2</p><p>  2.1 設(shè)計要求2</p><p&g

9、t;  2.2 總體方框圖2</p><p>  2.3 方案選擇2</p><p>  2.3.1 放大器選擇2</p><p>  2.3.2 濾波器選擇3</p><p>  2.3.3 控制模塊選擇3</p><p>  3 系統(tǒng)硬件電路設(shè)計5</p><p>  3.1 濾

10、波器的原理及其結(jié)構(gòu)5</p><p>  3.1.1濾波器的概念5</p><p>  3.1.2濾波器的結(jié)構(gòu)及分類5</p><p>  3.1.3濾波器的應(yīng)用場合6</p><p>  3.2 總體電路圖7</p><p>  3.3 放大模塊設(shè)計7</p><p>  3.4

11、濾波模塊設(shè)計8</p><p>  3.3.1 74HC373芯片簡介8</p><p>  3.3.2 MAX262芯片簡介9</p><p>  3.5 微處理器系統(tǒng)11</p><p>  3.4.1 C8051F00511</p><p>  3.4.2 時鐘電路12</p><

12、p>  3.4.3 復(fù)位電路12</p><p>  3.6 顯示部分設(shè)計13</p><p>  3.7 DDS信號源設(shè)計13</p><p><b>  4 軟件設(shè)計14</b></p><p>  4.1 主程序流程圖15</p><p>  4.2 按鍵程序設(shè)計15<

13、;/p><p>  4.3 編程參數(shù)的確定16</p><p>  5 設(shè)計驗證及測試方法19</p><p>  5.1程序可行性驗證19</p><p>  5.2各單元測試結(jié)果19</p><p><b>  6 總結(jié)22</b></p><p><b&g

14、t;  致 謝23</b></p><p><b>  參考文獻24</b></p><p>  附錄一 系統(tǒng)原理圖25</p><p>  附錄2 產(chǎn)品實物圖27</p><p>  附錄3 畢業(yè)設(shè)計作品說明書28</p><p>  附錄4 系統(tǒng)程序29</

15、p><p><b>  1 緒論</b></p><p>  1.1 課題背景、目的及意義</p><p>  在許多工程應(yīng)用領(lǐng)域,信號頻率的動態(tài)范圍往往很寬,這時就需要采用多種截止頻率的程控濾波器[1]。</p><p>  程控濾波器系統(tǒng)是根據(jù)目前濾波器的不足提出的,數(shù)字化能減少生產(chǎn)過程中的不確定因素和人為參與的環(huán)節(jié)數(shù)[

16、2],有效地解決電源模塊中諸如可靠性、智能化和產(chǎn)品一致性等工程問題,極大地提高生產(chǎn)效率和產(chǎn)品的可維護性。</p><p>  1.2 本課題研究現(xiàn)狀</p><p>  我國現(xiàn)有濾波器的種類和所覆蓋的頻率已基本上滿足現(xiàn)有各種電信設(shè)備。從整體而言,我國有源濾波器發(fā)展比無源濾波器緩慢,尚未大量生產(chǎn)和應(yīng)用。從下面的生產(chǎn)應(yīng)用比例可以看出我國各類濾波器的應(yīng)用情況:LC濾波器占50%;晶體濾波器占20

17、%;機械濾波器占15%;陶瓷和聲表面濾波器各占1%;其余各類濾波器共占13%。從這些應(yīng)用比例來看,我國電子產(chǎn)品要想實現(xiàn)大規(guī)模集成,濾波器集成化仍然是個重要課題[3]。---隨著電子工業(yè)的發(fā)展,對濾波器的性能要求越來越高,功能也越來越多,并且要求它們向集成方向發(fā)展。</p><p><b>  2 方案設(shè)計與選擇</b></p><p><b>  2.1 設(shè)

18、計要求</b></p><p>  設(shè)計并制作程控濾波器。放大器增益可設(shè)置;低通或高通濾波器通帶、截止頻率等參數(shù)可設(shè)置。</p><p>  (1)放大器輸入正弦信號電壓振幅為10mv,電壓增益最大為40dB,增益可調(diào),通頻帶為100HZ~40kHZ,放大器輸出電壓無明顯失真。</p><p>  (2)濾波器可設(shè)置為低通濾波器,其-3dB截止頻率fc

19、在1~20kHZ可調(diào),調(diào)節(jié)頻率為步進1kHZ,2fc 處放大器與濾波器的總電壓增益不大于30dB。</p><p> ?。?)濾波器可設(shè)置為高通濾波器,其-3dB截止頻率fc在1~20kHZ范圍內(nèi)可調(diào),調(diào)節(jié)頻率步進為1kHZ,0.5fc處放大器與濾波器的總電壓增益不大于30dB。</p><p> ?。?)有設(shè)置參數(shù)顯示功能。</p><p><b>  

20、2.2 總體方框圖</b></p><p>  圖2-2 總體方框圖</p><p><b>  2.3 方案選擇</b></p><p>  2.3.1 放大器選擇</p><p>  方案1:數(shù)字電位器控制兩級INA129級聯(lián)。用FPGA控制數(shù)字電位器DS1267使其輸出不同的阻值, 作為高精度儀表放大

21、器INA129的反饋電阻。通過控制數(shù)字電位器來改變INA129的放大倍數(shù), 從而實現(xiàn)放大器的增益可調(diào)。但數(shù)字電位器內(nèi)部結(jié)構(gòu)復(fù)雜。有電容影響,后級接運放后會帶來意想不到的后果。</p><p>  方案2:UA741通用高增益運算放大器,早些年最常用的運放之一。UA741是內(nèi)部相位補償電路的先驅(qū)產(chǎn)品,它的AC特性和噪聲特性較好。但是它的輸入極為雙極晶體管,所以偏流大功耗大[4]。</p><p

22、>  方案3:OP07是一種低噪聲,非斬波穩(wěn)零的雙極性運算放大器。由于OP07具有非常低的輸入失調(diào)電壓(對于OP07最大為25uV),所以O(shè)P07在很多應(yīng)用場合不需要額外的調(diào)零措施。OP07同時具有輸入偏置電流低(對于OP07最大為2mA)和開環(huán)增益高(對于OP07為300V/mV)的特點。這種低失調(diào)、高開環(huán)增益的特性使它特別適用于高增益的測量設(shè)備和放大傳感器的微弱信號等方面。</p><p>  因此本論

23、文使用方案3。</p><p>  2.3.2 濾波器選擇</p><p>  方案1:采用簡單的無源RC低通濾波器,但其無電壓放大倍數(shù),帶負載能力差。</p><p>  方案2:采用一階有源濾波器。由于引入了集成運放,濾波器的通帶電壓放大倍數(shù)和帶負載能力得到了提高,缺點是電路較復(fù)雜。</p><p>  方案3:使用Maxim 公司生產(chǎn)

24、的可編程濾波器芯片MAX262可以通過單片機控制實現(xiàn)低通、高通、帶阻以及全通濾波處理,且濾波的特性參數(shù)如中心頻率、品質(zhì)因數(shù)可調(diào),電路的外圍器件也較少。該方法使用靈活,調(diào)試容易,工作性能穩(wěn)定[4]。</p><p>  因此本論文使用方案3。</p><p>  2.3.3 控制模塊選擇</p><p>  方案1:使用FPGA控制濾波模塊。FPGA(Field-Pr

25、ogrammable Gate Array),即現(xiàn)場可編程門陣列,它是在PAL、GAL、CPLD等可編程器件的基礎(chǔ)上進一步發(fā)展的產(chǎn)物。它是作為專用集成電路(ASIC)領(lǐng)域中的一種半定制電路而出現(xiàn)的,既解決了定制電路的不足,又克服了原有可編程器件門電路數(shù)有限的缺點。</p><p>  方案2:使用單片機控制濾波模塊。C8051是一個低功耗,高性能CMOS 8位單片機,片內(nèi)含4k Bytes ISP(In-syst

26、em programmable)的可反復(fù)擦寫1000次的FLASH只讀程序存儲器,器件采用ATMEL公司的高密度、非易失性存儲技術(shù)制造,兼容標準MCS-51指令系統(tǒng)及C8051引腳結(jié)構(gòu),芯片內(nèi)集成了通用8位中央處理器和ISP Flash存儲單元,C8051在眾多嵌入式控制應(yīng)用系統(tǒng)中得到廣泛應(yīng)用[5]。</p><p>  考慮到芯片的使用需要,本論文采用方案2。</p><p>  3 系

27、統(tǒng)硬件電路設(shè)計</p><p>  3.1 濾波器的原理及其結(jié)構(gòu)</p><p>  3.1.1濾波器的概念</p><p>  允許某一部分頻率的信號順利的通過,而另外一部分頻率的信號則受到較大抑制,它實質(zhì)上是一個選頻電路。濾波器中,把信號能通過的頻率范圍,稱為通頻帶或通帶;反之,信號受到很大衰減或完全被抑制的頻率范圍稱為阻帶;通帶和阻帶之間的分界頻率稱為截止頻率

28、;理想濾波器在通帶內(nèi)的電壓增益為常數(shù),在阻帶內(nèi)的電壓增益為零;實際濾波器的通帶和阻帶之間存在一定頻率范圍的過渡帶。</p><p>  3.1.2濾波器的結(jié)構(gòu)及分類</p><p>  從濾波的概念出現(xiàn)后,濾波器就開始登上電子平臺,濾波器的結(jié)構(gòu)也經(jīng)歷了多次演變。根據(jù)濾波器的特性和應(yīng)用場合其結(jié)構(gòu)形式是很多的。</p><p>  從功能上分:低、帶、高、帶阻</

29、p><p>  從設(shè)計方法上分:切比雪夫、巴特沃斯、貝賽爾、橢圓</p><p>  切比雪夫濾波器:是在通帶或阻帶上頻率響應(yīng)幅度等波紋波動的濾波器。根據(jù)頻率響應(yīng)曲線波動位置的不同,切比雪夫濾波器可以分為兩種。在通帶上頻率響應(yīng)幅度等波紋波動的濾波器稱為“I型切比雪夫濾波器”。在阻帶上頻率響應(yīng)幅度等波紋波動的濾波器稱為“II型切比雪夫濾波器”。</p><p>  巴特沃

30、斯濾波器:巴特沃斯濾波器的特點在通頻帶內(nèi)的頻率響應(yīng)曲線最大限度平坦,沒有起伏,而在阻頻帶則逐漸下降為零。</p><p>  貝賽爾濾波器:貝塞爾濾波器具有最平坦的幅度和相位相應(yīng)。帶通(通常為用戶關(guān)注區(qū)域)的相位響應(yīng)近乎呈線性。濾波器可用于減少所有IIR濾波器固有的非線性相位失真。貝賽爾濾波器常用在音頻天橋系統(tǒng)中。</p><p>  橢圓濾波器:那個橢圓濾波器又稱考爾濾波器,是在通帶和阻

31、帶等波紋的一種濾波器。橢圓濾波器相比其他類型的濾波器,在階數(shù)相同的條件下有著最小的通帶和阻帶波動。它在通帶和阻帶的波動相同,這一點區(qū)別于在通帶和阻帶都平坦的巴特沃斯濾波器,以及通帶平坦、阻帶等波紋或是阻帶平坦、通帶等波紋的切比雪夫濾波器。</p><p><b>  圖3-1 </b></p><p>  從信號形式分:數(shù)字濾波、模擬濾波</p><

32、;p>  數(shù)字濾波數(shù)字濾波(digitalfilter)是由數(shù)字乘法器、加法器和延時單元組成的一種計算方法。其功能是對輸入離散信號的數(shù)字代碼進行運算處理,以達到改變信號頻譜的目的。</p><p>  由模擬電路實現(xiàn)的濾波方法,在采樣前先用模擬濾波器進行濾波,可以改善信號質(zhì)量,減少后續(xù)數(shù)據(jù)處理的工作量和困難。</p><p>  從利用元件分:有源濾波、無源濾波</p>

33、<p>  無源濾波器是包括無源電容濾波器、無源電感濾波器、無源電容電感混合濾波器以及利用其它電子元件構(gòu)成的濾波電路。</p><p>  有源濾波器是由無源的電感、電容組成的濾波網(wǎng)絡(luò)加上有源的運放芯片組成的濾波電路[6]。</p><p>  3.1.3濾波器的應(yīng)用場合</p><p>  濾波器在電子領(lǐng)域中占有很重要的地位,在其他領(lǐng)域中也相當重要,

34、因此它的應(yīng)用范圍很廣,在信號處理,抗干擾處理,電力系統(tǒng),抗混疊處理等等領(lǐng)域中應(yīng)用廣泛。</p><p>  濾波器不僅在弱電系統(tǒng)中有很廣的應(yīng)用,在強點系統(tǒng)中也有相當重要的地位。在強點整流中需要將尖峰脈沖濾除,在可控硅脈沖節(jié),要防止誤脈沖,因此我們也要加防干擾的濾波電路。</p><p><b>  3.2 總體電路圖</b></p><p>

35、;  圖3-2 總體電路圖</p><p>  控制核心采用C8051芯片,用51的P3口來選擇MAX262的地址和送數(shù)據(jù),由于地址和數(shù)據(jù)采用P3口,所以用74HC373來鎖存地址信號。信號的輸入經(jīng)過放大電路放大后送入MAX262,放大電路采用芯片OP07。通過DDS模塊輸出不同頻率的正弦波,經(jīng)74HC14變成方波后輸入MAX262,來改變MAX262的時鐘頻率。</p><p>  按鍵

36、和顯示電路采用芯片7279來實現(xiàn)中心頻率的設(shè)置,范圍最大為999999HZ,7279芯片是一個按鍵和顯示芯片,它可以節(jié)省單片機的并口資源。</p><p>  3.3 放大模塊設(shè)計</p><p>  本設(shè)計采用OP07放大器,OP07芯片提供環(huán)氧樹脂8引腳PDIP和8引腳SOIC兩種封裝,是725、108A、OP05放大器的直接替代產(chǎn)品。它是一種低噪聲,非斬波穩(wěn)零的雙極性運算放大器集成電

37、路。由于OP07具有非常低的輸入失調(diào)電壓(對于OP07A最大為25μV),所以O(shè)P07在很多應(yīng)用場合不需要額外的調(diào)零措施。OP07同時具有輸入偏置電流低(OP07A為±2nA)和開環(huán)增益高(對于OP07A為300V/mV)的特點,這種低失調(diào)、高開環(huán)增益的特性使得OP07特別適用于高增益的測量設(shè)備和放大傳感器的微弱信號等方面[7]。</p><p><b>  OP07引腳說明:</b&g

38、t;</p><p>  圖3-1 OP07引腳圖</p><p>  1和8為偏置平衡(調(diào)零端),2為反向輸入端</p><p>  3為正向輸入端,4接地,5空腳,6為輸出,7接電源+</p><p>  圖3-2 放大電路圖</p><p>  該放大電路可對輸入信號進行10到100倍的放大。</p>

39、<p>  3.4 濾波模塊設(shè)計</p><p>  3.4.1 74HC373芯片簡介</p><p>  74HC373是一塊常用的地址鎖存器芯片,它的實質(zhì)是一個帶有三態(tài)緩沖輸出的8D觸發(fā)器,在單片機系統(tǒng)中為了擴展外部存儲器,通常需要一塊74HC373芯片。其引腳如圖:</p><p>  圖3-3 74HC373引腳圖</p>&l

40、t;p>  3.4.2 MAX262芯片簡介</p><p>  MAX262是CMOS雙二階通用開關(guān)電容有源濾波器,由微處理器精確控制濾波器函數(shù)。它可構(gòu)成帶通、低通、高通和全通配置,且不需外部元件。每個器件含有兩個二階濾波器,兩個可編程ROM和邏輯借口,每個濾波器部分又都包含兩個級聯(lián)的積分器和加法器。在程序控制下設(shè)置中心頻率f0、品質(zhì)因數(shù)Q和濾波器工作方式。圖2-1是它的內(nèi)部結(jié)構(gòu)[7]。</p>

41、;<p>  MAX262主要由放大器、積分器、電容切換網(wǎng)絡(luò)(SCN)和工作模式選擇器組成。積分器、電容切換網(wǎng)絡(luò)(SCN)和工作模式選擇器分別由編程數(shù)據(jù)M0M1,F(xiàn)0~F5和Q0~Q6控制。MAX262內(nèi)部有兩個二級濾波器,濾波器A和B可以單獨使用,也可級聯(lián)成四階濾波器使用。芯片的使用非常靈活,但它們均受同一組編程數(shù)據(jù)控制。</p><p>  MAX262芯片的工作頻率為1HZ~140kHZ。當時

42、鐘頻率為4MHZ,工作模式選擇為模式3時,芯片可以對140kHZ的輸入信號進行濾波處理。其他工作模式的最高工作頻率為100kHZ。濾波器A和B可以采用內(nèi)部時鐘,也可以采用外部時鐘。外部時鐘分別從芯片的CLKA、CLKB引入,對外部時鐘無占空比要求。如果要對更低頻率的信號進行濾波處理,可采用MAX260芯片,它的工作頻率為0.01HZ~7.5kHZ。輸入低頻的信號可以直接送到MAX260芯片的輸入端(INA或INB引腳),輸入信號的幅度范

43、圍是0V~+5V。</p><p>  MAX262內(nèi)部有2個二階濾波器A和B,它們可以單獨使用,也可以級聯(lián)成四階濾波器使用。每個濾波器組件都有其各自的輸入時鐘fclk獨立的中心頻率f0和品質(zhì)因數(shù)Q。實際濾波器的中心頻率f0由濾波器的輸入時鐘頻率fclk、6位中心頻率控制字(F0~F5)和工作方式(M0,M1)三者共同確定。每個組件的品質(zhì)因數(shù)Q是由7位控制字(Q0~Q6)獨立設(shè)置的。外部時鐘分別從引腳CLKA、C

44、LKB引入,對外部時鐘無占空比要求。但需要注意的是,在MAX262濾波器的內(nèi)部,其采樣速率是輸入的一半。兩位數(shù)據(jù)值在四位地址為的控制下,在WR的下降沿經(jīng)邏輯接口給濾波器A、B的中心頻率f0、品質(zhì)因數(shù)Q及工作模式控制字分別賦予不同的值,從而實現(xiàn)各種功能的濾波[8]。</p><p>  MAX262地址對應(yīng)的數(shù)據(jù)如下表。</p><p><b>  濾波模塊電路圖</b>

45、;</p><p>  3.5 微處理器系統(tǒng)</p><p>  3.5.1 C8051F005</p><p>  C8051F005是完全集成的混合信號系統(tǒng)級芯片,具有與8051兼容的高速CIP-51內(nèi)核,與MCS-51指令集完全兼容,內(nèi)置32KB的FLASH程序存儲器、具有256B內(nèi)部RAM和2048的XRAM。C8051F005單片機具有片內(nèi)調(diào)試電路,可通過

46、JTAG接口可以進行非侵入式、全速的在系統(tǒng)調(diào)試。該單片機供電電壓為2.7~3.6V[7]。</p><p>  圖3-3 C8051引腳圖</p><p>  3.5.2 時鐘電路</p><p>  如圖3-5是單片機外圍時鐘電路,該電路采用內(nèi)部時鐘方式,片內(nèi)高增益反相放大器XTAL1、XTAL2外接作為反饋元件的晶體(呈感性)與電容組成的并聯(lián)諧振回路構(gòu)成一個自激

47、振蕩器向內(nèi)部時鐘電路提供振蕩時鐘。電容容量的大小會輕微影響振蕩頻率的高低、振蕩器工作的穩(wěn)定性、起振的難易程序及溫度穩(wěn)定性。如果使用石英晶體,我們推薦電容使用30pF士IOpF,而如使用陶瓷諧振器建議選擇40pF士lOF[7]。</p><p>  圖3-4 單片機外圍時鐘電路</p><p>  3.5.3 復(fù)位電路</p><p>  圖3-5 單片機復(fù)位電路&

48、lt;/p><p>  復(fù)位電路如圖3-6所示。當按下“復(fù)位”按鈕時,使單片機進入復(fù)位狀態(tài)。</p><p>  3.6 顯示部分設(shè)計</p><p>  LED基本上是一塊很小的晶片被封裝在環(huán)氧樹脂里,所以它非常小,非常輕。LED為直流驅(qū)動,超低功耗(單管0.03~0.06瓦),電功率轉(zhuǎn)換接近100%。一般來說LED的工作電壓是2~3.6V,工作電流是0.02~0.0

49、3A,也就是說,他消耗的電能不超過0.1W。本論文的顯示部分電路如圖所示。</p><p>  圖3-6 7279顯示模塊電路圖</p><p>  3.7 DDS信號源設(shè)計</p><p>  DDS技術(shù)是根據(jù)尼奎斯特取樣定理,從連續(xù)信號的相位出發(fā),將一個正弦信號取樣、量化、編碼形成一個正弦函數(shù)表存正在ROM中。合成時,通過改變相位累加器的頻率控制字來改變相位增量

50、。相位增量不同將導(dǎo)致一周期內(nèi)的取樣點數(shù)的不同,在取樣頻率不變的情況下,通過改變相位累加器的頻率控制字,將這種變化的相位除以幅值量化的數(shù)字信號,通過D/A轉(zhuǎn)換及低通濾波器即可得到合成的相位變化的模擬信號頻率。對于一個簡單的直接數(shù)字頻率合成器,它看可以分為參考頻率源、相位累加器、可編程只讀存儲器(PROM)和D/A轉(zhuǎn)換器四部分。</p><p>  DDS的輸出信號頻率與頻率控制字之間的關(guān)系由下式?jīng)Q定:</p&

51、gt;<p>  FTW=(F0×2^N)/SYSCLK</p><p>  其中FTW表示頻率控制字,N表示位數(shù),f0為期望信號頻率,SYSCLK為系統(tǒng)時鐘。</p><p>  由于DDS模塊產(chǎn)生的是峰峰值為50mA的正弦波,而MAX262濾波模塊需要峰峰值為6~10V的方波,故需對DDS模塊的輸出信號進行放大等處理:DDS模塊輸出的信號先經(jīng)過放大器放大。倍數(shù)為

52、10~100倍,后經(jīng)過74HC14(74HC14實現(xiàn)了6路施密特觸發(fā)反相器,可將緩慢變化的輸入信號轉(zhuǎn)換成清晰、無抖動的輸出信號)將正弦波轉(zhuǎn)換為方波[9]。</p><p>  圖3-7 DDS電路圖</p><p><b>  4 軟件設(shè)計</b></p><p>  系統(tǒng)軟件主要包括按鍵、數(shù)碼顯示模塊等。</p><p&g

53、t;  4.1 主程序流程圖</p><p>  系統(tǒng)軟件采用C語言編制。主程序的功能是完成系統(tǒng)的初始化、鍵盤處理和信息顯示。系統(tǒng)軟件設(shè)計總體流程框圖如圖4-1所示。</p><p>  圖4-1 系統(tǒng)軟件設(shè)計總體流程框圖</p><p>  4.2 按鍵程序設(shè)計</p><p>  按鍵模塊是由4個按鍵組成KEY1、KEY2、KEY3、K

54、EY4、KEY5組成,KEY1為換屏鍵,用來分別輸入f0和Q的值;KEY2為換位閃爍鍵,KEY3與KEY4分別為加和減,用來調(diào)整數(shù)碼管顯示的值;KEY5為確定鍵,將預(yù)置的f0和Q的值送入MAX262進行處理。</p><p><b>  按鍵流程圖如下:</b></p><p>  4.3 編程參數(shù)的確定</p><p>  MAX262芯片有

55、三個編程參數(shù):中心頻率f0、Q值和工作模式。中心頻率由編程數(shù)據(jù)F0~F5控制,共64個不同的二進制數(shù)據(jù),每個數(shù)據(jù)對應(yīng)一個時鐘頻率fclk與中心頻率f0的比值fclk/f0,Q由編程數(shù)據(jù)Q0~Q7控制,共128個不同的二進制數(shù)據(jù),每個數(shù)據(jù)對應(yīng)一個Q值,最小的Q值為0.5,最大的Q值為64(如果芯片工作在模式2則可達90.5)。工作模式由編程數(shù)據(jù)M0M1決定,分別對應(yīng)工作模式1、2、3和4。模式1可以實現(xiàn)低通、帶通、和帶阻濾波;模式2基本與

56、模式1相同,只是該模式可以獲得更高的Q值;模式3是唯一實現(xiàn)高通濾波的模式;而只有模式4才能實現(xiàn)全通濾波,它和模式3也可以實現(xiàn)低通和帶通濾波。</p><p>  編程參數(shù)f0、Q值和工作模式確定后,只要將相應(yīng)的編程數(shù)據(jù)裝入MAX262芯片內(nèi)部寄存器,濾波器的類型和頻率特性也就確定了。本實驗采用計算的方法確定編程數(shù)據(jù),公式如下:</p><p>  fclk/f0=(26+N)π/2

57、 (4-1)</p><p>  Q=64/(128-N) 工作模式為1、3、4時 (4-2)</p><p>  Q=90.5/(128-N) 工作模式為2時 (4-3)</p><p>  編程數(shù)據(jù)N所對應(yīng)的地址如下圖</p><p> 

58、 從圖中可知每對MAX262進行一次新的設(shè)置要分8次寫入。</p><p><b>  濾波流程圖如下:</b></p><p>  通過子函數(shù)分別將f和Q轉(zhuǎn)換成頻率控制字,分7次寫入MAX262 每次兩位</p><p><b>  子函數(shù)代碼如下:</b></p><p>  void Filt

59、er() </p><p><b>  {</b></p><p>  fn0=Fn(F0);//將輸入的頻率轉(zhuǎn)化為頻率控制字</p><p>  fn[0]=fn0&0x03;</p><p>  fn[1]=(fn0&0x0c)>>2;</p><p>  

60、fn[2]=(fn0&0x30)>>4;</p><p>  qn0=Qn(Q0);//將輸入的Q轉(zhuǎn)化為Q控制字</p><p>  qn[0]=qn0&0x03;</p><p>  qn[1]=(qn0&0x0c)>>2;</p><p>  qn[2]=(qn0&0x30)&

61、gt;>4;</p><p>  qn[3]=(qn0&0x40)>>6;</p><p>  TransFilter(101000); //設(shè)定工作模式3 濾波器B</p><p>  for(i=0;i<3;i++)</p><p><b>  {</b></p>&l

62、t;p>  TransFilter((fn[i]<<4)+i+1+8); 輸入頻率控制字</p><p><b>  }</b></p><p>  for(i=0;i<4;i++)</p><p><b>  { </b></p><p>  TransFilter((qn

63、[i]<<4)+i+4+8); 輸入品質(zhì)因數(shù)控制字</p><p><b>  }</b></p><p><b>  }</b></p><p>  5 設(shè)計驗證及測試方法 </p><p>  5.1程序可行性驗證</p><p>  該電路使用C語言編寫,

64、通過keil軟件,將編寫的程序下載到單片機芯片中。對具體的實物進行調(diào)試,7279能成功的顯示并設(shè)置參數(shù),并能傳送控制字到MAX262,基本完成了課題所需要完成的目標。</p><p>  5.2各單元測試結(jié)果</p><p>  DDS模塊輸出波形經(jīng)放大器及74HC14處理后的波形</p><p>  設(shè)定低通截止頻率為10KHZ 調(diào)節(jié)輸入波形頻率,觀察輸出波形如圖

65、:</p><p>  由圖可知頻率大于10KHZ后 波形出現(xiàn)一定程度的衰減。</p><p>  設(shè)定高通截止頻率為20KHZ 調(diào)節(jié)輸入波形頻率,觀察輸出波形如圖:</p><p>  由圖可知頻率小于20KHZ時 波形出現(xiàn)一定程度的衰減</p><p><b>  6 總結(jié) </b></p><

66、;p>  大學(xué)四年即將在畢業(yè)設(shè)計總結(jié)上劃上一個圓滿的句號,我曾經(jīng)以為時間是一個不快不慢的東西,但現(xiàn)在我感到時間過的是多么的飛快,感覺就在一眨眼之間結(jié)束了我的大學(xué)生涯。畢業(yè)設(shè)計是一個最能把理論知識運用到實踐當中的過程。這也是我們從一個學(xué)生走向社會的一個轉(zhuǎn)折點,另一個生命歷程的開始。畢業(yè)設(shè)計的幾個月,我學(xué)到了很多,也成熟了很多。</p><p>  本系統(tǒng)需要通過硬件調(diào)試和軟件調(diào)試,許多硬件錯誤是在軟件調(diào)試中被

67、發(fā)現(xiàn)和糾正的。但通常是先排除明顯的硬件故障以后,再和軟件結(jié)合起來調(diào)試以進一步排除故障??梢娪布恼{(diào)試是基礎(chǔ),如果硬件調(diào)試不通過,軟件設(shè)計則是無從做起。我在程序設(shè)計方面并沒有遇到很大的問題,采取的是C語言完成所有程序,不過在調(diào)試時遇到一些困難,因為沒有打開c8051f000.h的文件,所以運行了很多次都是錯誤的,不過后來經(jīng)過同學(xué)的提醒,順利的完成了程序的運行。</p><p>  通過幾個月的努力學(xué)習(xí),我學(xué)到了很多

68、未曾知道的新知識,也了解到很多關(guān)于步進電機的知識。期間,從最初的選題,開題到收集資料、制作直到完成設(shè)計,每一個過程都是對自己能力的一次考驗。當然我也碰到了很多困難,通過查找中外資料,老師指導(dǎo),與同學(xué)交流,反復(fù)修改畢業(yè)論文,終于順利的完成了畢業(yè)設(shè)計。</p><p>  本設(shè)計按照任務(wù)書的要求,完成了對電路設(shè)計、選材、實物制作及調(diào)試,最終實現(xiàn)了程控濾波器的功能。</p><p><b&

69、gt;  致 謝</b></p><p>  一轉(zhuǎn)眼,在電子信息學(xué)院四年的校園生活就要結(jié)束了,雖然說是順利的完成了所有的學(xué)業(yè),但是即將離開學(xué)校卻還是覺得十分的不舍。在萬里學(xué)院四年里,讓我感觸很深。在學(xué)習(xí)上,自己應(yīng)該要有求新的意識和學(xué)習(xí)新知識的能力。在工作上,我在學(xué)生會得到了很多鍛煉自己的機會。在這里我要特別感謝老師對我的照顧,他們在學(xué)習(xí)過程當中給予我指導(dǎo)、鼓勵、幫助,最重要的是教導(dǎo)我們?nèi)绾螢槿颂幨隆?/p>

70、這讓我不僅在學(xué)業(yè)方面收益頗多,在待人處事方面也受益非淺。</p><p>  首先衷心感謝導(dǎo)師!從論文的選題、可行性分析、文獻的收集、到課題研究的開展,特別是論文的撰寫,導(dǎo)師都給予了無微不至的關(guān)懷,提出了許多建設(shè)性的意見。導(dǎo)師嚴謹?shù)闹螌W(xué)態(tài)度、淵博的學(xué)識,保證了畢業(yè)設(shè)計和論文的順利完成;工作上不辭辛勞、踏實敬業(yè)的高尚精神,生活中質(zhì)樸謙和、誨人不倦的師者風范,給我留下了深深的印象,是我學(xué)習(xí)的楷模,鞭策著我不斷進步。導(dǎo)

71、師不僅傳授了我寶貴的知識,還在思想上給予我深刻的教誨,在生活上給予我無微不至的關(guān)懷。由于自己一直在外實習(xí)工作沒時間做畢業(yè)設(shè)計,但是老師并沒有放棄我,而是不時的督促我,指導(dǎo)我,通過電話,短信,QQ全方面的給我輔導(dǎo),花費了不少的精力。在此,我向她表示最衷心的感謝!由衷的說句“老師您辛苦啦!”</p><p><b>  參考文獻</b></p><p>  [1] 全國大

72、學(xué)生電子設(shè)計競賽組委會.全國大學(xué)生電子設(shè)計競賽獲獎作品 (2007)[M].北京:北京理工大學(xué)出版社.2007.</p><p>  [2] 潘秀琴,李元,盧勇.基于FPGA 程控濾波器設(shè)計與實現(xiàn)[J].微計算機信息,2010(11) 124—126.PAN Xiu-qin,LI Yuan,LU Yong.The design and realization of programmable filter ba

73、sed on FPGA [J1].MicrocomputerInformation,2010(11):124—126.</p><p>  [3] 蓋克勝,楊斌.程控濾波器[J].吉林:技術(shù)與教育,2008(1).</p><p>  [4] 董尚斌.電子線路(1)[M].清華大學(xué)出版社,2006 .</p><p>  [5] Arthur B Williams

74、.電子濾波器設(shè)計手冊[M].喻春軒,譯.北京:電子工 業(yè) 版社.1986.</p><p>  [6] 丁玉美,高西全. 數(shù)字信號處理(第二版) [M ]. 西安:西安電子科技大學(xué)出版社, 2000: 182—187.</p><p>  [7] Maxim Integrated Products Microprocessor Programmable UniversalActive

75、 Filters www.maxim-it.Com</p><p>  [8] 馬忠梅.單片機的C語言應(yīng)用程序設(shè)計[M].北京:北京航空航天大學(xué)出版社.2008</p><p>  [9] 潘永雄.新編單片機原理與應(yīng)用(第二版) [M]. 西安:西安電子科技大學(xué)出社,2007: 143—144.</p><p>  [10] 黃正瑾. 電子設(shè)計競賽賽題解析[M

76、]. 南京: 東南大學(xué)出版社, 2004.</p><p><b>  附錄一 系統(tǒng)原理圖</b></p><p><b>  單片機電路</b></p><p><b>  附錄2 產(chǎn)品實物圖</b></p><p>  附錄3 畢業(yè)設(shè)計作品說明書</p>&

77、lt;p><b>  一、作品名稱</b></p><p><b>  程控濾波器的設(shè)計</b></p><p><b>  二、作品功能</b></p><p>  程控濾波器放大器增益可設(shè)置;低通或高通濾波器通帶、截止頻率等參數(shù)可設(shè)置。</p><p><b&g

78、t;  三、運行環(huán)境</b></p><p><b>  硬件環(huán)境:</b></p><p>  C8051F005的典型單片機開發(fā)系統(tǒng)板</p><p><b>  軟件環(huán)境:</b></p><p>  用C語言編寫,通過Silicon labs軟件進行程序的編譯和修改,再將程序下載

79、到C8051F005單片機中,就可以檢驗程序是否正確。</p><p><b>  四、操作步驟</b></p><p>  1、連好各個部分的電路</p><p><b>  2、接通電源</b></p><p><b>  3、改變參數(shù)</b></p><

80、;p><b>  4、查看結(jié)果</b></p><p><b>  五、注意事項</b></p><p>  1、在接通電器安全時要注意安全</p><p>  2、單片機連接時要選擇適合的電源,防止燒壞</p><p><b>  附錄4 系統(tǒng)程序</b></p

81、><p>  #include <c8051f000.h></p><p>  #include <stdio.h></p><p>  #include<absacc.h></p><p>  #include<intrins.h></p><p>  #define no

82、p _nop_()</p><p>  #define fclk 2 //2Mhz 即2000khz,和后面0.637恰好抵消小數(shù)部分</p><p>  sbit WrMax262=P3^6;</p><p>  void Filter();</p><p>  void TransFilter(uchar ContrData);&

83、lt;/p><p>  uchar Fn(float f);</p><p>  sfr16 RCAP2 = 0xca;</p><p>  sfr16 TMR2 = 0xcc;</p><p>  #define SYSCLK 16000000</p><p>  #define uint unsigned

84、int</p><p>  #define uchar unsigned char</p><p>  //*** 函數(shù)定義 ***</p><p>  void long_delay(void);// 長延時</p><p>  void short_delay(void);// 短暫延時</p>

85、<p>  void delay1ms(unsigned int);// 延時10MS</p><p>  void write7279(unsigned char, unsigned char);// 寫入到HD7279</p><p>  unsigned char read7279(unsigned char);// 從HD7279讀出</p>

86、<p>  void send_byte(unsigned char);// 發(fā)送一個字節(jié)</p><p>  unsigned char receive_byte(void);// 接收一個字節(jié)</p><p>  sbit wrmax262=P3^6; </p><p>  sbit max262d1=P3^5; </

87、p><p>  sbit max262d0=P3^4; </p><p>  sbit max262a3=P3^3; </p><p>  sbit max262a2=P3^2; </p><p>  sbit max262a1=P3^1; </p><p>  sbit max262a0=P3^0;&

88、lt;/p><p>  //*** 變量及I/O口定義 ***</p><p>  unsigned char digit[5];</p><p>  unsigned char key_number, j, k;</p><p>  unsigned int tmr;</p><p>  unsigned int F0;

89、</p><p>  unsigned int Q0;</p><p>  unsigned long wait_cnter;</p><p>  sbit cs=P2^0;</p><p>  sbit clk=P1^6;</p><p>  sbit dat=P1^7;</p&g

90、t;<p>  sbit key=P1^4;</p><p>  char t,pp;</p><p>  char ge,shi,bai,qian,wan,sw;</p><p>  uchar flag,flag1,flag2;</p><p>  //****** HD7279A 指令 ******</p&

91、gt;<p>  #define CMD_RESET 0xa4</p><p>  #define CMD_TEST 0xbf</p><p>  #define DECODE0 0x80</p><p>  #define DECODE1 0xc8</p><p>  #define CMD_READ 0x15</p&g

92、t;<p>  #define UNDECODE 0x90</p><p>  #define RTL_CYCLE 0xa3</p><p>  #define RTR_CYCLE 0xa2</p><p>  #define RTL_UNCYL 0xa1</p><p>  #define RTR_UNCYL 0xa0<

93、/p><p>  #define ACTCTL 0x98</p><p>  #define SEGON 0xe0</p><p>  #define SEGOFF 0xc0</p><p>  #define BLINKCTL 0x88</p><p>  void init()</p><p>

94、  {TMOD=0x10;</p><p>  TH1=(65536-50000)/256;</p><p>  TL1=(65536-50000)%256;</p><p><b>  EA=1;</b></p><p><b>  ET1=1;</b></p><p>&

95、lt;b>  TR1=1;</b></p><p><b>  }</b></p><p>  void anjian()</p><p><b>  {</b></p><p><b>  if(!key)</b></p><

96、p><b>  {</b></p><p>  key_number=read7279(CMD_READ);</p><p>  while(!key)</p><p>  delay1ms(1);</p><p>  if(key_number==0x07) //切換頻率和Q</p>

97、;<p><b>  {flag1=1;</b></p><p><b>  t++;</b></p><p><b>  if(t==2)</b></p><p><b>  {flag1=0;</b></p><p><b> 

98、 t=0;}</b></p><p><b>  }</b></p><p>  if(key_number==0x06)</p><p><b>  {</b></p><p><b>  pp++;</b></p><p>  while

99、(!key);</p><p><b>  if(pp==1)</b></p><p><b>  {</b></p><p><b>  flag1=0;</b></p><p>  write7279(0x88,0xfe);</p><p><

100、b>  TR1=0;</b></p><p><b>  }</b></p><p><b>  if(pp==2)</b></p><p>  write7279(0x88,0xfd);</p><p><b>  if(pp==3)</b></p&g

101、t;<p>  write7279(0x88,0xfb);</p><p><b>  if(pp==4)</b></p><p><b>  {</b></p><p><b>  flag1=1;</b></p><p>  write7279(0x88,0x

102、f7);</p><p><b>  }</b></p><p><b>  if(pp==5)</b></p><p>  write7279(0x88,0xef);</p><p><b>  if(pp==6)</b></p><p>  writ

103、e7279(0x88,0xdf);</p><p><b>  if(pp==7)</b></p><p><b>  {</b></p><p><b>  pp=0;</b></p><p><b>  t=0;</b></p><

104、p><b>  TR1=1;</b></p><p>  write7279(0x88,0xff);</p><p><b>  }</b></p><p><b>  }</b></p><p>  if(key_number==0x05)</p><

105、;p><b>  {</b></p><p>  while(!key);</p><p><b>  if(pp==1)</b></p><p><b>  {</b></p><p><b>  ge++;</b></p><

106、p>  if(ge==10)</p><p>  {ge=0;shi++;}</p><p><b>  }</b></p><p><b>  if(pp==2)</b></p><p><b>  {</b></p><p><b>

107、  shi++;</b></p><p>  if(shi==10)</p><p>  {shi=0;bai++;}</p><p><b>  }</b></p><p><b>  if(pp==3)</b></p><p><b>  {<

108、/b></p><p><b>  bai++;</b></p><p>  if(bai==10)</p><p>  {bai=0;qian++;}</p><p><b>  }</b></p><p><b>  if(pp==4)</b>

109、</p><p><b>  {</b></p><p><b>  qian;</b></p><p>  if(qian==10)</p><p>  {qian=0;wan++;}</p><p><b>  }</b></p>&l

110、t;p><b>  if(pp==5)</b></p><p><b>  {</b></p><p><b>  wan++;</b></p><p>  if(wan==10)</p><p>  {wan=0;sw++;}</p><p>&

111、lt;b>  }</b></p><p><b>  if(pp==6)</b></p><p><b>  {</b></p><p><b>  sw++;</b></p><p>  if(sw==10)</p><p><

112、b>  sw=0;</b></p><p><b>  }</b></p><p><b>  }</b></p><p>  if(key_number==0x04)</p><p><b>  {</b></p><p>  whi

113、le(!key);</p><p><b>  if(pp==1)</b></p><p><b>  {</b></p><p><b>  ge--;</b></p><p>  if(ge==-1)</p><p><b>  ge=9;

114、</b></p><p><b>  }</b></p><p><b>  if(pp==2)</b></p><p><b>  {</b></p><p><b>  shi--;</b></p><p>  i

115、f(shi==-1)</p><p><b>  shi=9;</b></p><p><b>  }</b></p><p><b>  if(pp==3)</b></p><p><b>  {</b></p><p><

116、b>  bai--;</b></p><p>  if(bai==-1)</p><p><b>  bai=0;</b></p><p><b>  }</b></p><p><b>  if(pp==4)</b></p><p>

117、<b>  {</b></p><p><b>  qian--;</b></p><p>  if(qian==-1)</p><p><b>  qian=0;</b></p><p><b>  }</b></p><p>&

118、lt;b>  if(pp==5)</b></p><p><b>  {</b></p><p><b>  wan--;</b></p><p>  if(wan==-1)</p><p><b>  wan=0;</b></p><p&

119、gt;<b>  }</b></p><p><b>  if(pp==6)</b></p><p><b>  {</b></p><p><b>  sw--;</b></p><p>  if(sw==-1)</p><p>

120、<b>  sw=0;</b></p><p><b>  }</b></p><p><b>  }</b></p><p>  if(key_number==0x03)</p><p><b>  {</b></p><p> 

121、 while(!key);</p><p>  if(flag1==0)</p><p>  {F0=ge+shi*10+bai*100+qian*1000+w*10000}</p><p><b>  if(flag1)</b></p><p>  {Q0=ge+shi*10+bai*100+qian*1000+w*1

122、0000</p><p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b></p><p>  void main()</p>

123、<p><b>  {</b></p><p>  WDTCN = 0xde;</p><p>  WDTCN = 0xad; //關(guān)看門狗</p><p>  SYSCLK_Init (); //初始化時鐘</p><p>  PORT_Init ();

124、 //初始化IO口</p><p>  ge=shi=bai=qian=wan=sw=0;</p><p>  write7279(DECODE0,ge);</p><p>  write7279(DECODE0+1,shi);</p><p>  write7279(UNDECODE+2,bai);</p><p&g

125、t;  write7279(DECODE0+3,qian);</p><p>  write7279(DECODE0+4,wan);</p><p>  write7279(DECODE0+5,sw);</p><p><b>  while(1)</b></p><p>  { anjian();</p>

126、<p><b>  Filter();</b></p><p>  if(flag1==0)</p><p>  {write7279(DECODE0,ge);</p><p>  write7279(DECODE0+1,shi);</p><p>  write7279(UNDECODE+2,bai);

127、</p><p>  write7279(DECODE0+3,qian);</p><p>  write7279(DECODE0+4,wan);</p><p>  write7279(DECODE0+5,sw);}</p><p><b>  if(flag1)</b></p><p><

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論