2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩28頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、<p>  系主任(或責(zé)任教師)簽名: 年 月 日</p><p><b>  摘 要</b></p><p>  本設(shè)計由直流穩(wěn)壓電源、前置放大電路單元、增益控制部分、功率放大部分、單片機(jī)自動增益控制部分幾個模塊構(gòu)成。輸入部分采用高速電壓反饋型運(yùn)放OPA690作跟隨器提高輸入阻抗,并且在不影響性能的條件下給輸入部分加

2、了保護(hù)電路。使用了多種抗干擾措施以減少噪聲并抑制高頻自激。同時利用可變增益寬帶放大器VCA821來提高增益和擴(kuò)大AGC控制范圍,通過軟件補(bǔ)償減小增益調(diào)節(jié)的步進(jìn)間隔和提高準(zhǔn)確度。功率輸出部分采用分立元件制作,提高了負(fù)載阻值以及輸出有效值??刂撇糠钟蒑SP430系列單片機(jī)、A/D和D/A組成。整個系統(tǒng)通頻帶為1kHz~20MHz,最小增益0dB,最大增益80dB。增益步進(jìn)1dB,60dB以下預(yù)置增益與實(shí)際增益誤差小于0.2dB。不失真輸出電

3、壓有效值達(dá)9.5V,輸出4.5~5.5V時AGC控制范圍為66dB,應(yīng)用單片機(jī)和數(shù)字信號處理技術(shù)對增益進(jìn)行預(yù)置和控制,AGC穩(wěn)定性好,可控范圍大,完成了設(shè)計的所有基本要求并做適當(dāng)?shù)陌l(fā)揮,使設(shè)計更完善。</p><p>  關(guān)鍵詞:程控;寬帶;自動增益控制;AD603;AGC </p><p><b>  目錄</b></p><p><b

4、>  目錄</b></p><p><b>  摘 要2</b></p><p><b>  目錄3</b></p><p>  1、方案比較與論證4</p><p>  1.1 前級放大模塊部分4</p><p>  1.2 可控增益放大器部分

5、4</p><p>  1.3 功率輸出部分7</p><p>  1.4測量有效值部分7</p><p>  2、具體系統(tǒng)設(shè)計8</p><p>  2.1總體設(shè)計思路8</p><p>  2.2系統(tǒng)各模塊電路的設(shè)計與分析9</p><p>  2.2.1直流穩(wěn)壓電源9<

6、/p><p>  2.2.2前置放大電路單元11</p><p>  2.2.3 增益控制部分11</p><p>  2.2.4功率放大部分13</p><p>  2.2.5自動增益控制(AGC)14</p><p>  3、理論分析與參數(shù)計算14</p><p>  3.1 增益分配

7、的計算14</p><p>  3.2 AGC介紹15</p><p>  3.3正弦電壓有效值的計算15</p><p>  4、程序設(shè)計部分15</p><p>  4.1、程序功能描述與設(shè)計思路15</p><p>  4.2、程序流程圖16</p><p>  5、抗干擾措

8、施分析16</p><p><b>  6、實(shí)驗(yàn)結(jié)果17</b></p><p>  7、誤差分析及性能總結(jié)18</p><p>  7.1 誤差分析18</p><p>  7.2 性能總結(jié)19</p><p>  8、心得與體會19</p><p><

9、b>  參考文獻(xiàn)20</b></p><p>  附錄一 整體電路圖21</p><p>  附錄二 整體實(shí)物圖22</p><p>  附錄三 MSP430F5438主程序22</p><p>  本科生課程設(shè)計成績評定表29</p><p>  1、方案比較與論證 </p&g

10、t;<p>  1.1 前級放大模塊部分</p><p>  方案一:使用分立元件搭建共基級放大器。在三極管搭建的三大放大電路中,共基極放大器有電壓增益大、電流增益小、輸出電阻小、適合于高頻工作等特點(diǎn)。但由于題目中要求的頻率范圍較大,故對于放大三極管型號的選擇以及電路的搭建布線等都要求較大,實(shí)行起來比較困難。 </p><p>  方案二:使用THS3092芯片搭建同相放大電

11、路。THS3092是TI公司生產(chǎn)的一款電流反饋型放大器。電流反饋型放大器較常見的電壓反饋型放大器相比,具有更好的頻率特性,沒有固定的貸款增益積,在高頻電路中對波形的失真較小。該芯片的噪音小,帶寬高,適合于前級的小信號放大。</p><p>  方案三:使用OPA846或OPA847芯片,這兩種芯片性能相近,都是具有超低輸入電壓電流噪聲,超高增益帶寬帶積的芯片,OPA846在放大10倍的情況下,有400MHz的帶寬

12、,而OPA847具有3.9GHz的增益帶寬積,且兩種芯片的輸入電壓噪聲也極低,能有效壓制噪聲。</p><p>  經(jīng)實(shí)踐,我們發(fā)現(xiàn)OPA846具有0.85nV的噪聲電壓,同時增益帶寬積為3.9GHz,適合高倍數(shù)放大,滿足題目要求。為追求更高指標(biāo),選用OPA847,所以采用方案3.</p><p>  1.2 可控增益放大器部分</p><p>  方案一:簡單的放

13、大電路可以由三極管搭接的放大電路實(shí)現(xiàn),圖1為分立元件放大器電路圖。為了滿足增益40dB的要求,可以采用多級放大電路實(shí)現(xiàn)。對電路輸出用二極管檢波產(chǎn)生反饋電壓調(diào)節(jié)前級電路實(shí)現(xiàn)自動增益的調(diào)節(jié)。本方案由于大量采用分立元件,如三極管等,電路比較復(fù)雜,工作點(diǎn)難于調(diào)整,尤其增益的定量調(diào)節(jié)非常困難。此外,由于采用多級放大,電路穩(wěn)定性差,容易產(chǎn)生自激現(xiàn)象。</p><p>  圖1 分立元件放大器電路圖</p>

14、<p>  方案二:原理框圖如圖2所示,場效應(yīng)管工作在可變電阻區(qū),輸出信號取自電阻與場效應(yīng)管與對V’的分壓。采用場效應(yīng)管作AGC控制可以達(dá)到很高的頻率和很低的噪聲,但溫度、電源等的漂移將會引起分壓比的變化,用這種方案很難實(shí)現(xiàn)增益的精確控制和長時間穩(wěn)定。 </p><p>  圖 2 場效應(yīng)管放大器電路圖</p><p>  方案三:為了易于實(shí)現(xiàn)最大40dB增益的調(diào)節(jié),可以采用

15、D/A芯片AD7520的電阻權(quán)網(wǎng)絡(luò)改變反饋電壓進(jìn)而控制電路增益。又考慮到AD7520是一種廉價型的10位D/A轉(zhuǎn)換芯片,其輸出Vout=Dn×Vref/210,其中Dn為10位數(shù)字量輸入的二進(jìn)制值,可滿足210=1024擋增益調(diào)節(jié),滿足題目的精度要求。它由CMOS電流開關(guān)和梯形電阻網(wǎng)絡(luò)構(gòu)成,具有結(jié)構(gòu)簡單、精確度高、體積小、控制方便、外圍布線簡化等特點(diǎn),故可以采用AD7520來實(shí)現(xiàn)信號的程控衰減。但由于AD7520對輸入?yún)⒖茧妷?/p>

16、Vref有一定幅度要求,為使輸入信號在mV~V每一數(shù)量級都有較精確的增益,最好使信號在到達(dá)AD7520前經(jīng)過一個適應(yīng)性的幅度放大調(diào)整,再通過AD7520衰減后進(jìn)行相應(yīng)的后級放大,并使前后級增益積為1024,與AD7520的衰減分母抵消,即可實(shí)現(xiàn)程控放大。但AD7520對輸入范圍有要求,具體實(shí)現(xiàn)起來比較復(fù)雜,而且轉(zhuǎn)化非線性誤差大,帶寬只有幾kHz,不能滿足頻帶要求。</p><p>  方案四:使用控制電壓與增益成

17、線性關(guān)系的可編程增益放大器PGA,用控制電壓和增益(dB)成線性關(guān)系的可變增益放大器來實(shí)現(xiàn)增益控制(如圖3)。根據(jù)題目對放大電路的增益可控的要求,考慮直接選取可調(diào)增益的運(yùn)放實(shí)現(xiàn),如AD603、VCA821。其內(nèi)部由R-2R梯形電阻網(wǎng)絡(luò)和固定增益放大器構(gòu)成,加在其梯型網(wǎng)絡(luò)輸入端的信號經(jīng)衰減后,由固定增益放大器輸出,衰減量是由加在增益控制接口的參考電壓決定;而這個參考電壓可通過單片機(jī)進(jìn)行運(yùn)算并控制D/A芯片輸出控制電壓得來,從而實(shí)現(xiàn)較精確的

18、數(shù)控。此外VCA821能提供由直流到30MHz以上的工作帶寬,單級實(shí)際工作時可提供超過20dB的增益,兩級級聯(lián)后即可得到40dB以上的增益,通過后級放大器放大輸出,在高頻時也可提供超過60dB的增益。這種方法的優(yōu)點(diǎn)是電路集成度高、條理較清晰、控制方便、易于數(shù)字化用單片機(jī)處理?! ?lt;/p><p>  圖 3 可變增益的運(yùn)放放大器電路圖</p><p>  綜上所述,選用方案四,采用集成可

19、變增益放大器VCA821作增益控制。VCA821是一款低噪聲、精密控制的可變增益放大器,溫度穩(wěn)定性高,最大增益誤差為0.5dB,滿足題目要求的精度,其增益(dB)與控制電壓(V)成線性關(guān)系,因此可以很方便地使用D/A輸出電壓控制放大器的增益。</p><p>  1.3 功率輸出部分 </p><p>  VCA821構(gòu)成的放大電路,可對不同大小的輸入信號進(jìn)行前級放大。由于AD603的最大

20、輸出電壓較小,不能滿足題目要求,所以前級放大信號需經(jīng)過后級放大達(dá)到更高的輸出有效值。</p><p>  方案一:使用集成電路芯片。使用集成電路芯片電路簡單、使用方便、性能穩(wěn)定、有詳細(xì)的文檔說明??墒穷}目要求輸出3V以上有效值,而在電子市場很難買到這樣的芯片,而我們買到的如AD811,HA-2539,THS3091等芯片,雖然輸出電壓幅度能滿足要求,但是很容易發(fā)生工作不穩(wěn)定的情況。</p><

21、p>  方案二:使用分立元件自行搭建后級放大器。使用分立元件設(shè)計困難,調(diào)試繁瑣,可是卻可以經(jīng)過計算得到最合適的輸入輸出阻抗、放大倍數(shù)等參數(shù),電阻電容可根據(jù)需要更換,在此時看來較集成電路靈活。因此自行設(shè)計后級放大器優(yōu)勢就很明顯了。</p><p>  由于THS3091芯片的帶寬大,壓擺率高,比較適合于組成最后一級較大信號的放大工作。因此,我們采用方案一。</p><p>  1.4測

22、量有效值部分</p><p>  方案一:利用高速ADC對電壓進(jìn)行采樣,將一周期內(nèi)的數(shù)據(jù)輸入單片機(jī)并計算其均方根值,即可得出電壓有效值:</p><p>  此方案具有抗干擾能力強(qiáng)、設(shè)計靈活、精度高等優(yōu)點(diǎn),但調(diào)試?yán)щy,高頻時采樣難且計算量大,增加了軟件難度。</p><p>  方案二:對信號進(jìn)行精密整流并積分,得到正弦電壓的平均值,再進(jìn)行ADC采樣,利用平均值和有

23、效值之間的簡單換算關(guān)系,計算出有效值顯示。只用了簡單的整流濾波電路和單片機(jī)就可以完成交流信號有效值的測量。但此方法對非正弦波的測量會引起較大的誤差。 </p><p>  方案三:采用集成真有效值變換芯片,直接輸出被測信號的真有效值。這樣可以實(shí)現(xiàn)對任意波形的有效值測量。</p><p>  綜上所述,采用方案三,變換芯片選用AD637。AD637是真有效值變換芯片,它可測量的信號有效值可高

24、達(dá)7V,精度優(yōu)于0.5%,且外圍元件少,頻帶寬,對于一個有效值為1V的信號,它的3dB帶寬為8MHz,并且可以對輸入信號的電平以dB形式指示,該方案硬件、軟件簡單,精度也很高,但不適用于高于8MHz的信號。此方案硬件易實(shí)現(xiàn),并且8MHz以下時候測得的有效值的精度可以保證,在題目要求的通頻帶10kHz~6MHz內(nèi)精度較高?!?lt;/p><p><b>  2、具體系統(tǒng)設(shè)計</b></p&g

25、t;<p><b>  2.1總體設(shè)計思路</b></p><p>  根據(jù)題目的要求,結(jié)合考慮過的各種方案,充分利用模擬和數(shù)字系統(tǒng)各自的優(yōu)點(diǎn),發(fā)揮其優(yōu)勢,采用單片機(jī)預(yù)置和控制放大器增益的方法,大大提高了系統(tǒng)的精度和可控性;后級放大器使用由分立元件設(shè)計的推挽互補(bǔ)輸出放大器,提高了輸出電壓有效值,使信號都在單片機(jī)的數(shù)字算法控制下得到最合理的前級放大,使其放大倍數(shù)精確。下圖所示即為

26、本系統(tǒng)原理框圖。</p><p>  輸入信號通過前級可控增益放大,放大倍數(shù)由單片機(jī)通過D/A轉(zhuǎn)換提供的電壓控制。VCA821的Vg控制增益變化,經(jīng)過前級放大后的信號最后經(jīng)過后級放大得到需要的輸出信號,前級和后級增益的搭配, ,都是經(jīng)過精確的測量和計算的。輸出電壓經(jīng)有效值檢測電路得到,反饋到單片機(jī),經(jīng)DA輸出Vg控制增益的變化。</p><p>  圖 4 系統(tǒng)原理框圖</p&

27、gt;<p>  2.2系統(tǒng)各模塊電路的設(shè)計與分析</p><p>  2.2.1直流穩(wěn)壓電源 </p><p>  本電源采用橋式全波整流、大電容濾波、三端穩(wěn)壓器件穩(wěn)壓的方法,產(chǎn)生各種直流電壓。正負(fù)15V,正負(fù)5V等都可以買到相應(yīng)的固定輸出的三端穩(wěn)壓芯片,如LM7815、LM7805。所以我們采用LM317T可變輸出的穩(wěn)壓芯片,典型電路圖如圖5。</p>&l

28、t;p>  圖 5 直流穩(wěn)壓電源</p><p>  交流輸入經(jīng)過電容濾波后的穩(wěn)定的直流電送到三端穩(wěn)壓集成電路LM317T的Vin端。LM317T是這樣工作的:由Vin端給它提供工作電壓以后,它便可以保持其+Vout端比其ADJ端的電壓高1.25V。因此,我們只需用極小的電流來調(diào)整ADJ端的電壓,便可在+Vout端得到比較大的電流輸出,并且電壓比ADJ端高出恒定的1.25V。</p><

29、;p>  在LM317T的ADJ端加一個接地的濾波電容,會使紋波抑制比大幅度地提高,給高頻小信號運(yùn)算放大器提供非常穩(wěn)定的電源。二極管的作用是當(dāng)有意外情況使得LM317T的輸入電壓比輸出電壓還低的時候防止從輸入端上有電流倒灌入LM317T引起其損壞。</p><p>  2.2.2前置放大電路單元</p><p>  圖6 前級放大電路圖</p><p>  圖

30、6為前級放大電路,由于VCA821的輸入電阻只有100Ω,要滿足輸入電阻大于1kΩ的要求,必須加入輸入緩沖部分用以提高輸入阻抗;另外前級電路對整個電路的噪聲影響非常大,必須盡量減少噪聲。故采用高速低噪聲電壓反饋型運(yùn)放OPA847作前級放大電路,同時在電源端加上二極管進(jìn)行防短接保護(hù)。</p><p>  輸入部分先用電阻分壓衰減,再由低噪聲高速運(yùn)放OPA847放大,整體上還是一個跟隨器。其輸入阻抗大于1kΩ。OPA

31、847的增益帶寬積為3.9GHz,這里放大5倍。輸入輸出端口P1、P2由同軸電纜連接,以防自激。級間耦合采用電解電容并聯(lián)高頻瓷片電容的方法,兼顧高頻和低頻信號。 </p><p>  2.2.3 增益控制部分</p><p>  增益控制部分采用多點(diǎn)接地和就近接地的方法避免自激,部分電容電阻采用貼片封裝,使得輸入級連線盡可能短。該部分采用VCA821典型接法中增益為20dB,帶寬仍可以達(dá)到

32、320MHz,輸入控制電壓U的范圍為0~+2V。圖7為VCA821接成最大增益20dB的典型方法。圖8為增益控制電路。</p><p>  圖7 VCA821增益為20dB的典型接法</p><p>  圖8 增益控制電路圖</p><p>  增益和控制電壓的關(guān)系如下圖,控制電壓為2V時,增益為20 dB,增益范圍是-10~+20dB,滿足題目要求。由于程

33、控放大電路最大增益只有20dB,所以末級功率放大需要2倍,由于要保證在20kHz~5MHz頻帶內(nèi)增益起伏<1dB,所以將VCA821的增益模式設(shè)置為20dB,這樣保證在6MHz范圍內(nèi)的平坦度很好。</p><p>  圖9 增益和控制電壓的關(guān)系圖</p><p>  2.2.4功率放大部分</p><p>  圖10 末級功率放大電路圖</p>

34、<p>  末級采用一級THS3091作為功率放大,它是電流反饋放大電路,其優(yōu)點(diǎn)是電路帶寬受增益的影響較小,可以在放大的同時,滿足帶寬要求,帶寬主要受反饋電阻的影響,因此我們根據(jù)芯片手冊上的電路對其外圍電路進(jìn)行設(shè)計,雖然其推薦電壓是±15V,但考慮到系統(tǒng)的噪聲及供電,采用可行的±5V對其供電,使其THS3091的通頻帶較高。經(jīng)過幾次嘗試,選擇增益為10倍,帶寬超出100MHz,且?guī)?nèi)平坦度好,能夠滿足題目的

35、帶負(fù)載能力,圖為末級THS3091放大電路圖。</p><p>  2.2.5自動增益控制(AGC)</p><p>  此模塊利用單片機(jī)根據(jù)輸出信號幅度調(diào)節(jié)增益。輸出信號檢波后經(jīng)過簡單2級RC濾波后由單片機(jī)采樣,截止頻率為100Hz。由于放大器通頻帶低端在1kHz,當(dāng)工作頻率為1kHz時,為保證在增益變化時輸出波形失真較小,將AGC響應(yīng)時間設(shè)定為10ms,用單片機(jī)定時器0來產(chǎn)生10ms中

36、斷進(jìn)行輸出有效值采樣,增益控制電壓也經(jīng)過濾波后加在可變增益放大器上。AGC控制范圍理論上可達(dá)0~80dB,實(shí)際上由于輸入端加了保護(hù)電路,在不同輸出電壓時AGC范圍不一樣,輸出在4.5~5.5V時AGC范圍約為70dB,而當(dāng)輸出為2~2.5V時AGC范圍可達(dá)80dB。</p><p>  這一部分由51系列單片機(jī)、A/D、D/A和基準(zhǔn)源組成。使用12位串行A/D芯片ADS7816和ADS7841(便于同時測量真有效

37、值和峰值)和12位串行雙D/A芯片TLV5618。</p><p>  3、理論分析與參數(shù)計算</p><p>  3.1 增益分配的計算</p><p>  題目中要求系統(tǒng)增益在10~40dB可調(diào),3dB通頻帶10kHz~6MHz,10mV真有效值輸入時最大真有效值輸出幅度大于1V。由以上分析,該系統(tǒng)共分為三級。第一級采用OPA847構(gòu)建輸入緩沖和前級放大電路,考

38、慮到第二級輸入大于200mV易失真,因此第一級輸出信號幅度不宜過大,所以第一級放大5倍,獲得13.9dB左右的增益。第二級采用增益模式為20dB的放大電路,所以第三級末級功率放大2倍,即6.02dB的增益。第二級程控可調(diào)范圍為-10~+20dB,所以系統(tǒng)總增益實(shí)現(xiàn)了10 dB~40 dB的要求。</p><p>  3.2 AGC介紹</p><p>  AGC是自動增益控制電路的簡稱,

39、常用在收音機(jī)、電視機(jī)、錄像機(jī)的信號接收和電平處理電路中。它的作用是當(dāng)信號較強(qiáng)時,使其增益自動降低;當(dāng)信號較弱時,又使其增益自動增高,從而保證輸出信號基本穩(wěn)定。 </p><p>  3.3正弦電壓有效值的計算 </p><p>  AD637的內(nèi)部結(jié)構(gòu)如圖11所示。根據(jù)AD637芯片手冊所給出的計算真有效值的經(jīng)驗(yàn)公式為:</p><p>  其中:VIN為輸入電壓

40、,Vrms為輸出電壓有效值。</p><p>  圖 11 AD637的內(nèi)部結(jié)構(gòu)</p><p><b>  4、程序設(shè)計部分</b></p><p>  4.1、程序功能描述與設(shè)計思路</p><p>  根據(jù)題目要求,軟件部分主要實(shí)現(xiàn)鍵盤的設(shè)置和控制D/A輸出。</p><p> ?。?)

41、鍵盤實(shí)現(xiàn)功能:增益的步進(jìn)調(diào)節(jié)。</p><p> ?。?)D/A:輸入數(shù)字量,輸出模擬電壓值,作為壓控增益放大器的輸入。</p><p><b>  4.2、程序流程圖</b></p><p><b>  主程序流程圖如下:</b></p><p>  圖12 主程序流程圖</p>&

42、lt;p><b>  5、抗干擾措施分析</b></p><p>  系統(tǒng)總的增益為10~40dB,前級輸入緩沖和增益控制部分增益最大可達(dá)33.9dB,因此抗干擾措施必須要做得很好才能避免自激和減少噪聲。我們采用下述方法減少干擾,避免自激:</p><p> ?。?)將輸入部分和增益控制部分裝在屏蔽盒中,避免級間干擾和高頻自激;?。?) 電源隔離,各級供電采用電

43、感隔離,輸入級和功率輸出級采用隔離供電,</p><p>  各部分電源通過電感隔離,輸入級電源靠近屏蔽盒就近接上1000μF電解電容,盒內(nèi)接高頻瓷片電容,通過這種方法可避免低頻自激;  </p><p>  (3) 所有信號耦合用電解電容兩端并接高頻瓷片電容以避免高頻增益下降; ?。?) 構(gòu)建閉路環(huán)。在輸入級,將整個運(yùn)放用較粗的地線包圍,可吸收高頻信</p><p&g

44、t;  號減少噪聲。在增益控制部分和后級功率放大部分也都采用了此方法。在功率級,此法可以有效地避免高頻輻射;</p><p> ?。?) 數(shù)模隔離。數(shù)字部分和模擬部分之間除了電源隔離之外,還將各控制信號用電感隔離;</p><p> ?。?) 使用同軸電纜,輸入級和輸出級使用BNC接頭,輸入級和功率級之間</p><p><b>  同軸電纜連接。<

45、/b></p><p>  電路的抗干擾措施比較好,在1kHz~20MHz的通頻帶范圍和0~80dB增益范圍內(nèi)都沒有自激。</p><p>  本系統(tǒng)單片機(jī)控制部分采用反饋控制方式,通過輸出電壓采樣來控制電壓增益。由于VCA821的設(shè)定增益跟實(shí)際增益有誤差,故應(yīng)對軟件進(jìn)行校正。</p><p><b>  6、實(shí)驗(yàn)結(jié)果</b></p

46、><p>  帶寬測試:在輸入峰峰值20mV正弦波的情況下(放大倍數(shù)為100)</p><p><b>  表1 帶寬測試結(jié)果</b></p><p>  經(jīng)測試得:3dB通頻帶5kHz~16MHz,在20kHz~7MHz頻帶內(nèi)增益起伏<1dB。</p><p>  增益測試:用單片機(jī)可以實(shí)現(xiàn)10~40dB可調(diào).<

47、;/p><p>  圖13 5MHz20mV信號輸入 圖14 500KHz20mV輸入</p><p>  圖15 5MHz信號輸出波形 圖16 500KHz信號輸出波形</p><p>  7、誤差分析及性能總結(jié)</p><p><b>  7.1 誤差分析</b

48、></p><p>  測量的誤差主要來源是電磁干擾,由于試驗(yàn)場地有許多電腦和儀器使用開關(guān)電源,電磁噪聲很大,而且使用的同軸電纜屏蔽效果并不好,所以測量輸入端短路的噪聲電壓時隨輸入短接方式不同而有很大的誤差。</p><p><b>  7.2 性能總結(jié)</b></p><p>  從指標(biāo)來看本設(shè)計各方面的指標(biāo)都達(dá)到或超過了題目要求。本設(shè)

49、計偏重于模擬電路處理,得到了很高的增益和較小的噪聲。采用多種抗干擾措施來處理前級放大,選用集成芯片作增益控制,利用分立元件作后級功率放大,放棄了較難買到的寬帶功率運(yùn)放,因而設(shè)計很靈活也很容易實(shí)現(xiàn)。</p><p><b>  8、心得與體會</b></p><p>  在設(shè)計過程中不免遇到各種問題,需要認(rèn)真分析,排除各種問題。首先要上網(wǎng)查閱資料,確定設(shè)計方案。在這個過

50、程中,因?yàn)橹皇堑膮T乏,芯片和電路的確定費(fèi)了很大的功夫,最終在同學(xué)的幫助下,設(shè)計出了前幾個模塊。接下來自動增西控制部分,由于不清楚原理,只能請老師幫忙,分析了電路并對之進(jìn)行簡化,到此,才最后完成模塊的設(shè)計。</p><p>  接下來,為了達(dá)到或超過了題目要求,還對芯片的各參數(shù)進(jìn)行深入的了解,精確的計算,過程很復(fù)雜。由于以前實(shí)習(xí)的時候?qū)W習(xí)用過Altium Designer 10,但由于長時間沒有用,所以很生疏,致使

51、電路圖畫的很慢,出現(xiàn)的兩次返工,在這么緊張的時間里,是很讓人郁悶的一件事情。最后通過閱讀參考資料,上網(wǎng)搜索等,才完成了電路圖的繪制。</p><p>  經(jīng)過兩個星期的忙碌和工作,本次課程設(shè)計已經(jīng)接近尾聲,作為一名本科生,由于經(jīng)驗(yàn)和知識的匱乏,難免有許多考慮不周全的地方。但是通過課程設(shè)計,使我掌握了程控寬帶放大器基本原理和組成,鞏固了通信電子電路與單片機(jī)控制知識,掌控了知識在實(shí)際中的應(yīng)用,提高了對電路分析與設(shè)計能

52、力。同時我深深的感覺到自己知識的不足,自己原來所學(xué)的東西只是一個表面性的,理論性的,而且是理想化的。根本不知道在現(xiàn)實(shí)中還存在有很多問題。設(shè)計電路,還要考慮到它的前因后果。什么功能需要什么電路來實(shí)現(xiàn)。另外,還要考慮它的可行性,實(shí)用性等等。這樣,也提高了我的分析問題的能力。通過這次設(shè)計,使我的理論知識上升到了一個實(shí)踐的過程,同時在實(shí)踐中也加深了我們對理論知識的理解以及軟件的應(yīng)用能力。</p><p><b>

53、;  參考文獻(xiàn)</b></p><p>  [1]傅越千.程控放大器的設(shè)計與應(yīng)用[J].寧波高等??茖W(xué)校學(xué)報,2013</p><p>  [2]房慧龍.程控放大器的實(shí)現(xiàn)方法[J].常州信息職業(yè)技術(shù)學(xué)院電子信息工程系.2013</p><p>  [3]邵雄凱,張文燦,黃文斌.一種程控放大器的分析與實(shí)現(xiàn)[J].湖北工學(xué)院學(xué)報,2014</p>

54、<p>  [4]吳建平,李建強(qiáng).數(shù)字程控放大器設(shè)計與應(yīng)用[J].成都理工學(xué)院報,2015</p><p>  [5]余錫存,曹國華編著.單片機(jī)原理及接口技術(shù)[M].西安:西安電子科技大學(xué)出版社,2013</p><p>  附錄一 整體電路圖</p><p>  附錄二 整體實(shí)物圖</p><p>  附錄三 MSP43

55、0F5438主程序</p><p>  #include "msp430x54xA.h"</p><p>  #include <string.h></p><p>  #include <stdio.h></p><p>  #include "main.h"</p>

56、;<p>  #include <math.h></p><p>  #include "keyboard.h"</p><p>  unsigned char tx_char;</p><p>  volatile unsigned char p_tx_flag = 1;</p><p>  #

57、define SCLK_UP P2OUT |= BIT0</p><p>  #define SCLK_DOWN P2OUT &= ~BIT0</p><p>  #define SYNC_UP P2OUT |= BIT1</p><p>  #define SYNC_DOWN P2OUT &= ~BIT1</p>&l

58、t;p>  #define SDIN_UP P2OUT |= BIT2</p><p>  #define SDIN_DOWN P2OUT &= ~BIT2</p><p>  char DA_ON[4]={0,0,0,1};</p><p>  char DA_OFF[4]={0,0,0,0};</p><p>  c

59、har DA_baochi[4]={0,0,1,1};</p><p>  #define uint unsigned int // 定義數(shù)據(jù)類型縮寫</p><p>  #define uchar unsigned char</p><p>  #define DDRD PADIR</p><

60、p>  #define PORTD PAOUT</p><p>  #define PIND PAIN</p><p>  void main(void)</p><p><b>  {</b></p><p>  volatile int ADC_Result;</p><p>  flo

61、at vol_ch1;</p><p>  char vol[30] = {0};</p><p>  char key_down = 0;</p><p>  unsigned char key_end[4] = {0};</p><p>  WDTCTL = WDTPW+WDTHOLD;

62、 // Stop watchdog timer</p><p>  P2DIR |= (BIT0+BIT1+BIT2);//P2OUT=0XFF;</p><p>  settime();</p><p>  tx_inti_main();</p><p>  ADS1118_GPIO_Init();</p><

63、;p>  ADS1118_SPI_Init();</p><p>  Keyboard_Init();</p><p>  key_end[0] = '0';</p><p>  key_end[1] = '\r';</p><p>  __bis_SR_register(GIE); // E

64、nter LPM3 w/ interrupts enabled</p><p>  send_string("realy\r\n");</p><p>  write_da7811(1725);</p><p>  write_da7811(1725);</p><p>  write_da7811(1725);</

65、p><p><b>  while(1)</b></p><p><b>  {</b></p><p>  ADS1118_ADS_Config(0xC3E3); //Only Select AIN1,860SPS,+-4.096V scan voltage range;&l

66、t;/p><p>  ADC_Result = ADS1118_ADS_Read(); // Read data from ch1,the last time result</p><p>  vol_ch1 = ADC_Result*0.125;</p><p>  sprintf(vol,"it %dmV\r\n",(in

67、t)vol_ch1);</p><p>  send_string(vol);</p><p>  memset(vol,0,30);</p><p>  KeyScan();</p><p>  key_down = KeyDriver();</p><p>  average_120(key_down, vol_c

68、h1);</p><p>  if(key_down != 0){</p><p>  send_string("num is ");</p><p>  key_end[0] = key_down;</p><p>  key_end[2] = 0;</p><p>  key_end[3] =

69、0;</p><p>  send_string(key_end);</p><p><b>  }</b></p><p>  __delay_cycles(10000);</p><p><b>  }</b></p><p><b>  }</b>

70、</p><p>  void tx_inti_main(void)</p><p><b>  {</b></p><p>  P3SEL |= BIT4+BIT5; // P3.4,5 UART option select</p><p>  UCA0CTL1 |= UCS

71、WRST; // **Put state machine in reset**</p><p>  UCA0CTL1 |= UCSSEL__SMCLK; // CLK = ACLK</p><p>  UCA0BR0 = 130; // 32k/9600 -

72、 3.41</p><p>  UCA0BR1 = 0x00; //</p><p>  UCA0MCTL = UCBRS_0 + UCBRF_3 + UCOS16; // Modln UCBRSx=0, UCBRFx=0,</p><p>  UCA0CTL1 &= ~UCSWRST;

73、 // **Initialize USCI state machine**</p><p>  UCA0IE |= UCTXIE + UCRXIE; // Enable USCI_A0 TX/RX interrupt</p><p>  // __delay_cycles(20);</p><p><b&

74、gt;  }</b></p><p>  void send_string(unsigned char *string){</p><p>  int count = 0;</p><p><b>  do{</b></p><p>  UCA0TXBUF = *string;</p><

75、p>  while ((!(UCA0IFG&UCTXIFG))&& (count < 10000))count++; // USCI_A0 TX buffer ready?</p><p>  count = 0;</p><p>  }while(*string++);</p><p><b>

76、  }</b></p><p>  #if defined(__TI_COMPILER_VERSION__) || defined(__IAR_SYSTEMS_ICC__)</p><p>  #pragma vector=USCI_A0_VECTOR</p><p>  __interrupt void USCI_A0_ISR(void)</p&

77、gt;<p>  #elif defined(__GNUC__)</p><p>  void __attribute__ ((interrupt(USCI_A0_VECTOR))) USCI_A0_ISR (void)</p><p><b>  #else</b></p><p>  #error Compiler not s

78、upported!</p><p><b>  #endif</b></p><p><b>  {</b></p><p>  switch(__even_in_range(UCA0IV,4))</p><p><b>  {</b></p><p>

79、  case 0: break; // Vector 0 - no interrupt</p><p>  case 2: while (!(UCA0IFG&UCTXIFG)); // USCI_A0 TX buffer ready?</p><p>  UCA0TXBUF = UCA0RXBUF;

80、 // TX -> RXed character // Vector 2 - RXIFG</p><p><b>  break;</b></p><p>  case 4: // Vector 4 - T

81、XIFG</p><p><b>  break;</b></p><p>  default: break;</p><p><b>  }</b></p><p><b>  }</b></p><p>  void SetVcoreUp (unsi

82、gned int level)</p><p><b>  {</b></p><p>  // Open PMM registers for write</p><p>  PMMCTL0_H = PMMPW_H;</p><p>  // Set SVS/SVM high side new level</p&g

83、t;<p>  SVSMHCTL = SVSHE + SVSHRVL0 * level + SVMHE + SVSMHRRL0 * level;</p><p>  // Set SVM low side to new level</p><p>  SVSMLCTL = SVSLE + SVMLE + SVSMLRRL0 * level;</p><p&

84、gt;  // Wait till SVM is settled</p><p>  while ((PMMIFG & SVSMLDLYIFG) == 0);</p><p>  // Clear already set flags</p><p>  PMMIFG &= ~(SVMLVLRIFG + SVMLIFG);</p><

85、;p>  // Set VCore to new level</p><p>  PMMCTL0_L = PMMCOREV0 * level;</p><p>  // Wait till new level reached</p><p>  if ((PMMIFG & SVMLIFG))</p><p>  while ((

86、PMMIFG & SVMLVLRIFG) == 0);</p><p>  // Set SVS/SVM low side to new level</p><p>  SVSMLCTL = SVSLE + SVSLRVL0 * level + SVMLE + SVSMLRRL0 * level;</p><p>  // Lock PMM register

87、s for write access</p><p>  PMMCTL0_H = 0x00;</p><p><b>  }</b></p><p>  void settime(){</p><p>  SetVcoreUp(PMMCOREV_1);</p><p>  SetVcoreUp(P

88、MMCOREV_2); // Set VCore to 1.8MHz for 20MHz</p><p>  P11DIR = BIT1+BIT2; // P11.1-2 to output direction</p><p>  P11SEL |= BIT1+BIT2;

89、 // P11.1-2 to output SMCLK,MCLK</p><p>  P5SEL |= 0x0C; // Port select XT2</p><p>  UCSCTL4 |= SELA__XT2CLK;</p><p>  UCSCTL6 &= ~XT2OFF;

90、 // Enable XT2</p><p>  UCSCTL3 |= SELREF__REFOCLK; // FLLref = REFO</p><p><b>  do</b></p><p><b>  {</b></p><p&

91、gt;  UCSCTL7 &= ~(XT2OFFG + XT1LFOFFG + DCOFFG);</p><p>  // Clear XT2,XT1,DCO fault flags</p><p>  SFRIFG1 &= ~OFIFG; // Clear fault flags</p><p>  __d

92、elay_cycles(100000); // Delay for Osc to stabilize</p><p>  }while (SFRIFG1&OFIFG); // Test oscillator fault flag</p><p>  UCSCTL4 = SELA_0 + SELS_5 + SELM_

93、_XT2CLK; // Select ACLK = LFXT1</p><p><b>  }</b></p><p>  void write_da7811(long da)</p><p><b>  {</b></p><p><b>  char i;</b>

94、;</p><p><b>  SCLK_UP;</b></p><p><b>  SYNC_UP;</b></p><p>  SYNC_DOWN;</p><p>  for(i=0;i<4;i++)</p><p><b>  {</b>&

95、lt;/p><p><b>  SCLK_UP;</b></p><p>  if(DA_ON[i])</p><p><b>  SDIN_UP;</b></p><p><b>  else</b></p><p>  SDIN_DOWN;</p&

96、gt;<p>  SCLK_DOWN;</p><p><b>  }</b></p><p>  for (i=0;i<12;i++)</p><p><b>  {</b></p><p><b>  SCLK_UP;</b></p>&l

97、t;p>  if(da&0x800)</p><p><b>  SDIN_UP;</b></p><p><b>  else</b></p><p>  SDIN_DOWN;</p><p>  SCLK_DOWN;</p><p><b>  d

98、a<<=1;</b></p><p><b>  }</b></p><p><b>  SYNC_UP;</b></p><p>  SCLK_DOWN;</p><p><b>  }</b></p><p>  void a

99、verage_120(char getkey, int vol){</p><p>  static int key_num = 0;</p><p>  if(getkey == '1' && (key_num < 9)){</p><p>  key_num++;</p><p>  DA_contr

100、ol(key_num);</p><p><b>  }</b></p><p>  if(getkey == '2' && (key_num > 0)){</p><p>  key_num--;</p><p>  DA_control(key_num);</p>

101、<p><b>  }</b></p><p>  if(getkey == '3'){</p><p>  Da_auto(vol);</p><p><b>  }</b></p><p><b>  }</b></p><p&

102、gt;  void DA_control(int num){</p><p>  switch(num){</p><p>  case 0 ://13</p><p>  write_da7811(848);break;</p><p>  case 1://16</p><p>  write_da7811(924

103、);break;</p><p>  case 2://19</p><p>  write_da7811(987);break;</p><p>  case 3://22</p><p>  write_da7811(1046);break;</p><p>  case 4://25</p><

104、;p>  write_da7811(1112);break;</p><p>  case 5://28</p><p>  write_da7811(1191);break;</p><p>  case 6://31</p><p>  write_da7811(1273);break;</p><p>  

105、case 7://34</p><p>  write_da7811(1404);break;</p><p>  case 8://37</p><p>  write_da7811(1507);break;</p><p><b>  case 9:</b></p><p>  write_d

106、a7811(1725);break;</p><p><b>  }</b></p><p><b>  }</b></p><p>  void Da_auto(int vol){</p><p>  static int auto_num = 1723;</p><p>

107、  if(vol < 400){</p><p>  auto_num++;</p><p>  write_da7811(auto_num);</p><p><b>  }else{</b></p><p>  auto_num--;</p><p>  write_da7811(aut

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論