等精度頻率計畢業(yè)論文_第1頁
等精度頻率計畢業(yè)論文_第2頁
等精度頻率計畢業(yè)論文_第3頁
等精度頻率計畢業(yè)論文_第4頁
等精度頻率計畢業(yè)論文_第5頁
已閱讀5頁,還剩43頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

目錄前言3第一章概論411課題研究的目的和意義412測量原理413等精度頻率計計數(shù)測量誤差514設(shè)計思路及技術(shù)指標6第2章STC89C52單片機系統(tǒng)結(jié)構(gòu)和原理821STC89C52單片機的簡介822單片機的一般結(jié)構(gòu)923STC89C52存儲器配置1124引腳功能說明1225中斷系統(tǒng)15251中斷源16252中斷控制17第三章硬件設(shè)計1831硬件電路設(shè)計1832電源電路1833單片機控制部分1934同步門控制電路1935計數(shù)電路2136顯示電路233611602的功能簡介233621602與STC89C52的連接24第四章軟件設(shè)計2541程序流程25411系統(tǒng)主程序流程圖25412初始化液晶27413初始化定時器27414定時器1溢出中斷流程27415主循環(huán)28416顯示子程序29第5章系統(tǒng)調(diào)試3151硬件調(diào)試3152調(diào)試軟件的介紹31521KEILUVISION3軟件介紹3153調(diào)試34531測頻精度分析34532實驗測試數(shù)據(jù)35附錄一完整的C語言源程序40附錄二系統(tǒng)設(shè)計原理圖47附錄三系統(tǒng)設(shè)計PCB圖48附錄四實物照片49附錄五元器件清單表50前言隨著微電子技術(shù)和計算機技術(shù)的迅速發(fā)展,特別是單片微機的出現(xiàn)和發(fā)展,使傳統(tǒng)的電子測量儀器在原理、功能、精度及自動化水平等方面都發(fā)生了巨大的變化,形成一種完全突破傳統(tǒng)概念的新一代測量儀器。頻率計廣泛采用了高速集成電路和大規(guī)模集成電路,使儀器在小型化、耗電、可靠性等方面都發(fā)生了重大的變化。傳統(tǒng)的頻率計測量誤差較大,等精度頻率計以其測量準確、精度高、方便等優(yōu)勢將得到廣泛的應(yīng)用。傳統(tǒng)的測頻方法有直接測頻法和測周法,在一定的閘門時間內(nèi)計數(shù),門控信號和被測信號不同步,計數(shù)值會產(chǎn)生一個脈沖的誤差。等精度測頻法采用門控信號和被測信號同步,消除對被測信號計數(shù)產(chǎn)生的一個脈沖的誤差。等精度頻率測量方法消除了量化誤差,可以在整個測試頻段內(nèi)保持高精度不變,其精度不會因被測信號頻率的高低而發(fā)生變化。采用單片機作為控制核心的等精度頻率計,可以充分利用單片機軟件編程技術(shù)實現(xiàn)等精度測頻。通過單片機對同步門的控制,使被測信號和標準信號在閘門時間內(nèi)同步測量,為了提高精度,將電子計數(shù)功能轉(zhuǎn)為測周期,采用多周期同步測量技術(shù),實現(xiàn)等精度測量。第一章概論本次設(shè)計的等精度頻率計是一種用液晶顯示被測信號頻率的測量儀器它的基本功能是測量方波信號。本文講述了等精度頻率計的工作原理以及其各個組成部分,記述了整個設(shè)計過程中對各個部分的設(shè)計思路、對各部分電路設(shè)計方案的選擇、以及對它們的調(diào)試、對調(diào)試結(jié)果的分析,最終得到實驗結(jié)果。11課題研究的目的和意義測頻一直以來都是電子和通訊系統(tǒng)工作的重要手段之一。高精度的測頻儀有著廣泛的市場前景。以往的測頻儀都是在低頻段利用測周期的方法、高頻段用測頻率的方法,其精度往往會隨著被測頻率的下降而下降?;趥鹘y(tǒng)測頻原理的頻率計的測量精度將隨被測信號頻率的下降而降低,在實用中有較大的局限性,而等精度頻率計不但具有較高的測量精度,而且在整個測頻區(qū)域內(nèi)保持恒定的測試精度。所以等精度頻率計有研究的價值。12測量原理圖11等精度頻率計測量原理圖基于傳統(tǒng)測頻原理的頻率計的測量精度將隨被測信號頻率的變化而變化。傳統(tǒng)的直接測頻法其測量精度將隨被測信號頻率的降低而降低,測周法的測量精度將隨被測信號頻率的升高而降低,在實用中有較大的局限性,而等精度頻率計不但具有較高的測量精度,而且在整個頻率區(qū)域能保持恒定的測試精度。等精度頻率的測量原理圖11所示。頻率為FX的被測信號經(jīng)通道濾波、放大、整形后輸入到同步門控制電路和主門1(閘門),晶體振蕩器的輸出信號作為標準信號(時基信號)輸入到主門2。被測信號在同步控制門的作用下,產(chǎn)生一個與被測信號同步的閘門信號,被測信號與標準信號(時基信號)在同步門控制信號的控制下。在同步門打開時通過同步門分別輸入到事件計數(shù)器和時間計數(shù)器的信號輸入端,計數(shù)器開始計數(shù)。同步門關(guān)閉時信號不能通過主門,計數(shù)器停止計數(shù),單片機發(fā)出命令讀入計數(shù)器的數(shù)值,并進行數(shù)據(jù)處理,將處理后的結(jié)果送顯示。等精度頻率測量方法是采用多周期同步測量。如圖1的測量原理圖所示由單片機發(fā)出預(yù)置門控信號GATE,GATE的時間寬度對測頻精度影響較少,可以在較大的范圍內(nèi)選擇,即在高頻段時,閘門時間較短;低頻時閘門時間較長。實現(xiàn)了全范圍等精度測量,減少了低頻測量的誤差。在同步門的控制下,一方面保證了被測信號和時基信號的同步測量;另一方面在同步門打開后計數(shù)器并不是馬上計數(shù),而是在被測信號的下一個上升沿開始計數(shù),同步門關(guān)閉后計數(shù)器也不是馬上停止計數(shù),而是在被測信號的下一個上升沿停止計數(shù)。即在實際閘門時間計數(shù),從而提高了測量精度。由于采用D觸發(fā)器實現(xiàn)的同步門的同步作用,事件計數(shù)器所記錄的NX值已不存在誤差的影響,但由于時鐘信號與閘門的開和關(guān)無確定的相位關(guān)系,時間計數(shù)器所記錄的N0的值仍存在1誤差的影響,只是由于時鐘頻率很高,誤差的影響很小。所以在全頻段的測量精度是均衡的,從而實現(xiàn)等精度頻率測量。13等精度頻率計計數(shù)測量誤差由上述測量原理可知,公式FXF0NX/N0成立。設(shè)所測頻率的準確值為FX0。在一次測量中,由于FX計數(shù)的起停時間是由該信號的上升沿控制的,因此,在T時間內(nèi)對FX的計數(shù)NX無誤差。在此時間內(nèi)F0的計數(shù)N0最多相差一個脈沖,即N0L,則下式成立FX/NXF0/N0(1)FX0/NXF0/N0N0(2)由此可分別推得FXF0/N0NX(3)FX0F0/N0N0NX(4)根據(jù)相對誤差公式有FX0/FX0FX0FX/FX0(5)將式3和式4代人式5整理后可得FX0/FX0N0/N0(6)因為N0L(7)所以N0/N01/N0(8)即相對誤差FFX0/FX01/N0(9)其中N0TF0(10)由此可知,增大TP或提高FX,可以增大NX,減少測量誤差,提高測量精度;相對測量誤差與被測信號頻率的大小無關(guān),僅與取樣時間及時基信號(標準信號)頻率有關(guān),可以實現(xiàn)被測頻帶內(nèi)的等精度測量;取樣時間越長,時基信號頻率越高,分辨率越高。14設(shè)計思路及技術(shù)指標一設(shè)計方案以89C51型單片機為核心,結(jié)合其它的一些芯片一起設(shè)計一個等精度頻率計。根據(jù)本設(shè)計的要求和方案的設(shè)想,總結(jié)一下本設(shè)計要做的具體的工作主要有以下幾個方面第一,分析與論證本設(shè)計所采用的方案,包括主控系統(tǒng)、顯示系統(tǒng)等的分析以及這些模塊的功能等。在對設(shè)計要求充分分析的基礎(chǔ)上,劃分功能模塊,選擇需要的硬件設(shè)備。第二,收集大量等精度頻率計方面的資料包括文字資料和試驗數(shù)據(jù),總結(jié)規(guī)律??梢杂袃煞N方法實現(xiàn)軟件部分。(一)定時1S測信號脈沖次數(shù)用一個定時計數(shù)器做定時中斷,定時1S,另一定時計數(shù)器僅做計數(shù)器使用,初始化完畢后同時開啟兩個定時計數(shù)器,直到產(chǎn)生1S中斷,產(chǎn)生1S中斷后立即關(guān)閉T0和T1(起保護程序和數(shù)據(jù)的作用)取出計數(shù)器寄存器內(nèi)的值就是1S內(nèi)待測信號的下跳沿次數(shù)即待測信號的頻率。用相關(guān)函數(shù)顯示完畢后再開啟T0和T1這樣即可進入下一輪測量。(二)測信號正半周期。對于11占空比的方波,僅用一個定時計數(shù)器做計數(shù)器,外部中斷引腳作待測信號輸入口,置計數(shù)器為外部中斷引腳控制(外部中斷引腳為“1”切TRX1計數(shù)器開始計數(shù))。單片機初始化完畢后程序等待半個正半周期(以便準確打開TRX)打開TRX,這時只要INTX(外部中斷引腳)為高電平計數(shù)器即不斷計數(shù),低電平則不計數(shù),待信號從高電平后計數(shù)器終止計數(shù),關(guān)閉TRX保護計數(shù)器寄存器的值,該值即為待測信號一個正半周期的單片機機器周期數(shù),即可求出待測信號的周期待測信號周期T2CNT/12/FSOCCNT為測得待測信號的一個正半周期機器周期數(shù);FSOC為單片機的晶振。所以待測信號的頻率F1/T。第二種方法只適用于11占空比的方波信號,要測非11占空比的方波信號誤差有點大,所以本設(shè)計優(yōu)先使用第一種方法進行設(shè)計。第三,根據(jù)劃分的功能模塊,編寫操作程序。這也是本設(shè)計中很重要的一個工作,確定編程時要盡量做到界面美觀,操作簡便。第四,進行程序調(diào)試,繼續(xù)完善各功能模塊的程序。二技術(shù)指標1設(shè)計一個4位的頻率計,其頻率范圍在19999HZ;2送入信號應(yīng)該符合電路要求的脈沖或正統(tǒng)波;3完成硬件電路的原理設(shè)計;4制作印刷電路板,要求電路布局合理,焊點合格。第2章STC89C52單片機系統(tǒng)結(jié)構(gòu)和原理21STC89C52單片機的簡介在本設(shè)計中采用了STC89C52單片機作為中心處理系統(tǒng)進行研究。STC89C52是一種低功耗、高性能CMOS8位微控制器,具有8K在系統(tǒng)可編程FLASH存儲器。使用ATMEL公司高密度非易失性存儲器技術(shù)制造,與工業(yè)80C51產(chǎn)品指令和引腳完全兼容。片上FLASH允許程序存儲器在系統(tǒng)可編程,亦適于。在單芯片上,擁有靈巧的8位CPU和在系統(tǒng)可編程FLASH,使得STC89C52為眾多嵌入式控制應(yīng)用系統(tǒng)提供高靈活、超有效的解決方案。它與以前的程序存儲器相比具有以下優(yōu)點2用戶可自己寫入,并根據(jù)需要靈活修改程序;用電擦除而不是用紫外線擦除,不需要特殊的擦除設(shè)備;寫入與擦除的速度非???。所有的MCS51系列單片機擁有一個相同的8位微處理器CPU,它由算術(shù)邏輯運算部件ALU、布爾處理器、控制器和工作寄存器組成。算術(shù)邏輯運算部件主要功能是實現(xiàn)數(shù)據(jù)的傳送、數(shù)據(jù)的算術(shù)邏輯運算和布爾量處理,它們包括加、減、乘、除算術(shù)運算;增量(加1)、減量(減1)運算;十進制數(shù)調(diào)整;位置“1”、位置“0”和取反;與、或、異或等邏輯操作;數(shù)據(jù)傳送操作??刂破魇强刂普麄€單片機系統(tǒng)各種操作的部件,它包括時鐘發(fā)生器、定時控制邏輯、指令寄存器譯碼器、程序存儲器和數(shù)據(jù)存儲器的地址/數(shù)據(jù)傳送控制等。從編程的角度看,MCS51CPU對用戶開放的寄存器主要有以下幾個累加器ACC、寄存器B、程序計數(shù)器PC、數(shù)據(jù)指針DPTR(由DPH和DPL兩個8位寄存器組成),程序狀態(tài)寄存器PSW、堆棧指針SP。22單片機的一般結(jié)構(gòu)一、STC89C52單片機內(nèi)部主要性能(1)與MCS51單片機產(chǎn)品兼容(2)8K字節(jié)在系統(tǒng)可編程FLASH存儲器(3)1000次擦寫周期(4)全靜態(tài)操作0HZ33HZ(5)三級加密程序存儲器(6)32個可編程I/O口線(7)個16位定時器/計數(shù)器(8)八個中斷源(9)全雙工UART串行通道(10)低功耗空閑和掉電模式(11)電后中斷可喚醒(12)看門狗定時器(13)雙數(shù)據(jù)指針(14)掉電標識符二、STC89C52單片機結(jié)構(gòu)框圖STC89C52單片機采用模塊式的結(jié)構(gòu),有多個存儲空間,每一個存儲空間都留有一定的余量,這種結(jié)構(gòu)為單片機的發(fā)展留有充分的余地,其結(jié)構(gòu)框圖如圖213。圖21STC89C52結(jié)構(gòu)框圖三、引腳圖和邏輯符號圖STC89C52一般為DIP40雙列直插封裝形式的器件,其引腳圖和邏輯符號如圖22所示。STC89C52的引腳P00P07、P10P17、P20P27、P30P37為四個8位并行輸入/輸出口,其中P3口、P0口和P2口為雙功能口,可以作為普通輸入/輸出口(第一功能),也可以作為特殊輸入/輸出口。RST為復(fù)位輸入線,ALE、為系統(tǒng)擴展控制PSENA線,XTAL1和XTAL2為時鐘電路輸入/輸出線,VCC、GND為電源輸入線,一般接5V和地4。圖22STC89C52引腳圖、邏輯符號圖23STC89C52存儲器配置STC89C52單片機獨立的存儲空間564K字節(jié)程序存儲器空間(00FFFFH);256字節(jié)內(nèi)部RAM空間(00FFH);128字節(jié)內(nèi)部特殊功能寄存器空間(80H0FFH);位尋址空間(00FFH);64K字節(jié)外部數(shù)據(jù)存儲器(RAM/IO)空間(00FFFFH)。一、程序存儲器MCS51的程序存儲器空間為64K字節(jié),地址范圍為0000HFFFFH,其地址指針為16位的程序計數(shù)器PC。0開始的部分程序存儲器(4K,8K,16K,)可以在單片機的內(nèi)部也可以在單片機的外部,這取決于單片機的類型,并由輸入到引腳的電平控制。EASTC89C52內(nèi)部有4KB的程序存儲器,用于存放程序、原始數(shù)據(jù)或表格。若接VCC5V,則程序計數(shù)器PC的值在0至0FFFH之間時,CPU取指令時訪問內(nèi)部的程序存儲器;PC值大于0FFFH時,則訪問外部的程序存儲器。如果接VSS地,則內(nèi)部EA的程序存儲器被忽略,CPU總是從外部的程序存儲器中取指令。單片機外部擴展的程序存儲器一般為EPROM電路(紫外線可擦除電可編程的只讀存儲器)。MCS51的引腳輸出外部程序存儲器的讀選通信號,僅當(dāng)CPU訪問外部程序存儲器時,才PSENPSEN有效(輸出負脈沖)。MCS51復(fù)位后,程序計數(shù)器PC為0,CPU從地址0開始執(zhí)行程序,即復(fù)位入口地址為0。另外,MCS51的中斷入口也是固定的,程序存儲器地址3、0BH、13H、1BH、23H單元為中斷入口,MCS51的中斷源數(shù)目是因型號而異的,中斷入口也有多有少,但總是從地址3開始,每隔8個字節(jié)安排一個中斷入口。表21程序存儲器中的特殊單元單元地址特殊用途0000H啟動地址0003H外部中斷0中斷服務(wù)程序入口地址000BH定時/計數(shù)器T0溢出中斷服務(wù)程序入口地址0013H外部中斷1中斷服務(wù)程序入口地址001BH定時/計數(shù)器T1溢出中斷服務(wù)程序入口地址0023H串行口接收和發(fā)送中斷服務(wù)程序入口地址二、數(shù)據(jù)存儲器STC89C52芯片共有256個RAM單元,其中后128單元被專用寄存器占用,能作為寄存器供用戶使用的只是前128單元,用于存放可讀寫的數(shù)據(jù)。因此通常所說的內(nèi)部數(shù)據(jù)存儲器就是指前128單元,簡稱內(nèi)部RAM。地址范圍為00HFFH(256B)。是一個多用多功能數(shù)據(jù)存儲器,有數(shù)據(jù)存儲、通用工作寄存器、堆棧、位地址等空間。24引腳功能說明STC89C52單片機采用40個引腳雙列直插式封裝,其中有2個專用于主電源引腳,2個外接晶振的引腳,4個控制或與其它電源復(fù)位的引腳,以及32條輸入輸出I/O引腳。下面按引腳功能分為4個部分敘述各個引腳的功能6。一、電源引腳VCC和VSS1、VCC(40腳)芯片工作電源輸入端接5V電源;2、VSS(20腳)芯片工作接地端。二、外接晶振引腳XTAL1和XTAL21、XTAL1(19腳)接外部石英晶體的一端。在單片機內(nèi)部,它是一個反相放大器的輸入端,這個放大器構(gòu)成采用外部時鐘時,對于HMOS單片機,該引腳接地;對于CHMOS單片機,該引腳作為外部振蕩信號的輸入端。2、XTAL2(18腳)接外部晶體的另一端。在單片機內(nèi)部,接至片內(nèi)振蕩器的反相放大器的輸出端。當(dāng)采用外部時鐘時,對于HMOS單片機,該引腳作為外部振蕩信號的輸入端。對于CHMOS芯片,該引腳懸空不接。圖23內(nèi)部振蕩電路外部振蕩電路三、控制信號引腳控制信號或與其它電源復(fù)位引腳有RST、ALE、和等4種形式。PSENA1、RST(9腳)RST即為RESET,為備用電源,所以該引腳為單片機的上電復(fù)位或掉電保護端。當(dāng)單片機振蕩器工作時,該引腳上出現(xiàn)持續(xù)兩個機器周期的高電平,就可實現(xiàn)復(fù)位操作,使單片機復(fù)位到初始狀態(tài)。當(dāng)VCC發(fā)生故障,降低到低電平規(guī)定值或掉電時,該引腳可接上備用電源VPD(5V)為內(nèi)部RAM供電,以保證RAM中的數(shù)據(jù)不丟失。2、ALE(30腳)為地址鎖存允許輸出信號/編程脈沖信號輸入端此信號為外部的擴展大陸低位字節(jié)地址提供一個允許鎖存信號對芯片內(nèi)的EPROM/EEPROM空間固化程序時提供一個編程脈沖信號。當(dāng)訪問外部存儲器時,ALE信號用來所存地址的低位字節(jié)。在不訪問外部存儲器時,ALE端總是以振蕩頻率的6分頻來周期性地輸出正脈沖信號,故可作為對外的時鐘輸出。在訪問外部數(shù)據(jù)存儲器時,要跳過一個ALE脈沖。在對內(nèi)部具有EPROM的8751單片機進行編程時,此引腳用于輸入編程脈沖。3、29腳片外程序存儲器讀選通輸出端,低電平有效。在CPU取指令或PSEN常數(shù)時,用于選通外部程序存儲器。當(dāng)從外部程序存儲器讀取指令或常數(shù)期間,每個機器周期兩次有效,以通過數(shù)據(jù)總線口讀回指令或常數(shù)。當(dāng)訪問外部數(shù)據(jù)存儲器期間,信號將不出現(xiàn)。PSEN4、(31腳)為訪問外部程序儲器控制信號/編程電壓輸入端,低電平有EAEA效。當(dāng)端保持高電平時,片內(nèi)存儲器有效,單片機訪問片內(nèi)程序存儲器4KB(MCS52子系列為8KB)。若超出該范圍時,自動轉(zhuǎn)去執(zhí)行外部程序存儲器的程序。當(dāng)端保持低電平時,無論片內(nèi)有無程序存儲器,均只訪問外部程序存儲器。EA四、輸入/輸出(I/O)引腳1、P0口(39腳22腳)P0口是開漏雙向口可以寫為1使其狀態(tài)為懸浮用作高阻輸入。P0也可以在訪問外部程序存儲器時作地址的低字節(jié),在訪問外部數(shù)據(jù)存儲器時作數(shù)據(jù)總線,此時通過內(nèi)部強上拉輸出1。2、P1口(1腳8腳)P10P17統(tǒng)稱為P1口,可作為準雙向I/O接口使用。對于MCS52子系列單片機,P10和P11還有第2功能P10口用作定時器/計數(shù)器2的計數(shù)脈沖輸入端T2;P11用作定時器/計數(shù)器2的外部控制端T2EX。對于EPROM編程和進行程序校驗時,P1口接收輸入的低8位地址。3、P2口(21腳28腳)P2口是帶內(nèi)部上拉的雙向I/O,口向P2口寫入1時,P2口被內(nèi)部上拉為高電平,可用作輸入口當(dāng)作為輸入腳時,被外部拉低的P2口會因為內(nèi)部上拉而輸出電流見DC電氣特性。在訪問外部程序存儲器和外部數(shù)據(jù)時分別作為地址高位字節(jié)和16位地址MOVXDPTR,此時通過內(nèi)部強上拉傳送1。當(dāng)使用8位尋址方式MOVRI訪問外部數(shù)據(jù)存儲器時,P2口發(fā)送P2特殊功能寄存器的內(nèi)容。4、P3口(10腳17腳)P3口是帶內(nèi)部上拉的雙向I/O口,向P3口寫入1時,P3口被內(nèi)部上拉為高電平,可用作輸入口,當(dāng)作為輸入腳時,被外部拉低的P3口會因為內(nèi)部上拉而輸出電流見DC電氣特性。它為雙功能口,可以作為一般的準雙向I/O接口,也可以將每1位用于第2功能,而且P3口的每一條引腳均可獨立定義為第1功能的輸入輸出或第2功能。P3口的第2功能見表22表22單片機P3口管腳含義綜上所述,STC89C52系列單片機納為以下兩點1單片機功能多,引腳數(shù)少,因而許多引腳具有第2功能;2單片機對外呈3總線形式,由P0、P2口組成16位地址總線;由P0口分時復(fù)用作為數(shù)據(jù)總線。25中斷系統(tǒng)現(xiàn)代的計算機都具有實時處理功能,能對外界異步發(fā)生的事件作出及時的處理,這是依靠它們的中斷來實現(xiàn)的。所謂中斷是指中央處理器CPU在處理某件事情的時候,外部發(fā)生了某一事件(如定時器計數(shù)溢出),請求CPU迅速去處理,CPU暫時中斷當(dāng)前的工作,轉(zhuǎn)入處理所發(fā)生的事件,處理完以后,再回到原來中斷的地方,繼續(xù)原來的工作。這樣的過程就稱為中斷。實現(xiàn)這種功能的部件成為中斷系統(tǒng)。產(chǎn)生中斷的請求源就成為中斷源。最典型的單片機有五個中斷源,分別是外部中斷0、定時器T0、外部中斷1、定時器T1、和串行口中斷。在這次的編程中就用到了這些中斷。這五個中斷的入口地址各不相同,列表如表237表23中斷的入口地址引腳第2功能P30RXD(串行口輸入端0)P31TXD(串行口輸出端)P32INT0(外部中斷0請求輸入端,低電平有效)P33INT1(外部中斷1請求輸入端,低電平有效)P34T0(時器/計數(shù)器0計數(shù)脈沖輸入端)P35T1(時器/計數(shù)器1數(shù)脈沖輸入端)P36WR(外部數(shù)據(jù)存儲器空間寫通信號輸出端,低電平有效)P37RD(外部數(shù)據(jù)存儲器空間讀信號輸出端,低電平有效)中斷源入口地址外部中斷00003H定時器T0000BH外部中斷10013H定時器T1001BH串行口中斷0023H典型的單片機可以實現(xiàn)二級中斷服務(wù)程序嵌套,每個中斷源可以編程為高級中斷,或低優(yōu)先級中斷,允許或禁止向CPU請求中斷。與中斷系統(tǒng)有關(guān)的特殊功能寄存器有中斷允許寄存器IE、中斷優(yōu)先級控制寄存器IP、中斷源寄存器(TCON,SCON中的有關(guān)位)。251中斷源89C52單片機的八個中斷源其中的五個是2個INT0、INT1(P32,P33)上輸入的外部中斷源;3個內(nèi)部中斷源,它們是定時器/計數(shù)器T0、T1的溢出中斷源和串行口的發(fā)送接受中斷。這些中斷源分別鎖在TCON、SCON的相應(yīng)位中8。一、外部中斷源INT0、INT1上輸入的兩個外部中斷源和它們的觸發(fā)方式控制位所存在特殊寄存器TCON的低四位,TCON的高四位為T1、T0的運行控制位和溢出標志位表24外部中斷源D7D6D5D4D3D2D1D0TF1TR1TF0TR0IE1IT1IE0IT0IE1外部中斷1請求源(INT1,P33)標志。IE11,外部中斷1正向CPU請求中斷,當(dāng)CPU響應(yīng)該中斷時由硬件“0”IE1(邊沿觸發(fā)方式)。IT1外部中斷1觸發(fā)方式控制位。IT10,外部中斷1位電平觸IT11,外部中斷1位邊沿觸發(fā)方式。IE0外部中斷0請求源(INT0,P32)標志。IE01外部中斷0向CPU請求中斷,當(dāng)CPU響應(yīng)中斷時,由硬件清“0”IE0(邊沿觸發(fā)方式)。IT0外部中斷0觸發(fā)方式控制位。IT00,外部中斷0為電平觸發(fā)方式,IT01,外部中斷0為邊沿觸發(fā)方式。其功能和IT1相同。二、內(nèi)部中斷源定時器/計數(shù)器T0的溢出中斷TF0(TCON5)T0被允許計數(shù)以后,從初值開始加1計數(shù),當(dāng)產(chǎn)生溢出時置“1”IF0,向CPU請求中斷,一直保護到CPU響應(yīng)該中斷時才由硬件清零(也可以由查詢程序清零)。定時器/計數(shù)器T1的溢出中斷TF1(TCON7)其功能與TF0相同。串行口中斷串行口的接收中斷RI(SCON0)和發(fā)送中斷TI(SCON1)邏輯或以后作為內(nèi)部的一個中斷源。252中斷控制單片機對中斷源的開放或屏蔽,每個中斷源是否允許中斷,89C51是由內(nèi)部的中斷允許寄存器IE控制的(IE為特殊功能寄存器,它的字節(jié)地址為A8H),其格式如表259表25中斷控制格式D7D6D5D4D3D2D1D0EAESET1EX1ET0EX0EACPU的中斷開放標志EA1,CPU開放中斷EA0,CPU屏蔽所有的中斷申請。ES串行口中斷允許位。ES1,允許串行口中斷;ES0,禁止串行口中斷。ET1定時器/計數(shù)器T1的溢出中斷允許位。ET11,允許T1中斷;ET10,禁止T1中斷。EX1外部中斷1中斷允許位。EX11允許外部中斷1中斷;EX10,禁止外部中斷1中斷。ET0定時器/計數(shù)器T0溢出中斷允許位。ET01,允許T0中斷;ET00,禁止T0中斷。EX0外部中斷1中斷允許位。EX01,允許外部中斷0中斷;EX10,禁止外部中斷0中斷。第三章硬件設(shè)計31硬件電路設(shè)計硬件電路主要分為電源電路、單片機控制部分、同步門控制電路、計數(shù)和液晶顯示電路。電路采用PROTELL99SE是電路設(shè)計中功能比較強大軟件,本設(shè)計用其原理圖和PCB圖。32電源電路此次設(shè)計的電源需求,共需要用到5V,15V,15V三種電壓,其中15V,15V直接由外部電源直接產(chǎn)生提供,而5V電源自行設(shè)計,主要提供給AT89C52單片機使用,直接設(shè)計在電路當(dāng)中,原理見圖31圖315V電源電路在圖31中,首先電源電壓220V經(jīng)過變壓器變壓產(chǎn)生一個18V左右的交流電壓,再經(jīng)過橋式整流電路和2200UF濾波電容C4的濾波產(chǎn)生一個20V左右的直流電壓,再經(jīng)7805三端穩(wěn)壓塊產(chǎn)生一個5V的電壓,再次經(jīng)過1000UF濾波電容C5再次濾波,5V電壓就很穩(wěn)定。此外,在圖31中使用的LM7805是正電壓穩(wěn)壓集成電路,為固定輸出5V輸出穩(wěn)壓集成電路采取特殊方法也可使輸出高于5V,最大輸出電流為1A。具有體積小、集成度高、線性調(diào)整率和負載調(diào)整率高,在線性電源時代占領(lǐng)了很大市場。33單片機控制部分STC89C52單片機為40引腳雙列直插芯片,有四個I/O口P0,P1,P2,P3,MCS51單片機共有4個8位的I/O口(P0、P1、P2、P3),每一條I/O線都能獨立地作輸出或輸入。單片機的最小系統(tǒng)如下圖211所示,18引腳和19引腳接時鐘電路,XTAL1接外部晶振和微調(diào)電容的一端,在片內(nèi)它是振蕩器倒相放大器的輸入,XTAL2接外部晶振和微調(diào)電容的另一端,在片內(nèi)它是振蕩器倒相放大器的輸出。第9引腳為復(fù)位輸入端,接上電容,電阻及開關(guān)后夠上電復(fù)位電路,20引腳為接地端,40引腳為電源端。如圖32所示CP02367RESTXDINWLG/VUJKB圖32單片機控制部分34同步門控制電路同步門控制電路主要由D觸發(fā)器74LS74(同步門控制)、六反相器74LS04和二輸入或非門74LS02組成(主門1、主門2)。主門1控制被測信號FX的通過,主門2控制時鐘信號F0的通過,兩門的啟閉都由同步門控制電路控制。被測信號在同步控制門的作用下,產(chǎn)生一個與被測信號同步的閘門信號,被測信號與標準信號(時基信號)在同步門控制信號的控制下。在同步門打開時通過同步門分別輸入到事件計數(shù)器和時間計數(shù)器的信號輸入端,計數(shù)器開始計數(shù)。同步門關(guān)閉時信號不能通過主門,計數(shù)器停止計數(shù),單片機發(fā)出命令讀入計數(shù)器的數(shù)值,并進行數(shù)據(jù)處理,將處理后的結(jié)果送顯示。在同步門的控制下,一方面保證了被測信號和時基信號的同步測量;另一方面在同步門打開后計數(shù)器并不是馬上計數(shù),而是在被測信號的下一個上升沿開始計數(shù),同步門關(guān)閉后計數(shù)器也不是馬上停止計數(shù),而是在被測信號的下一個上升沿停止計數(shù)。即在實際閘門時間計數(shù),從而提高了測量精度。具體電路圖如圖33所示CLR1D2K3P4Q56GN7890VUSFXF圖33(A)同步門74LS74電路圖YAB圖33(B)同步門74LS02、74LS04電路圖74LS74簡要說明74LS74為帶預(yù)置和清除端的兩組D型觸發(fā)器引出端符號1CP、2CP時鐘輸入端1D、2D數(shù)據(jù)輸入端、1Q、2Q輸出端Q12CLR1、CLR2直接復(fù)位端(低電頻有效)PR1、PR2直接置位端(低電平有效)圖34(A)外接管腳圖圖34(B)邏輯圖35計數(shù)電路單片機選用STC89C52,其中P10用于控制同步門D觸發(fā)器74LS74產(chǎn)生同步的閘門信號,P12用于對74LS393組成的計數(shù)器清零,一次計數(shù)完成后單片機通過控制兩片74LS244讀取被測信號與標準信號的低8位計數(shù)值,高位計數(shù)值在單片機的T0、T1中。然后單片機對計數(shù)值進行運算處理,并送出顯示。計數(shù)器包括事件計數(shù)器和時間計數(shù)器兩部分,它們是兩組完全相同的計數(shù)電路。分別由前后兩級組成。前級由雙4位異步計數(shù)器74LS393級聯(lián)構(gòu)成八位二進制計數(shù)器;后級由STC89C52單片機內(nèi)的定時/計數(shù)器構(gòu)成十六位二進制計數(shù)器。標準信號部分采用10MHZ石英晶體振蕩器來提供測量所需要的標準脈沖信號。由于采用D觸發(fā)器實現(xiàn)的同步門的同步作用,事件計數(shù)器所記錄的NX值已不存在誤差的影響,但由于時鐘信號與閘門的開和關(guān)無確定的相位關(guān)系,時間計數(shù)器所記錄的N0的值仍存在1誤差的影響,只是由于時鐘頻率很高,誤差的影響很小。所以在全頻段的測量精度是均衡的,從而實現(xiàn)等精度頻率測量。具體電路圖如圖35所示1GA2Y4356789ND0VCULSCLEARQBDPFX圖35計數(shù)電路74LS393簡要說明74LS393為兩個4位二進制計數(shù)器,異步清零端(1CLEAR,2CLEAR)為高電平。不管時鐘端1A,2A狀態(tài)如何,即可以完成清除功能。當(dāng)1CLEAR,2CLEAR為低電平時,1A,2A脈沖下降沿作用下進行計數(shù)操作。引出端符號1A、2A時鐘輸入端(下降沿有效)1CLEAR,2CLEAR異步清零端1QA1QD、2QA2QB輸出端圖36(A)74LS393外接管腿圖圖36(B)74LS393邏輯圖36顯示電路顯示器是最常用的輸出設(shè)備,其種類繁多,但在單片機系統(tǒng)設(shè)計中最常用的是發(fā)光二極管顯示器(LED)和液晶顯示器(LCD)兩種。由于這兩種顯示器結(jié)構(gòu)簡單,價格便宜,接口容易實現(xiàn),因而得到廣泛的應(yīng)用,本次方案采用了1602液晶顯示器。3611602的功能簡介140通道點陣LCD驅(qū)動;2可選擇當(dāng)作行驅(qū)動或列驅(qū)動;3輸入/輸出信號輸出,能產(chǎn)生202個LCD驅(qū)動波形輸入,接受控制器送出的串行數(shù)據(jù)和控制信號,偏壓V1V6;4通過單片機控制將所測的頻率信號讀數(shù)顯示出來;具體引腳功能見表31311602引腳和指令功能引腳符號名稱功能1VSS接地0V2VDD電路電源5V(正負10)3VEE液晶驅(qū)動電壓V0為液晶顯示器對比度調(diào)整端,接正電源時對比度最弱,接地電源時對比度最高。4RS寄存器選擇信號高電平時選擇數(shù)據(jù)寄存器、低電平時選擇指令寄存器。5R/W讀/寫信號高電平時進行讀操作,低電平時進行寫操作。當(dāng)RS和RW共同為低電平時可以寫入指令或者顯示地址,當(dāng)RS為低電平RW為高電平時可以讀忙信號,當(dāng)RS為高電平RW為低電平時可以寫入數(shù)據(jù)。6E片選信號當(dāng)E端由高電平跳變成低電平時,液晶模塊執(zhí)行命令。714DB0DB7數(shù)據(jù)線D0D7為8位雙向數(shù)據(jù)線。3621602與STC89C52的連接123456790YCONRKVP圖37顯示電路圖37中為單片機與1602的連接圖。其中,D0D7為1602數(shù)據(jù)口,分別接單片機的P00P07口;單片機的P20口接1602的復(fù)位腳RS;單片機的P21口接1602的讀/寫控制腳RW;單片機的P22口接1602的使能端E;通過一個10K的電位器調(diào)整VEE電壓改變液晶對比度,對比度調(diào)節(jié)不當(dāng)時會產(chǎn)生“鬼影”。通過這種連接方式,就可以實現(xiàn)單片機對1602控制顯示測得頻率數(shù)值。第四章軟件設(shè)計本章節(jié)主要介紹了電路的軟件設(shè)計,整個系統(tǒng)由主程序,中斷服務(wù)程序模塊、循環(huán)和顯示子程序模塊組成,本文將對這幾個子模塊的設(shè)計做介紹。41程序流程411系統(tǒng)主程序流程圖系統(tǒng)軟件的設(shè)計主要是和硬件電路相結(jié)合,正確地實現(xiàn)等精度測量。整個系統(tǒng)軟件的設(shè)計采用了自頂向下的模塊化的結(jié)構(gòu)方式,將各個功能分成獨立模塊,由系統(tǒng)的程序統(tǒng)一管理執(zhí)行。它主要完成各種功能,如測量、數(shù)據(jù)運算、顯示等。如圖41所示為頻率測量主程序流程圖,在計數(shù)前對計數(shù)器清零。然后,發(fā)出命令打開閘門進入閘門時間,計數(shù)器在閘門時間內(nèi)計數(shù)。延時子程序結(jié)束后,發(fā)出命令關(guān)閉閘門使計數(shù)器停止計數(shù);單片機再依照程序讀取計數(shù)器的值,并與單片機內(nèi)部計數(shù)器所計的值合并在一起。由公式可知,即被測頻率FXF0NX/N0來進行運算,由于精度要求,NX和N0都由24位二進制數(shù)來計數(shù)。開閘門設(shè)置取樣時間初始化定時器運算程序讀取數(shù)據(jù)顯示程序開始一個周期結(jié)束設(shè)置定時器0開外部中斷0,外部中斷1設(shè)置取樣時間為1S分別讀取兩個緩存器的值,根據(jù)外部中斷產(chǎn)生次數(shù)以及讀取緩存器的值計算1S內(nèi)兩個頻率源的的周期數(shù)根據(jù)等精度原理計算被測源的頻率將計算出的頻率通過液晶顯示出來圖41主程序流程圖412初始化液晶初始化液晶設(shè)置基本指令集開啟顯示清屏AC遞增畫面不動圖42液晶初始化流程圖413初始化定時器初始化定時器設(shè)置定時器T1,1MS溢出設(shè)置定時器T0初始值為0用于計數(shù)圖43初始化定時器414定時器1溢出中斷流程本設(shè)計中通過定時器1來定時1S,用于標準信號和待測信號的計數(shù)。通過設(shè)定初始值來使定時器T1一次溢出中斷為50MS。在此通過一個全局變量FLAG,來判斷是否達到1S,每到50MSFLAG加1,當(dāng)FLAG20時,所定時時間為2050MS1S。設(shè)置TH1、TL1初始值關(guān)全局中斷FLAGFLAG滿20關(guān)計數(shù)器T0、T1開全局中斷定時器T1溢出中斷圖42中斷子程序流程圖415主循環(huán)主循環(huán)中,先對標準信號計數(shù),判斷FLAG是否滿20,如果滿20則代表計數(shù)滿1S,此時計算計數(shù)器T0中數(shù)值,然后再加上P1口的數(shù)據(jù),則為此次計數(shù)值。下次計數(shù)為對待測信號的計數(shù),與標準信號計數(shù)原理相同。最后將兩次信號比較,得到待測信號的頻率值。主循環(huán)打開標準信號測量通道開定時器T0、T1FLAG20NUNTH0256TL0FREE1NUM256P1得到頻率值以MS為單位關(guān)定時器,并置0,F(xiàn)LAG0清空74LS393計數(shù)值打開待測信號的測量通道開定時器FLAG20NUMTH0256TL0FREE2NUM256P1得到頻率值以MS為單位FXFREE1/FREE210MHZ顯示頻率TH00TL00清空計數(shù)器0清空74LS393的計數(shù)值開定時器T1、T0圖43主循環(huán)流程圖416顯示子程序顯示子程序?qū)⒋娣旁陲@示緩沖區(qū)的頻率或周期值送往液晶上顯示出來。由于1602液晶可以顯示32各個字符,所以只顯示頻率的話有點浪費。在本設(shè)計中,將液晶的第一行分別顯示了TH0、TL0、P1的值,用于調(diào)試。第二行全部用于顯示頻率,可以最低顯示到個位,精度較高。在編程應(yīng)用1602液晶驅(qū)動時,只需要根據(jù)圖44的流程圖調(diào)用相關(guān)函數(shù)既可完成顯示模塊的所有功能,對于本課題所用的1602驅(qū)動函數(shù),其中的液晶初始化函數(shù)已經(jīng)包括了初始化和清屏兩大功能,此外,在指定位置顯示一串字符的函數(shù)也已經(jīng)包括了設(shè)置顯示位置和顯示字符串的兩大功能,因為在本課題的實際編程中對于液晶顯示模塊的設(shè)計相對來說比較簡單。顯示子程序?qū)H0/TL0/P1的值都轉(zhuǎn)換成字符,并填充到顯示緩存中將FX頻率值轉(zhuǎn)換成字符,填充到顯示緩存將TH0/TL0/P1的值顯示在第一行將頻率值顯示在第二行圖441602液晶顯示基本流程第5章系統(tǒng)調(diào)試51硬件調(diào)試硬件電路主要包括模擬電路部分,單片機外圍電路及顯示電路,在聯(lián)調(diào)之前必須要驗證這幾個部分能正常工作。把仿真機的仿真頭插到電路板單片機的插槽中,接通仿真機和電路板的電源,然后打開界面輸入顯示子程序進行編譯、加載調(diào)試。如果能在液晶上顯示正確的數(shù)字,則單片機與顯示部分能夠正常工作。經(jīng)過反復(fù)的調(diào)試與修改,單片機部分驗證完畢。模擬電路部分分低頻和高頻兩部分,分別進行調(diào)試。低頻部分通過輸入一個0到10MHZ的信號,幅度為30MV,通過示波器觀察其輸出,可以看出其輸出幅度為37V,實現(xiàn)了放大功能。高頻部分通過輸入一個大于1MHZ的高頻信號,幅度在50MV左右,可以發(fā)現(xiàn)其輸出變?yōu)榉葹?V左右的方波,實現(xiàn)了放大功能。52調(diào)試軟件的介紹521KEILUVISION3軟件介紹一、概述KEILUVISION3是美國KEILSOFTWARE公司出品的51系列兼容單片機C語言軟件開發(fā)系統(tǒng),與匯編相比,C語言在功能上、結(jié)構(gòu)性、可讀性、可維護性上有明顯的優(yōu)勢,因而易學(xué)易用。用過匯編語言后再使用C來開發(fā),體會更加深刻。KEILUVISION3軟件提供豐富的庫函數(shù)和功能強大的集成開發(fā)調(diào)試工具,全WINDOWS界面。另外重要的一點,只要看一下編譯后生成的匯編代碼,就能體會到KEILC51生成的目標代碼效率非常之高,多數(shù)語句生成的匯編代碼很緊湊,容易理解。在開發(fā)大型軟件時更能體現(xiàn)高級語言的優(yōu)勢。二、工作界面首先使用KEIL新建一個工程,設(shè)置好各個選項。然后新建一個C文件,并編寫所有源代碼然后編譯,查錯,直到編譯完全通過為止,下圖就是編譯通過后的界面。圖51有關(guān)編譯、連接、項目設(shè)置的工具條圖52正確編譯、連接之后的結(jié)果在設(shè)置好工程后,即可進行編譯、連接。選擇菜單PROJECTBUILDTARGET,對當(dāng)前工程進行連接,如如果當(dāng)前文件已修改,軟件會先對該文件進行編譯,然后再連接以產(chǎn)生目標代碼如果選擇REBUILDALLTARGETFILES將會對當(dāng)前工程中的所有文件重新進行編譯然后再連接,確保最終產(chǎn)生的目標代碼是最新的,而TRANSLATE項則僅對該文件進行編譯,不進行連接。以上操作也可以通過工具欄按鈕直接進行。圖51是有關(guān)編譯、設(shè)置的工具欄按鈕,從左到右分別是編譯、連接、全部重建、停止編譯和對工程進行設(shè)置。編譯過程中的信息將出現(xiàn)在輸出窗口的BUILD頁中,如果源程序中有語法錯誤,會有錯誤報告出現(xiàn),雙擊該行,可以定位到出錯的位置,對源程序反復(fù)修改之后,最終會得到如圖52所示的結(jié)果,提示獲得了名為EXAM1HEX的文件,該文件即可被編程器讀入并寫到芯片中,同時還產(chǎn)生了一些其它相關(guān)的文件,可被用于KEIL的仿真與調(diào)試,這時可以進入下一步調(diào)試的工作。三、調(diào)試主要方法和技巧1常用調(diào)試命令在對工程成功進行匯編、連接以后,按CTRL5或者使用菜單DEBUGSTART/STOPDEBUGSESSION即可進入調(diào)試狀態(tài),KEIL內(nèi)建立一個仿真CPU來模擬執(zhí)行程序,該仿真CPU功能強大,可以在沒有硬件和仿真機的情況下進行程序的調(diào)試。進入調(diào)試狀態(tài)后,界面與編輯狀態(tài)相比有明顯的變化,DEBUG菜單項中原來不能用的命令現(xiàn)在可以使用了,工具欄會多出一個用于運行和調(diào)試的工具條,DEBUG菜單上的大部分命令可以在此找到對應(yīng)的快捷按鈕,從左到右依次是復(fù)位、運行、暫停、單步、過程單步、執(zhí)行完當(dāng)前子程序、運行到當(dāng)前行、下一狀態(tài)、打開跟蹤、觀察跟蹤、反匯編窗口、觀察窗口、代碼作用范圍分析、性能分析、工具按鈕等命令。學(xué)習(xí)程序調(diào)試,必須明確兩個重要的概念,即單步執(zhí)行與全速運行。全速執(zhí)行是指一行程序執(zhí)行完以后緊接著執(zhí)行下一行程序,中間不停止,這樣程序執(zhí)行的速度很快,并可以看到該段程序執(zhí)行的總體效果,即最終結(jié)果正確還是錯誤,但如果程序有錯,則難以確認錯誤出現(xiàn)在哪些程序行。單步執(zhí)行是每次執(zhí)行一行程序,執(zhí)行完改行程序以后即停止,等待命令執(zhí)行下一行程序,此時可以觀察該行程序執(zhí)行完以后得到的結(jié)果,是否與我們寫該行程序所想得到的結(jié)果相同,借此可以找到程序中的問題所在。程序調(diào)試中,這兩種運行方式都要用到。2在線匯編在進入KEIL的調(diào)試環(huán)境以后,如果發(fā)現(xiàn)程序有錯,可以直接對源程序進行修改,但是要使修改后的代碼起作用,必須先退出調(diào)試環(huán)境,重新進行編譯、連接后再次進入調(diào)試,如果只是需要對某些進行測試,或僅需要對源程序進行臨時的修改,這樣的過程未免有些麻煩,為此KEIL軟件提供了在線匯編的能力,將光標定位于需要修改的程序行上,用菜單DEBUGINLINEASSAMBLY即可出現(xiàn)如圖53的對話框,在ENTERNEW后面的編輯框內(nèi)直接輸入需要更改的程序語句,輸入完后鍵入回車將自動指向下一條語句,可以繼續(xù)修改,如果不再需要修改,可以點擊右上角的關(guān)閉按鈕關(guān)閉窗口。圖53在線匯編窗口3斷點設(shè)置程序調(diào)試時,一些程序行必須滿足一定的條件才能被執(zhí)行到,這些條件往往是異步發(fā)生或難以預(yù)先設(shè)定的,這類問題使用單步執(zhí)行的方法是很難調(diào)試的,這時就要使用到程序調(diào)試中的另一種非常重要的方法斷點設(shè)置。斷點設(shè)置的方法有多種,常用的是在某一程序行設(shè)置斷點,設(shè)置好斷點后可以全速運行程序,一旦執(zhí)行到該程序行停止,可在此觀察有關(guān)變量值,以確定問題所在。在程序行設(shè)置/移除斷點的方法是將光標定位于需要設(shè)置斷點的程序行,使用菜單DEBUGINSERT/REMOVEBREAKPOINT設(shè)置或移除斷點DEBUGENABLE/DISABLEBREAKPOINT是開啟或暫停光標所在行的斷點功能DEBUGDISABLEALLBREAKPOINT暫停所有斷點DEBUGKILLALLBREAKPOINT清除所有的斷點設(shè)置。這些功能也可以用工具條上的快捷按鈕進行設(shè)置。53調(diào)試531測頻精度分析由第一章所述的測量原理可知,本系統(tǒng)的測頻公式為FXFSNX/NS其誤差分析如下設(shè)所測頻率值為FX,其真實值為FXE,標準頻率為FS。在一次測量中,由于FX計數(shù)的起停時間都是由該信號的上跳沿觸發(fā)的,在TPR時間內(nèi)FX的計數(shù)NX無誤差;此時內(nèi)的計數(shù)NS最多相差一個脈沖,即|NS|1則FX/NXFS/NSFXE/NXFS/NSNS由此推得FXFS/NSNXFXEFS/NSNSNX根據(jù)相對誤差公式有FXE/FXE|FXEFX|/FXE可以得FXE/FXE|NS|/NS|NS|1|NS|/NS1/NS即相對誤差FXE/FXE1/NS又NSTPRFS由此可知(1)相對測量誤差與頻率無關(guān);(2)增大TPR或提高FS,可以增大NS,減少測量誤差,提高測量精度;(3)本測頻系統(tǒng)的測量精度與預(yù)置門寬度和標準頻率有關(guān),與被測信號的頻率無關(guān)。在預(yù)置門時間和常規(guī)測頻閘門時間相同而被測信號頻率不同的情況下,本測頻系統(tǒng)所采用的測量方法的測量精度不變。為了恒定測量精度,可采用高頻率穩(wěn)定度和高精度晶體振蕩器作標準頻率發(fā)生器。532實驗測試數(shù)據(jù)整個系統(tǒng)比較復(fù)雜,因此我們采用自底向上的調(diào)試方法,也就是先進行各個單元電路的軟件仿真和硬件調(diào)試,在各個單元電路調(diào)試好后再進行系統(tǒng)調(diào)試,最后進行硬件的編程固化及系統(tǒng)的組裝。程序在KEIL3上調(diào)試通過。并使用目前較為流行的C語言編寫。既方便復(fù)雜的數(shù)學(xué)運算,判斷語句的使用又靈活,不用考慮推棧情況,所以相對與匯編漏洞出現(xiàn)較少。經(jīng)軟件的調(diào)試修改再調(diào)試,如此反復(fù),排除各種故障最終基本完成了設(shè)計所要求的任務(wù)。由單片機內(nèi)部定時器計數(shù)器構(gòu)成基本測量電路,外加整形和分頻電路,由系統(tǒng)軟件設(shè)計可以測出1HZ9999HZ的量程范圍,使用的動態(tài)顯示測量時會出現(xiàn)閃爍現(xiàn)象,但顯示數(shù)值準確,穩(wěn)定時顯示不閃爍。測試由信號源發(fā)出的頻率時,測量值如表51所示。測量條件方波,幅度為VPP10V。表51SP1641B型函數(shù)信號發(fā)生器發(fā)出的信號測量結(jié)果被側(cè)信號參考頻率測量值誤差88354KHZ883587KHZINCLUDE“LCD1602H“INCLUDE“INTRINSH“DEFINEUCHARUNSIGNEDCHARDEFINEUINTUNSIGNEDINTDEFINEULONGUNSIGNEDLONGUCHARFLAG/成功標志ULONGFREE/頻率計數(shù)ULONGNUMSBITG242P31SBITCLEAR393P32/函數(shù)原型VOIDDELAY_50US功能50US的延時/VOIDDELAY_50USUNSIGNEDINTT/T100,5MST1000,50MSUNSIGNEDCHARJFORT0TFORJ19J0J/函數(shù)原型VOIDTIME1S功能/VOIDTIMER1INTERRUPT3EA0TH115536/256TL115536256FLAGIFFLAG20TR10TR00EA1VOIDUPDATA_DISP/更新緩沖區(qū)數(shù)據(jù)程序DISP_BUF10TH0/1000X30DISP_BUF11TH0100/100X30DISP_BUF12TH0100X30DISP_BUF13DISP_BUF14TL0/1000X30DISP_BUF15TL0100/100X30DISP_BUF16TL0100X30DISP_BUF17DISP_BUF18P1/1000X30DISP_BUF19P1100/100X30DISP_BUF110P1100X30DISP_BUF111DISP_BUF112SIZEOFUNSIGNEDINT0X30DISP_BUF113SIZEOFUNSIGNEDSHORTINT0X30DISP_BUF114SIZEOFUNSIGNEDLONG0X30DISP_BUF115SIZEOFDOUBLE0X30DISP_BUF1160DISP_BUF20DISP_BUF21DISP_BUF22DISP_BUF230DISP_BUF240X30/1GDISP_BUF25FREEULONG1000000000/ULONG1000000000X30/100MDISP_BUF26FREEULONG100000000/ULONG100000000X30/10MDISP_BUF27FREEULONG10000000/ULONG10000000X30/1MDISP_BUF28FREEULONG1000000/ULONG1000000X30/100KDISP_BUF29FREEULONG100000/100000X30/10KDISP_BUF210FREE10000/10000X30/千DISP_BUF211FRE

溫馨提示

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

評論

0/150

提交評論