版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、<p><b> 1緒論</b></p><p> 1.1研究背景及主要研究意義</p><p> 頻率是電子技術(shù)領(lǐng)域永恒的話題,電子技術(shù)領(lǐng)域離不開頻率,一旦離開頻率,電子技術(shù)的發(fā)展是不可想象的,為了得到性能更好的電子系統(tǒng),科研人員在不斷的研究頻率,CPU就是用頻率的高低來評(píng)價(jià)性能的好壞,可見,頻率在電子系統(tǒng)中的重要性。</p><
2、p> 頻率計(jì)又稱為頻率計(jì)數(shù)器,是一種專門對(duì)被測信號(hào)頻率進(jìn)行測量的電子測量儀器,其最基本的工作原理為:當(dāng)被測信號(hào)在特定的時(shí)間段T內(nèi)的周期個(gè)數(shù)N時(shí),則被測信號(hào)的頻率f=N/T.電子計(jì)數(shù)器是一種基礎(chǔ)測量儀器,到目前為止已有三十多年的發(fā)展歷史。早期,設(shè)計(jì)師們追求的目標(biāo)主要是擴(kuò)展測量范圍,再加上提高測量精度、穩(wěn)定度等,這些也是人們衡量電子計(jì)算機(jī)的技術(shù)水平,決定電子技術(shù)器價(jià)格高低的主要依據(jù)。目前這些技術(shù)日臻完善,成熟。應(yīng)用現(xiàn)代技術(shù)可以輕松地
3、將電子計(jì)數(shù)器的頻率擴(kuò)展到微波頻段。</p><p> 1.2數(shù)字頻率計(jì)的發(fā)展現(xiàn)狀</p><p> 隨著科學(xué)技術(shù)的發(fā)展,用戶對(duì)電子計(jì)數(shù)器也提出了新的要求。對(duì)于低檔產(chǎn)品要求使用操作方便,量程(足夠)寬,可靠性高,價(jià)格低。而對(duì)中高檔產(chǎn)品,則要求有較高的分辨率,高精度,高穩(wěn)定度,高測量速率;除通常通用計(jì)數(shù)器所具有的功能外,還要有數(shù)據(jù)處理功能,統(tǒng)計(jì)分析功能等等,或者包含電壓測量等其他功能。這些
4、要求有的已經(jīng)實(shí)現(xiàn)或者部分實(shí)現(xiàn),但要真正地實(shí)現(xiàn)這些目標(biāo),對(duì)于生產(chǎn)廠家來說,還有許多工作要做,而不是表面看來似乎發(fā)展到頭了。</p><p> 由于微電子技術(shù)和計(jì)算機(jī)技術(shù)的發(fā)展,頻率計(jì)都在不斷地進(jìn)步著,靈敏度不斷提高,頻率范圍不斷擴(kuò)大,功能不斷增加。在測試通訊、微波器件或產(chǎn)品時(shí),通常都市較復(fù)雜的信號(hào),如含有復(fù)雜頻率成分、調(diào)制的含有未知頻率分量的、頻率固定的變化的、純凈的或疊加有干擾的等等。為了能正確的測量不同類型的
5、信號(hào),必須了解待測信號(hào)特性和各種頻率測量儀器的性能。微波技術(shù)器一般使用類型頻譜分析儀的分頻或混頻電路,另外還包含多個(gè)時(shí)間基準(zhǔn)、合成器、中頻放大器等。雖然所有的微波計(jì)數(shù)器都是用來完成技術(shù)任務(wù)的,但各自廠家都有各自的一套復(fù)雜計(jì)數(shù)器的設(shè)計(jì)、使得不同型號(hào)的技術(shù)其性能和價(jià)格會(huì)有所差別,比如說一些計(jì)數(shù)器可以測量脈沖參數(shù),并提供類似與頻率分析儀的屏幕顯示,對(duì)這些功能具有不同功能不同規(guī)格的眾多儀器,我們應(yīng)該視測試需要正確的選擇以達(dá)到最經(jīng)濟(jì)和最佳的應(yīng)用效
6、果。</p><p> 電子計(jì)數(shù)器是其它數(shù)字化儀器的基礎(chǔ),在他的輸入通道接入各種模-數(shù)變換器,再利用相應(yīng)的換能器便制成各種數(shù)字化儀器。電子計(jì)數(shù)器的優(yōu)點(diǎn)是測量精度高,量程寬、功能多、操作簡單、測量速度快,直接顯示數(shù)字,而且易于實(shí)現(xiàn)測量過程自動(dòng)化,在工業(yè)生產(chǎn)和科學(xué)實(shí)驗(yàn)中得到廣泛的應(yīng)用。</p><p> 頻率計(jì)的主要實(shí)現(xiàn)方法有直接式、鎖相式、直接數(shù)字式和混合式四種。直接式的優(yōu)點(diǎn)是速度快、相
7、位噪聲低但結(jié)構(gòu)復(fù)雜、雜散多,一般只應(yīng)用在地面雷達(dá)中。鎖相式和直接數(shù)字式都同時(shí)具有容易實(shí)現(xiàn)產(chǎn)品系列化、小型化、模塊化和工程化的特點(diǎn),其中鎖相式更是以其容易實(shí)現(xiàn)相位同步的的自動(dòng)控制且低功耗的特點(diǎn)成為各種眾多業(yè)內(nèi)人士的首選,應(yīng)用最為廣泛。</p><p> 1.3本課題主要研究內(nèi)容</p><p> 在本次設(shè)計(jì)中我們要以單片機(jī)8051為控制核心,設(shè)計(jì)出有數(shù)字顯示的簡易頻率計(jì),同時(shí)要求檢測的電
8、路,測量信號(hào)類型為方波、正弦波,測量范圍為0.5-5V,測量頻率為1HZ-1MHZ,測量誤差≤0.1﹪,且有一個(gè)六位系統(tǒng)顯示電路,能循環(huán)顯示測量值。</p><p><b> 2方案論證</b></p><p> 2.1數(shù)字頻率計(jì)測量方法的論證及選擇</p><p><b> 1. 直接測量法</b></p&g
9、t;<p> 直接測量法:無需利用被測量與其他實(shí)測量之間的函數(shù)關(guān)系進(jìn)行額外計(jì)算,就可直接得到被測量的值的測量方法。</p><p> 依據(jù)基本原理所實(shí)現(xiàn)的頻率、周期以及脈沖寬度的數(shù)字化測量是一種直接測量法,由于該方案比較簡單,若能夠滿足本題任務(wù)的要求則應(yīng)作為首選方案。通過對(duì)測頻、測周期以及測脈沖寬度的數(shù)字化測量方法的基本原理及其測量誤差的分析,得知在被測信號(hào)的整個(gè)頻率范圍內(nèi),無論采用直接測頻或直
10、接測周期的方法均不能全面滿足測試誤差≤0.1%的要求。</p><p><b> 2.間接測量法:</b></p><p> 間接測量法:通過對(duì)與被測量有已知關(guān)系的其他量進(jìn)行直接測量,來確定被測量的值的測量方法。在實(shí)際應(yīng)運(yùn)中采用直接和間接測量相結(jié)合的測量方法能使任務(wù)書提出的誤差要求得到滿足。</p><p> 中界頻率: fm =
11、 = </p><p> 當(dāng) fx≥ fm時(shí), 直接測頻, 間接測周; </p><p> 當(dāng) fx≤ fm時(shí), 直接測周, 間接測頻</p><p> 3.多周期同步測量法</p><p> 多周期同步測頻法,此法的優(yōu)點(diǎn)是,閘門時(shí)間與被測信號(hào)同步,消除了對(duì)被測信號(hào)計(jì)數(shù)產(chǎn)生的±1個(gè)字誤
12、差,測量精度大大提高,且測量精度與待測信號(hào)的頻率無關(guān),達(dá)到了在整個(gè)測量頻段等精度測量。</p><p> 根據(jù)任務(wù)書要求,因此采用上述(2)、(3)方案都能實(shí)現(xiàn)頻率的測量。但是本論文設(shè)計(jì)的是一個(gè)用單片機(jī)做為電路控制系統(tǒng)的數(shù)字式頻率計(jì),采用(2)方案,操作麻煩,控制電路較復(fù)雜;采用(3)方案多周期同步測頻法,閘門時(shí)間與被測信號(hào)同步,消除了對(duì)被測信號(hào)計(jì)數(shù)產(chǎn)生的±1誤差,測量精度大大提高,且測量精度與待測信
13、號(hào)的頻率無關(guān),達(dá)到了在整個(gè)測量頻段等精度測量。因此,本次設(shè)計(jì)采用多周期同步測量法。</p><p> 在采用多周期同步等精度測量法的情況下,按照自頂向下的設(shè)計(jì)方法,可畫出該頻率計(jì)的系統(tǒng)框圖。如圖2-1所示。</p><p> 圖2-1 頻率計(jì)的系統(tǒng)級(jí)框圖</p><p> 圖2-1 頻率計(jì)的系統(tǒng)框圖</p><p> 本設(shè)計(jì)任務(wù)
14、書要求主要以單片機(jī)8051為核心,被測信號(hào)先進(jìn)入信號(hào)放大電路進(jìn)行放大,再被送到波形整形電路整形,把被測的正弦波或者三角波整形為方波。利用單片機(jī)的計(jì)數(shù)器和定時(shí)器的功能對(duì)被測信號(hào)進(jìn)行計(jì)數(shù)。編寫相應(yīng)的程序可以使單片機(jī)自動(dòng)調(diào)節(jié)測量的量程,并把測出的頻率數(shù)據(jù)送到顯示電路顯示。</p><p> 2.2方案論證與選擇</p><p><b> 方案一:</b></p&g
15、t;<p> 主要由四個(gè)部分組成:信號(hào)整形部分、單片機(jī)控制部分、時(shí)基電路部分、數(shù)據(jù)鎖存部分、和數(shù)據(jù)顯示部分。整體框圖如圖2-2所示。</p><p> 圖2-2 方案一系統(tǒng)結(jié)構(gòu)框圖</p><p> 方案一基本流程:待測信號(hào)進(jìn)入系統(tǒng),信號(hào)整形部分會(huì)將其整形成脈沖,另一方面,時(shí)基電路提供標(biāo)準(zhǔn)的時(shí)基脈沖,在其上升沿達(dá)到1s時(shí)結(jié)束計(jì)數(shù)。而在這1秒內(nèi)測得的整形后的脈沖頻率就是待
16、測信號(hào)的頻率。之后單片機(jī)送數(shù)據(jù)鎖存,并等待命令,若繼續(xù)測量則返回測量,此時(shí)仍可將數(shù)據(jù)送顯示,若無繼續(xù)測量命令則,直接送數(shù)據(jù)顯示。</p><p> 方案一優(yōu)缺點(diǎn):這個(gè)方案的設(shè)計(jì)關(guān)鍵是555定時(shí)器構(gòu)成的多諧振蕩器是否能夠提供標(biāo)準(zhǔn)的脈沖。實(shí)際上,在現(xiàn)實(shí)中是很難做到精確1s的。因此,如果這點(diǎn)把握不好將直接影響最后的精度。較為合理的解決辦法是,做實(shí)物時(shí)可以選擇其電容電阻的參數(shù)設(shè)定,用示波器先進(jìn)行測量,直到取得較為滿意的
17、結(jié)果。還有一個(gè)問題就是在測量某一段頻率時(shí)很有可能會(huì)出現(xiàn)偏差,如果它在某一段內(nèi)都出現(xiàn)相同差值的偏差,我們可以進(jìn)行人為的補(bǔ)償,這樣可以最大限度提高精確度。</p><p><b> 方案二:</b></p><p> 方案二由五個(gè)部分組成:信號(hào)整形部分、分頻處理部分、數(shù)據(jù)選擇部分、單片機(jī)部分和數(shù)據(jù)顯示部分。整體框圖如圖2-3所示。</p><p&g
18、t; 圖2-3 方案二結(jié)構(gòu)框圖</p><p> 方案二工作流程:待測信號(hào)進(jìn)入系統(tǒng),信號(hào)整形部分會(huì)將其整形成脈沖,經(jīng)過分頻器。分頻器出來得到兩個(gè)信號(hào),一個(gè)給選擇器,一個(gè)給單片機(jī),數(shù)據(jù)選擇器處理過后也將信號(hào)給單片機(jī)經(jīng)過處理、運(yùn)算,最后將數(shù)據(jù)送給顯示部分,以用戶需要的形式顯示出來。</p><p> 方案二優(yōu)缺點(diǎn):是利用了分頻器應(yīng)對(duì)大量程的測量,相比于方案一它的優(yōu)勢是,如果待測頻率不大的
19、話,是不用進(jìn)行分頻的,即直接測量。這樣就不存在方案一當(dāng)中遇到的問題。但是方案二也有它的缺點(diǎn),就是當(dāng)待測頻率較大時(shí)要進(jìn)行分頻,這樣做是對(duì)原頻率的破壞,很可能會(huì)出現(xiàn)較大的偏差。</p><p> 方案比較:這兩種方案各有其優(yōu)缺點(diǎn),雖然在理想狀態(tài)下兩種方案都是可行的,但是,在本次設(shè)計(jì)中考慮到在目前的實(shí)驗(yàn)條件下難以使用555定時(shí)器做到較為精準(zhǔn)的1s計(jì)時(shí),而且在測量小頻率時(shí),方案二可以避免破壞原頻率而得到較準(zhǔn)確的數(shù)據(jù),本
20、設(shè)計(jì)初衷也是通用型的,簡單實(shí)用符合要求就好,不必要的盡量省去,通過慎重考慮最終還是采用了方案二。</p><p> 通過方案二與多周期同步測量方法相結(jié)合可畫出該頻率計(jì)的子系統(tǒng)級(jí)總體框圖如圖2-4所示。該框圖可分為三個(gè)子系統(tǒng):</p><p> ?。?)輸入通道(最左邊),該子系統(tǒng)主要由模擬電路組成;</p><p> ?。?)多周期同步等精度頻率、周期、時(shí)間等的測
21、量控制及功能切換邏輯(中間部分),該子系統(tǒng)基本上由數(shù)字硬件電路組成。</p><p> ?。?)單片機(jī)及其外圍部件(最右邊)。</p><p> 圖2-4 頻率計(jì)的子系統(tǒng)級(jí)總體框圖</p><p><b> 3硬件電路的設(shè)計(jì)</b></p><p> 3.1 數(shù)字頻率計(jì)硬件系統(tǒng)框圖</p>&l
22、t;p> 數(shù)字頻率計(jì)硬件系統(tǒng)框圖如圖3-1所示。</p><p><b> 圖3—1頻率計(jì)電路</b></p><p> 3.2 8051單片機(jī)的簡介</p><p> 單片機(jī)是70年代中期發(fā)展起來的一種大規(guī)模集成電路芯片,包含CPU、RAM、ROM、I\O接口和中斷系統(tǒng)。80年代以來,單片機(jī)發(fā)展迅速,各類新產(chǎn)品不斷涌現(xiàn),出現(xiàn)了許
23、多高性能新型機(jī)種,現(xiàn)已逐漸成為工廠自動(dòng)化和各控制領(lǐng)域的支柱產(chǎn)業(yè)之一。8051單片機(jī)內(nèi)部包含了作為微型計(jì)算機(jī)所必須的基本功能部件,各功能部件相互獨(dú)立的集成在同一芯片上。8051系列的基本結(jié)構(gòu)如下:</p><p><b> 8位CPU </b></p><p> 4KB字節(jié)掩膜ROM程序存儲(chǔ)器</p><p> 128字節(jié)內(nèi)部RAM數(shù)據(jù)存儲(chǔ)
24、器 </p><p> 兩個(gè)16位定時(shí)\計(jì)數(shù)器</p><p> 1個(gè)全雙工的異步串行口</p><p> 5個(gè)中斷源,兩個(gè)中斷優(yōu)先級(jí)的中斷控制器</p><p> 時(shí)鐘電路,外接晶振和電容可產(chǎn)生1.2MHz~12 MHz的時(shí)鐘頻率</p><p> 3.2.1 8051單片機(jī)的引腳及其功能</p&
25、gt;<p> 如圖3-2所示,8051有四十條引腳,共分為端口線、電源線和控制線。</p><p> 圖3—2 8051的引腳</p><p> 1.端口線(4×8)</p><p> P0.0-P0.7P0口8位雙向口線(在引腳的39-32號(hào)端子)。</p><p> P1.0-P1.7P1口8位雙向口線
26、(在引腳1-8號(hào)端子)。</p><p> P2.0-P2.7P2口8位雙向口線(在引腳21-28號(hào)端子)。</p><p> P3.0-P3.7P3口8位雙向口線(在引腳10-17號(hào)端子)。</p><p> 這4個(gè)I/O口,具有不完全相同的功能。</p><p><b> P0口有三個(gè)功能</b></p
27、><p> (1)外部擴(kuò)展存儲(chǔ)器時(shí),當(dāng)做數(shù)據(jù)總線(D0-D7為數(shù)據(jù)總線接口)</p><p> (2)外部擴(kuò)展存儲(chǔ)器時(shí),當(dāng)做地址總線(A0-A7為地址總線接口)</p><p> ?。?)不擴(kuò)展時(shí),可做一般的I/O使用,但內(nèi)部無上拉電阻,作為輸入或輸出時(shí)應(yīng)在外部接上拉電阻。</p><p> P1口只做I/O口使用,其內(nèi)部有上拉電阻。<
28、;/p><p><b> P2口有兩個(gè)功能:</b></p><p> ?。?)擴(kuò)展外部存儲(chǔ)器時(shí),當(dāng)做地址總線使用。</p><p> ?。?)做一般I/O口使用,其內(nèi)部有上拉電阻。</p><p> P3口有兩個(gè)功能,除作為I/O口使用外(其內(nèi)部有上拉電阻),還有一些特殊功能,由特殊功能寄存器來設(shè)置,上拉電阻當(dāng)做輸入時(shí)
29、,上拉電阻將其電位拉高,若輸入為低電平則可提供電流源;所以如果P0口作為輸入時(shí),處在高阻抗?fàn)顟B(tài),只有外接一個(gè)上拉電阻才有效。</p><p><b> 2.電源</b></p><p> VCC 為芯片電源,接+5V;VSS為接地線。 </p><p> ?、?控制線:控制線共有4根 </p><p> (1)AL
30、E/PROG:地址鎖存允許/片內(nèi)EPROM編程脈沖</p><p> ?、?ALE功能:用來鎖存P0口送出的低8位地址 ② PROG功能:片內(nèi)有EPROM的芯片,在EPROM編程期間,此引腳輸入編程脈沖。 (2)PSEN:外ROM讀選通信號(hào)。 (3)RST/VPD:復(fù)位/備用電源</p><p> ?、?RST(Reset)功能:復(fù)位信號(hào)輸入端。
31、 ② VPD功能:在Vcc掉電情況下,接備用電源。 (4)EA/Vpp:內(nèi)外ROM選擇/片內(nèi)EPROM編程電源。 ① EA功能:內(nèi)外ROM選擇端。 ② Vpp功能:片內(nèi)有EPROM的芯片,在EPROM編程期間,施加編程電源Vpp。 </p><p><b> 3.2.2定時(shí)</b></p><p> 8051有兩個(gè)1
32、6位可編程的定時(shí)器\計(jì)數(shù)器,即定時(shí)器\計(jì)數(shù)器T0和定時(shí)器\計(jì)數(shù)器T1.它們有兩位工作模式(計(jì)數(shù)器模式和定時(shí)器模式)及4種工作方式。其控制字均在相應(yīng)的特殊功能寄存器中(定時(shí)器\計(jì)數(shù)器方式控制寄存器TMOD、定時(shí)器\計(jì)數(shù)器控制寄存器)</p><p> 定時(shí)器\計(jì)數(shù)器的作用一是做定時(shí)器用,可精確的確定某一段時(shí)間間隔;二是作為計(jì)數(shù)器用,累計(jì)外部輸入的脈沖個(gè)數(shù)。當(dāng)用做定時(shí)器時(shí),在其輸入端輸入周期固定的脈沖,根據(jù)定時(shí)器\
33、計(jì)數(shù)器中累積的脈沖個(gè)數(shù),即可計(jì)算出所定的時(shí)間常數(shù)。</p><p> 當(dāng)定時(shí)器\計(jì)數(shù)器被設(shè)定為定時(shí)器模式時(shí),計(jì)數(shù)輸入信號(hào)是由內(nèi)部時(shí)鐘脈沖的12分頻產(chǎn)生,計(jì)數(shù)輸入脈沖的周期與機(jī)器周期相同,每個(gè)機(jī)器周期產(chǎn)生一個(gè)脈沖使計(jì)數(shù)器加1.當(dāng)定時(shí)器\計(jì)數(shù)器用作計(jì)數(shù)器時(shí)計(jì)數(shù)脈沖來自外部輸入引腳T1或T0。當(dāng)輸入信號(hào)產(chǎn)生由1至0的下跳變時(shí),計(jì)數(shù)器的值增1</p><p> 定時(shí)器和計(jì)數(shù)器的區(qū)別:</
34、p><p> 定時(shí)器本質(zhì)上也是一種計(jì)數(shù)器,只不過定時(shí)器的計(jì)數(shù)脈沖由內(nèi)部時(shí)鐘提供。在定時(shí)器模式工作時(shí),每個(gè)機(jī)器周期計(jì)數(shù)加1,因此計(jì)數(shù)速率固定為振蕩頻率的1/12.正是由于計(jì)數(shù)的速率固定時(shí)間間隔易于計(jì)算,所以用來定時(shí)。而計(jì)數(shù)器指的是對(duì)外部輸入脈沖的計(jì)數(shù),因而速率一般不是固定的,不能用于定時(shí)。只能數(shù)輸入脈沖的個(gè)數(shù)。8051的定時(shí)器方式控制寄存器地址89H,不可位尋址。如表3-1所示,TMOD寄存器中高4位定義T1,低4位
35、定義T0,其中M1,M0用來確定所選工作方式。TMOD寄存器中各位的功能如表3-2所示。</p><p> 表3-1 TMOD構(gòu)成</p><p> 定時(shí)/計(jì)數(shù)器T1 定時(shí)/計(jì)數(shù)器T0</p><p> TMOD由TH0的8位和TL0的5位(其余位不用)組成一個(gè)13位計(jì)數(shù)器。當(dāng)GATE=0時(shí),只要TCON中的TR0為1,13位
36、計(jì)數(shù)器就開始計(jì);當(dāng)GATE=1以及TR0=1時(shí),13位計(jì)數(shù)器是否計(jì)數(shù)取決于INT0引腳信號(hào),當(dāng)INT0由0變1時(shí)開始計(jì)數(shù),當(dāng)INT0由1變?yōu)?時(shí)停止計(jì)數(shù)。</p><p> 當(dāng)13位計(jì)數(shù)器溢出時(shí),TCON的TF0位就由硬件置1,同時(shí)將計(jì)數(shù)器清"0"。</p><p> 當(dāng)方式0為定時(shí)工作方式時(shí),定時(shí)時(shí)間計(jì)算公式為:</p><p> ?。?1
37、3 -計(jì)數(shù)初值X)×晶振周期×12</p><p> 當(dāng)方式0為計(jì)數(shù)工作方式時(shí),計(jì)數(shù)值的范圍是:1-213(8192)。</p><p> 表3-2 TMOD控制位功能</p><p><b> 3.2.3中斷</b></p><p> 中斷:是當(dāng)CPU正在處理某件事的時(shí)候,外界發(fā)生了緊急事
38、件請(qǐng)求,要求CPU暫停當(dāng)前的工作轉(zhuǎn)而去處理這個(gè)緊急事件,處理完以后再回到原來被中斷的地方繼續(xù)原來的工作,這樣的過程稱為中斷,實(shí)現(xiàn)中斷功能的部件,統(tǒng)稱為中斷系統(tǒng)。</p><p> 中斷源:是指引起中斷原因的設(shè)備或部件,或發(fā)生中斷請(qǐng)求信號(hào)的源泉。通常中斷源有以下幾種外部設(shè)備中斷源控制對(duì)象中斷源故障中斷源定時(shí)脈沖。中斷的分類:中斷按照功能通??煞譃榭善帘?、非屏蔽和軟件中斷三類</p><p>
39、; 中斷嵌套: 一個(gè)CPU總會(huì)有若干中斷源,可以接受若干中斷源發(fā)出的中斷請(qǐng)求,但在同一瞬間,CPU只能響應(yīng)中斷源中的一個(gè)中斷請(qǐng)求,CPU為了避免在同一瞬間因響應(yīng)若干中斷源的請(qǐng)求而帶來的混亂,必須給每個(gè)中斷源的只能掛斷請(qǐng)求賦一個(gè)特定的中斷優(yōu)先級(jí),以便CPU先響應(yīng)中斷優(yōu)先級(jí)高地中斷請(qǐng)求,然后再一次響應(yīng)中斷優(yōu)先級(jí)。</p><p> 中斷過程:中斷過程一般包括中斷請(qǐng)求、中斷響應(yīng)、中斷處理、中斷返回四個(gè)過程。<
40、/p><p><b> 中斷請(qǐng)求</b></p><p> 中斷過程是由中斷源向CPU發(fā)出中斷請(qǐng)求而開始的,有效中斷請(qǐng)求信號(hào)應(yīng)該一直保持到CPU做出響應(yīng)為止。</p><p><b> 中斷響應(yīng)</b></p><p> CPU檢測到中斷請(qǐng)求信號(hào)后,在滿足一定條件的情況下進(jìn)行響應(yīng)。</p&
41、gt;<p><b> 中斷處理</b></p><p> 中斷處理稱為中斷服務(wù),就是執(zhí)行中斷源所要求的中斷服務(wù)程序。</p><p><b> 中斷返回</b></p><p><b> 3.3存儲(chǔ)器</b></p><p> 在微機(jī)系統(tǒng)中凡能存儲(chǔ)程序
42、和數(shù)據(jù)的部件統(tǒng)稱為存儲(chǔ)器。構(gòu)成存儲(chǔ)器的存儲(chǔ)介質(zhì),目前主要采用半導(dǎo)體器件和磁性材料。存儲(chǔ)器中最小的存儲(chǔ)單位就是一個(gè)雙穩(wěn)態(tài)半導(dǎo)體電路或一個(gè)CMOS晶體管或磁性材料的存儲(chǔ)元,它可存儲(chǔ)一個(gè)二進(jìn)制代碼。由若干個(gè)存儲(chǔ)元組成一個(gè)存儲(chǔ)單元,然后再由許多存儲(chǔ)單元組成一個(gè)存儲(chǔ)器。一個(gè)存儲(chǔ)器包含許多存儲(chǔ)單元,每個(gè)存儲(chǔ)單元可存放一個(gè)字節(jié)(按字節(jié)編址)。每個(gè)存儲(chǔ)單元的位置都有一個(gè)編號(hào),即地址,一般用十六進(jìn)制表示。一個(gè)存儲(chǔ)器中所有存儲(chǔ)單元可存放數(shù)據(jù)的總和稱為它的存
43、儲(chǔ)容量。假設(shè)一個(gè)存儲(chǔ)器的地址碼由20位二進(jìn)制數(shù)(即5位十六進(jìn)制數(shù))組成,則可表示2的20次方,即1M個(gè)存儲(chǔ)單元地址。每個(gè)存儲(chǔ)單元存放一個(gè)字節(jié),則該存儲(chǔ)器的存儲(chǔ)容量為1MB。 </p><p> 存儲(chǔ)器的主要功能是存儲(chǔ)程序和各種數(shù)據(jù),并能在計(jì)算機(jī)運(yùn)行過程中高速、自動(dòng)地完成程序或數(shù)據(jù)的存取。 存儲(chǔ)器是具有“記憶”功能的設(shè)備,它采用具有兩種穩(wěn)定狀態(tài)的物理器件來存儲(chǔ)信息。這些器件也稱為記憶元件。在計(jì)算機(jī)中采用只有兩個(gè)數(shù)
44、碼“0”和“1”的二進(jìn)制來表示數(shù)據(jù)。記憶元件的兩種穩(wěn)定狀態(tài)分別表示為“0”和“1”。日常使用的十進(jìn)制數(shù)必須轉(zhuǎn)換成等值的二進(jìn)制數(shù)才能存入存儲(chǔ)器中。計(jì)算機(jī)中處理的各種字符,例如英文字母、運(yùn)算符號(hào)等,也要轉(zhuǎn)換成二進(jìn)制代碼才能存儲(chǔ)和操作。 </p><p> 按存儲(chǔ)介質(zhì)分為半導(dǎo)體存儲(chǔ)器、磁表面存儲(chǔ)器。按存儲(chǔ)方式分為隨機(jī)存儲(chǔ)器、順序存儲(chǔ)器。 按存儲(chǔ)器的讀寫功能分為只讀存儲(chǔ)器(ROM)、隨機(jī)讀寫存儲(chǔ)器(RAM)。按信息的可
45、保存性分為非永久記憶的存儲(chǔ)器、永久記憶性存儲(chǔ)器。按存儲(chǔ)器用途分為主存儲(chǔ)器、輔助存儲(chǔ)器、高速緩沖存儲(chǔ)器、控制存儲(chǔ)器等。 </p><p> 3.3.1外擴(kuò)ROM(2764)存儲(chǔ)器</p><p> 在本次設(shè)計(jì)中,我們用的外擴(kuò)存儲(chǔ)器為Intel 2764(UVEPROM), Intel 2764是一種+5V的8KB UVEPROM存儲(chǔ)器芯片,采用HMOS工藝制成,標(biāo)準(zhǔn)存儲(chǔ)時(shí)間為250ms,
46、27是系列號(hào),64和存儲(chǔ)容量有關(guān)。2764的引腳如圖3-3所示。</p><p> 圖3-3 2764的引腳</p><p> ?。?)其引腳總共有28條,具體功能為:</p><p> 地址輸入線A12~A0。2764的存儲(chǔ)容量為8KB,故按照地址線條數(shù)和存儲(chǔ)容量的關(guān)系(213=8192),共需13條地址線,編號(hào)為A12~A0。2764的地址線應(yīng)和8051單
47、片機(jī)的P2 和P0口相接,用于傳送單片機(jī)送來的地址編碼信號(hào),其中A12為最高位。</p><p> 數(shù)據(jù)線O7~O0。O7~O0是雙向數(shù)據(jù)總線,O7為最高位。在正常工作時(shí),O7~O0用于傳送從2764中讀出的數(shù)據(jù)或程序代碼;在編程方式時(shí)用于傳送需要寫入的編程代碼。</p><p><b> 控制線(3條)</b></p><p> 片選輸
48、入線CE:該輸入線用于控制本芯片是否工作。若給CE上加一個(gè)高電平,則,本片不工作;若給CE上加一個(gè)低電平,則選中本片工作。</p><p> 變成輸入線PGM:該輸入線用于控制2764處于正常工作狀態(tài)還是編程\校驗(yàn)狀態(tài)。如給他輸入一個(gè)TTL高電平,則2764處于正常工作狀態(tài);如給PGM輸入一個(gè)50MS寬的負(fù)脈沖,則2764配合VPP引腳上的21V高壓可以處于編程狀態(tài)。</p><p>
49、 允許輸出線OE:OE也是一條由用戶控制的輸入線,若給OE線上輸入一個(gè)TTL高電平,則數(shù)據(jù)線O7~O0處于高阻狀態(tài);若給OE線上輸入一個(gè)TTL低電平,則O7~O0處于讀出狀態(tài)。</p><p> 其他引腳線(4條)。VCC為+5v±10%電源輸入線,GND為直流電源線。VPP為編程電源輸入線,當(dāng)他接+5V時(shí),2764處于正常工作狀態(tài);當(dāng)VPP接21V電壓時(shí),2764處于編程\校驗(yàn)狀態(tài)。NC為2764的
50、空線。</p><p><b> (2)擦除特性 </b></p><p> 2764存儲(chǔ)陣列中的信息可以采用紫外光擦除,擦除后存儲(chǔ)的代碼為全“1”。2764在擦除時(shí)應(yīng)先取下芯片中央小窗口上的貼紙,然后用光源波長為2537埃和強(qiáng)度為1200μW/cm2的紫外光照射,照射時(shí)間為15—20min.這實(shí)際上就是使FAMOS管浮置柵中的電子獲得高能量,從而形成高電流從浮
51、置柵流入基片。2764中的信息擦除也不是很容易的,把2764放在陽光下暴曬大約需要一星期才會(huì)擦干凈,在普通熒光燈下需要三年才會(huì)擦除。</p><p> (3)工作方式和編程 </p><p> 2764可以分為正常和編程兩種工作方式。正常工作方式是指2764在它所應(yīng)用系統(tǒng)中的工作方式,常分為讀出和維持兩種工作狀態(tài);編程方式是指給2764寫入程序的工作方式,又可分為編程、禁止編程和校驗(yàn)三
52、種工作狀態(tài)。</p><p> 總之,2764共有兩種工作方式和5種工作狀態(tài),究竟處在哪一種方式和工作是由2764的控制線和電源線上的信號(hào)決定的。</p><p> 3.3.2 ROM和51的連接</p><p> 8031外接2764連接圖如圖3-4。由于2764存儲(chǔ)容量為8KB,故8031片內(nèi)地址線為P2.4~P2.0和P0.7~P0.0共十三條。片
53、選地址線共三條,其中P2.5直接與2764的CE相接,P2.7和P2.6懸空。PSEN與2764的OE相接,以便8031執(zhí)行MOVC指令是產(chǎn)生低電平而選中2764工作。</p><p> 圖3-4 8031外接2764連接圖</p><p> 3.4 8155簡介</p><p> 8155也是Inter公司研制的通用I/O接口芯片。它是一個(gè)有40引腳的
54、塑料芯片,功能較強(qiáng),廣泛應(yīng)用與計(jì)算機(jī)中。它有兩個(gè)8位口A、B和C??偣部梢詳U(kuò)展22條接線。</p><p> 它含有一個(gè)可預(yù)置的計(jì)數(shù)器,計(jì)數(shù)范圍從2到16383,可用于延時(shí)、計(jì)數(shù)或分頻。它內(nèi)部含有256字節(jié)的RAM,可以補(bǔ)充CPU內(nèi)存的不足。為了能夠設(shè)置芯片的工作方式和了解芯片的狀態(tài),內(nèi)部含有命令寄存器和狀態(tài)寄存器。</p><p> 3.4.1 8155內(nèi)部結(jié)構(gòu)和功能引腳</p
55、><p> 8155內(nèi)部結(jié)構(gòu)框圖如圖3-5所示。8155共有七部分電路組成,它們是:雙向數(shù)據(jù)總線緩沖器、地址鎖存器、地址譯碼器和讀寫控制器、RAM、I/O寄存器、命令寄存器和狀態(tài)寄存器以及定時(shí)器/計(jì)數(shù)器。現(xiàn)對(duì)各部分電路分述如下。</p><p> 雙向數(shù)據(jù)總線緩沖器:該緩沖器是8位的,用于傳送CPU對(duì)RAM存儲(chǔ)器的讀寫數(shù)據(jù)。</p><p> 地址鎖存器:共有8位
56、,用于鎖存CPU送來的RAM單元地址和端口地址。</p><p> 地址譯碼器和讀寫控制器:地址譯碼器的3位地址由地址鎖存器輸出端送來,譯碼后可以選中命令/狀態(tài)寄存器、定時(shí)器/計(jì)數(shù)器和A、B、C三個(gè)I/O寄存器中的某一個(gè)工作。讀寫控制器接收RD和WR線上的信息,實(shí)現(xiàn)對(duì)CPU和8155間所傳信息的控制。</p><p> 圖3-5 8155內(nèi)部結(jié)構(gòu)框圖</p><p
57、> RAM:容量為256B,主要用于存放實(shí)時(shí)數(shù)據(jù)。存儲(chǔ)器存儲(chǔ)單元地址由地址鎖存器輸出端送來。</p><p> I/O寄存器:分為A、B和C三個(gè)端口。A口和B口的I/O寄存器為8位,既可以存放外設(shè)的輸出數(shù)據(jù),也可以存放外設(shè)的輸入數(shù)據(jù);C口的I/O寄存器只有6位,用于存放I/O數(shù)據(jù)或命令/狀態(tài)信息。8155在某一瞬時(shí)只能選中某個(gè)I/O寄存器工作,這由CPU送給8155的命令字決定。</p>
58、<p> 命令寄存器和狀態(tài)寄存器:均為8位寄存器。命令寄存器存放CPU送來的命令字,狀態(tài)寄存器存放8155的狀態(tài)字。</p><p> 定時(shí)器/計(jì)數(shù)器:這是一個(gè)二進(jìn)制14位的減1計(jì)數(shù)器,計(jì)數(shù)器初值由CPU通過程序送來。定時(shí)器/計(jì)數(shù)器由T/IN輸入線上的脈沖減1,每當(dāng)計(jì)滿溢出(回零)時(shí)可在T/OUT線上輸出一個(gè)終止脈沖。</p><p> 8155共有四十條引腳線,采用雙列直
59、插式封裝。</p><p> ?。?)AD7-AD0(8條):AD7-AD0為地址/數(shù)據(jù)總線,??膳cMCS-51的P0口相接,用于分時(shí)傳送地址/數(shù)據(jù)信息。</p><p> ?。?)I/O總線(22條):PA7-PA0為通用I/O口線,用于傳送A口上的外設(shè)數(shù)據(jù),數(shù)據(jù)傳送方向由8155命令字中D0口的狀態(tài)決定(如圖3-6)PB7-PB0為通用I/O口線,用于傳送B口上的外設(shè)數(shù)據(jù),數(shù)據(jù)傳送方向
60、也由8155命令字節(jié)中D1的狀態(tài)決定。PC5-PC0為I/O數(shù)據(jù)/控制線,共有6條,在通用I/O方式下,用作傳送I/O數(shù)據(jù);在選通I/O方式下,用作傳送命令/狀態(tài)信息。</p><p> D7 D6 D5 D4 D3 D2 D1 D0</p><p> 圖3-6 8155命令字節(jié)格式</p><p> (3)控制總線(8條):RE
61、SET是8155總清輸入線,在RESET線上輸入一個(gè)大于600ns寬的正脈沖時(shí),8155立即處于總清狀態(tài),A、B、C三口也定義為輸入方式。</p><p> CE和IO/M:CE為8155片選輸入線,若CE=0,則CPU選中本8155工作;否則本8155不工作。IO/M為I/O端口或RAM的選通輸入線:若IO/M=0,則CPU選中8155的RAM工作;若IO/M=1,則CPU選中8155片內(nèi)某一I/O寄存器工作
62、。</p><p> RD和WR:RD是8155的讀寫命令輸入線,WR為寫命令線,當(dāng)RD=0且WR=1時(shí)</p><p> 8155處于讀出數(shù)據(jù)狀態(tài);當(dāng)RD=1且WR=0時(shí),8155處于寫入數(shù)據(jù)狀態(tài)。</p><p> ALE:為允許地址輸入線,高電平有效。若ALE=1,則8155允許AD7~AD0上地址鎖存到“地址鎖存器”;否則,8155的地址鎖存器處于封鎖
63、狀態(tài)。8155的ALE常與MCS-51的同名端相連。</p><p> T/IN和T/OUT:T/IN是計(jì)數(shù)器輸入線,其上脈沖用于對(duì)8155片內(nèi)14位計(jì)數(shù)器減1。T/OUT為計(jì)數(shù)器輸入線,當(dāng)14位計(jì)數(shù)器計(jì)滿回零時(shí)就可以在該引線上輸出脈沖波形,輸出脈沖的形狀和計(jì)數(shù)器的工作方式有關(guān)。</p><p> ?。?)電源線(2條):VCC為+5V電源輸入線,VSS為接地線。</p>
64、<p> 3.4.2 8155和51的連接</p><p> MCS-51和8155接口極為簡單,因?yàn)?155內(nèi)部包含有一個(gè)8位地址鎖存器,故可以用來鎖存CPU送來的端口地址和RAM(256B)地址。在MCS-51和8155的硬件連接中,所用地址譯碼的方法有全譯碼、部分譯碼和線選法3種。MCS-51和8155相連不僅可以為外設(shè)提供兩個(gè)8位I/O端口(A口和B口)和一個(gè)6位I/O端口(C口),也可為
65、CPU提供一個(gè)256B的RAM和一個(gè)14位定時(shí)器/計(jì)數(shù)器。</p><p> MCS-51和8155的接口如圖3-7所示。</p><p> 圖3-7 8155和8051的連接</p><p> 因8155的AD0~AD7為三態(tài)雙向的地址/數(shù)據(jù)總口線,內(nèi)部有地址鎖存器,故8155能直接和MCS-51的P0口(D0~D7)相連。圖3-7是8155和MCS-51
66、的一種接口邏輯。圖中P2.7和P2.0分別接8155的和IO∕所以8155的ROM地址為7E00H~7EFFH,命令狀態(tài)寄存器為7F00H,PA口為7F01H,PB口為7F02H,PC口為7F03H,計(jì)數(shù)器低8位為7F04H,計(jì)數(shù)器高8位為7F05。</p><p> 3.5鍵盤的設(shè)計(jì)及連接</p><p> 鍵盤的結(jié)構(gòu)有兩大類,一類是獨(dú)立式,一類是矩陣式。</p>&l
67、t;p> 鍵盤有許多鍵組成,每個(gè)鍵相當(dāng)于一個(gè)機(jī)械開關(guān)觸點(diǎn),當(dāng)按下鍵時(shí),觸點(diǎn)閉合,當(dāng)鍵松開時(shí),觸點(diǎn)斷開。獨(dú)立式的鍵盤的每個(gè)鍵都有一根信號(hào)線與單片機(jī)電路相連,所有按鍵有一個(gè)公共地或公共正端,每個(gè)間相互獨(dú)立互不影響。如圖3-8所示當(dāng)按下件鍵1時(shí),無論其它鍵是否按下鍵一的信號(hào)線由1變?yōu)?;當(dāng)松開鍵1時(shí),無論其它鍵是否按下,鍵1的信號(hào)線由0變?yōu)?。</p><p> 獨(dú)立式按鍵是指直接用I/0口線構(gòu)成的單個(gè)按鍵電
68、路。每個(gè)獨(dú)立式按鍵單獨(dú)占有一根I/O口線,每根I/O口線上的按鍵的工作狀態(tài)不會(huì)影響其它1/0口線的工作狀態(tài)。圖3—8為一種獨(dú)立式四按鍵電路。由圖可知:</p><p> ?。?)K0 ~ K3四個(gè)按鍵在沒有按下時(shí),P1.0 ~ P1.3均處于高電平狀態(tài);只要有鍵按下,則相應(yīng)的I/O口線就變成低電平;一個(gè)按鍵與一根I/O口線狀態(tài)相對(duì)應(yīng)。</p><p> (2)在圖中,為了使CPU能及時(shí)處
69、理鍵盤功能,四根鍵盤狀態(tài)輸出線被送到四與門輸入端。這樣,只要有任一鍵按下,該四與門輸出端便由高電平變成低電平,再通過 INT0向CPU發(fā)出中斷請(qǐng)求。</p><p> 圖3-8 四按鍵電路</p><p> 3.6 LED顯示器</p><p> LED顯示器是由發(fā)光二極管顯示字段組成的顯示塊,有7段和“米”字段之分。這種顯示塊有共陽極和共陰極兩種。此外,顯
70、示塊中還有一個(gè)圓點(diǎn)型發(fā)光二極管(在圖中以dP表示)用于顯示小數(shù)點(diǎn)。通過發(fā)光二極管亮、暗的不同組,可以顯示多中數(shù)字、字母以及其他符號(hào)。</p><p> LED顯示塊中的發(fā)光二極管共有兩種連接方法:</p><p><b> (1)共陽極接法</b></p><p> 發(fā)光二極管的陽極連在一起構(gòu)成公共陽極。使用時(shí)公共陽極接+5V,這樣,陰極
71、端輸入低電平的段的發(fā)光二極管被點(diǎn)亮,相應(yīng)的段被顯示;而輸入高電平的段則不點(diǎn)亮。</p><p><b> (2)共陰極接法</b></p><p> 發(fā)光二極管的陰極連在一起構(gòu)成公共陰極。使用時(shí)公共陰極接地,這樣,陽極端輸入高電平的段的發(fā)光二極管被點(diǎn)亮,相應(yīng)的段被顯示;而輸入低電平的段則不點(diǎn)亮。數(shù)碼管引腳如圖3-9。</p><p> 圖
72、3-9 數(shù)碼管引腳圖</p><p> 共陰和共陽結(jié)構(gòu)的LED顯示器各筆劃段名和安排位置是相同的。當(dāng)二極管導(dǎo)通時(shí),相應(yīng)的筆劃段發(fā)亮,由發(fā)亮的筆劃段組合而顯示的各種字符。8個(gè)筆劃段dP、g、f、e、d、c、b、a對(duì)應(yīng)于一個(gè)字節(jié)(8位)的D7、D6、D5、D4、D3、D2、D1、D0,于是用8位二進(jìn)制碼就可以表示欲顯示字符的字形代碼。例如,對(duì)于共陰LED顯示器,當(dāng)公共陰極接地(為零電平),而陽極dP、g、f、e、d
73、、c、b、a各段為0111011時(shí),顯示器顯示"P"字符,即對(duì)于共陰極LED顯示器,“P”字符的字形碼是73H。如果是共陽LED顯示器,公共陽極接高電平,顯示“P”字符的字形代碼應(yīng)為10001100(8CH)。用LED顯示器顯示十進(jìn)制轉(zhuǎn)換成十六進(jìn)制數(shù)的字形代碼在表3-3中列出。</p><p> 表3-3 LED十六進(jìn)制的數(shù)字代碼表</p><p> 我們?cè)谶@次設(shè)計(jì)
74、中采用LED數(shù)碼管。本設(shè)計(jì)為了節(jié)約單片機(jī)P口的資源采用串口顯示,只使用單片機(jī)的兩個(gè)串行口,一個(gè)口用來當(dāng)信號(hào)線,令一根用來當(dāng)時(shí)鐘信號(hào),這樣就可以完成顯示功能。顯示電路如圖3-10所示。</p><p> PA口送出的段控碼同時(shí)送給六位LED顯示器,但只有其位控端(GND端)為低電平的LED顯示器才能點(diǎn)亮。反相驅(qū)動(dòng)器用于增加段控口和位控口的電流驅(qū)動(dòng)能力。</p><p><b>
75、 圖3-10顯示電路</b></p><p><b> 3.7測量電路設(shè)計(jì)</b></p><p> 圖3-11是測頻率和脈寬的電路圖。其中fx為被測信號(hào),fc為基準(zhǔn)信號(hào),p1.6為預(yù)置閘門,74H0157是個(gè)二選一的數(shù)據(jù)選擇器,總共3個(gè)二選一數(shù)據(jù)選擇器,7474為D觸發(fā)器,總共兩個(gè)。</p><p> 3.7.1測頻率電路原
76、理</p><p> 預(yù)置閘門P1.6為給定的,當(dāng)被測信號(hào)fx為上升沿時(shí),D1觸發(fā)器輸出為高電平1,Q1輸出的信號(hào)分兩路,一路通過74H0157的二選一數(shù)據(jù)選擇器,送入INT0,觸發(fā)定時(shí)器開始定時(shí);一路通過二選一數(shù)據(jù)選擇器打開閘門A、B,閘門A打開,被測信號(hào)開始計(jì)數(shù),閘門B打開,基準(zhǔn)信號(hào)fc開始計(jì)數(shù)。定時(shí)器定時(shí)時(shí)間到,P1.6輸出變?yōu)榈碗娖?,在被測信號(hào)fx的下一個(gè)上升沿時(shí),D1觸發(fā)器輸出為高電平0,Q1輸出的
77、信號(hào)通過二選一數(shù)據(jù)選擇器關(guān)閉閘門A、B,此時(shí)被測信號(hào)記的為整脈沖數(shù)NA,fc計(jì)的脈沖數(shù)是NB。</p><p> 根據(jù)公式Tx=(NB/NA)Tc,求出周期的被測信號(hào);fx=(NA/NB)fc,求出被測信號(hào)的頻率。</p><p> 測信號(hào)頻率的波形圖如圖3-12所示。</p><p> 圖3-11測頻率和脈寬的電路圖</p><p>
78、 圖3-12測信號(hào)頻率的波形圖</p><p><b> 3.7.2測量脈寬</b></p><p> 圖3-13測信號(hào)脈寬的波形圖</p><p> P1.6為預(yù)置閘門信號(hào),被測信號(hào)fx信號(hào)分兩路,一路接D1觸發(fā)器,一路接D2觸發(fā)器的清零端。當(dāng)預(yù)置閘門信號(hào)有效后,被測信號(hào)fx變?yōu)楦唠娖綍r(shí), D2觸發(fā)器的清零端無效,D1觸發(fā)器輸入為高電
79、平1,輸出也為高電平1。該高電平通過二選一的數(shù)據(jù)選擇器開閘門。閘門A開,開始計(jì)被測信號(hào)的脈沖數(shù)。閘門B開,開始計(jì)數(shù)基準(zhǔn)信號(hào)的脈沖數(shù)。當(dāng)fx為低電平時(shí),D2觸發(fā)器的清零端有效,使得D2觸發(fā)器的輸出強(qiáng)制為零,該低電平通過二選一的數(shù)據(jù)選擇器關(guān)閘門。此時(shí)被測信號(hào)的脈沖數(shù)為NA,基準(zhǔn)信號(hào)的脈沖數(shù)為NB。利用公式脈寬=NB/NA 求出脈寬。測信號(hào)脈寬的波形圖如圖3-13所示。</p><p> 3.8電源模塊的設(shè)計(jì)<
80、/p><p> 電源變壓器將電網(wǎng)提供的220V電壓變?yōu)樗璧慕涣麟?,同時(shí)將電子電路與交流電網(wǎng)隔離,整流電路的作用是利用具有單向?qū)щ娦阅艿恼髟?,將正?fù)交替的正弦交流電整流成單項(xiàng)脈動(dòng)直流電。利用電容濾波將脈動(dòng)的直流電變成平滑的直流電,提供給單片機(jī)為5V電壓。5V電源電路如圖3-14所示。</p><p> 圖3-14 5V電源電路</p><p> 在圖中,C1
81、可以防止由于輸入引線較長時(shí)產(chǎn)生的電感而引起的自激。C2用來減小由于負(fù)載電流瞬時(shí)變化而引起的高頻干擾。C3為容量較大的電解電容,用來進(jìn)一步減小輸出脈動(dòng)和低頻干擾。</p><p> 圖3-15為具有正負(fù)12V電壓輸出的穩(wěn)壓電源,由圖可知,電源變壓器帶有中心抽頭并接地,輸出端得到大小相等、極性相反的電壓。</p><p> 圖3-15 ±12V電壓輸出的穩(wěn)壓電源</p>
82、;<p> 4 數(shù)字頻率計(jì)軟件設(shè)計(jì)</p><p> 本設(shè)計(jì)軟件部分采用了MCS-51匯編語言編制,采用了結(jié)構(gòu)化,模塊化的程序設(shè)計(jì)方法。包括了主程序、外部中斷0子程序、外部中斷1子程序、顯示子程序等模塊組成。本章還給出了詳細(xì)的流程圖。</p><p><b> 4.1軟件編程思路</b></p><p> 4.1.1 信號(hào)
83、處理</p><p> 在頻率計(jì)開始工作,或者完成一次頻率測量,系統(tǒng)軟件都進(jìn)行測量初始化。測量初始化模塊設(shè)置堆棧指針(SP)、工作寄存器、中斷控制和定時(shí)/計(jì)數(shù)器的工作方式。</p><p> 定時(shí)/計(jì)數(shù)器的工作首先被設(shè)置為計(jì)數(shù)器的計(jì)數(shù)寄存器清0后,置運(yùn)行控制位TR為1,啟動(dòng)對(duì)待測信號(hào)的計(jì)數(shù)。計(jì)數(shù)閘門由軟件延時(shí)程序?qū)崿F(xiàn),從計(jì)數(shù)閘門的最小值開始,也就是從測量頻率的高量程開始。計(jì)數(shù)閘門結(jié)束時(shí)
84、TR清0,停止計(jì)數(shù)。計(jì)數(shù)寄存器中的值通過16進(jìn)制數(shù)道10進(jìn)制數(shù)轉(zhuǎn)換程序轉(zhuǎn)換為10進(jìn)制數(shù)。對(duì)10進(jìn)制數(shù)的最高位進(jìn)行判別,若該位不為0,滿足測量數(shù)據(jù)有效位數(shù)的要求,測量值和量程信息一起送到顯示模塊;若該位為0,將計(jì)數(shù)閘門的寬度擴(kuò)大10倍,重新對(duì)待測信號(hào)的技術(shù),直到滿足測量數(shù)據(jù)有效位數(shù)的要求。</p><p> 待測信號(hào)經(jīng)預(yù)處理電路分頻后變成較寬的方波信號(hào),并加至單片機(jī)的P3.4引腳,為單片機(jī)測信號(hào)頻率提供有效的輸入
85、信號(hào)。單片機(jī)通過檢測P3.4引腳來判斷是否啟動(dòng)測周期程序。當(dāng)該引腳為高電平時(shí)則等待,知道該引腳出現(xiàn)低電平時(shí)才開始測周期。首先將零賦給TH0、TL0兩個(gè)寄存器,將定時(shí)器T0的運(yùn)行控制位TR0置位,同時(shí)也將ET0置位以允許定時(shí)器T0終端,然后再判斷P3.4引腳是否還為低電平,當(dāng)不是低電平時(shí)則等待。一旦出現(xiàn)低電平則使TR0復(fù)位以終止定時(shí)器,測周期程序結(jié)束。在測周期過程中,會(huì)發(fā)生定時(shí)器T0的中斷,每發(fā)生一次中斷則將R0寄存器加一,因此R0實(shí)際上
86、是周期值的高字節(jié)。測出的周期值存儲(chǔ)在R0、TH0、TL0三個(gè)寄存器中,然后將其轉(zhuǎn)換成頻率。由于所測周期的單位是µs,再相除轉(zhuǎn)換時(shí)要將被除數(shù)擴(kuò)大10倍,這樣才能保證得出正確的頻率。得出的頻率放到R1、R2、R3三個(gè)寄存器后調(diào)用轉(zhuǎn)換BCD代碼模塊。調(diào)用顯示消除多余零和顯示數(shù)據(jù)存儲(chǔ)模塊,將要顯示的頻率值通過查表轉(zhuǎn)換成相應(yīng)數(shù)據(jù)8段碼放到現(xiàn)實(shí)緩沖區(qū)以備顯示。</p><p> 4.1.2定時(shí)工作方式0</
87、p><p> 方式0是13位計(jì)數(shù)結(jié)構(gòu)的工作方式[15],其計(jì)數(shù)器由TH0高8位和TL0的低五位構(gòu)成。TL0的高3位棄之不用。當(dāng)C/=0時(shí),多中開關(guān)接通振蕩脈沖的12分頻輸出,13位計(jì)數(shù)器以此進(jìn)行計(jì)數(shù),這就是所謂定時(shí)器工作方式。當(dāng)C/=1[16]時(shí),多路開關(guān)接通計(jì)數(shù)引腳(T0),外部計(jì)數(shù)脈沖由引腳T0輸入。當(dāng)計(jì)數(shù)脈沖發(fā)生負(fù)跳變時(shí),這就是所謂計(jì)數(shù)工作方式。</p><p> 不管是哪種工作方式
88、,當(dāng)TL0的低五位計(jì)數(shù)溢出時(shí),向TH0進(jìn)位,而全部13位計(jì)數(shù)溢出時(shí),則向計(jì)數(shù)溢出標(biāo)志位TF0進(jìn)位。</p><p> 4.2程序流程圖設(shè)計(jì)</p><p> 4.2.1主程序流程</p><p> 主程序流程圖如圖4-1所示。</p><p> 圖4-1 主程序流程圖</p><p><b> 4
89、.2.2中斷流程</b></p><p> T0中斷服務(wù)流程圖如圖4-2所示</p><p> 圖4-2 T0中斷流程圖</p><p> 4.2.3 T1定時(shí)中斷服務(wù)</p><p> T1定時(shí)中斷服務(wù)流程圖如圖4-3所示</p><p> 圖4-3 T1中斷流程圖</p>&
90、lt;p> 4.2.4多周期同步法子程序流程圖</p><p> 多周期同步法子程序流程圖如圖4-4所示.</p><p> 圖4-4多周期同步法子程序流程圖</p><p> 4.3系統(tǒng)程序及關(guān)鍵程序</p><p> 4.3.1多周期同步測量法</p><p> T0為16位定時(shí)器,T1為16位計(jì)
91、數(shù)器,對(duì)內(nèi)部機(jī)器周期計(jì)數(shù)。T0,T1分別受INT0和INT1(即D觸發(fā)器的Q端)控制。待測信號(hào)分別輸入至T1和D觸發(fā)器的CLK端。開始測量時(shí),將單片機(jī)P1.0口(即D觸發(fā)器的D端)置“1”。一般來說,P1.0口狀態(tài)改變時(shí),fx正處于某一周期的高電平或低電平處,觸發(fā)器Q端的狀態(tài)不會(huì)立即改變,而是在下一個(gè)fx脈沖的上升沿到來時(shí)變?yōu)楦唠娖?,T0與T1才開始啟動(dòng),實(shí)現(xiàn)了二者的同步。在定時(shí)時(shí)刻到來后,將P1.0清零,但觸發(fā)器Q端仍將維持高電平狀態(tài)
92、,直到下一下fx的脈沖上升沿到達(dá)。</p><p> tongbufa: MOV TOMD,#0D9H ; GATE打開,T1和T0受INT的控制</p><p> MOV TL0, #0B0H ;T0賦初值,T1清零</p><p> MOV TH0, #3CH</p><p> MO
93、V TL1, #00H</p><p> MOV TH1, #00H</p><p> MOV IE, #88H ;開中斷</p><p><b> SETB TR0</b></p><p><b> SETB TR1</b></p><
94、;p><b> SETB P1.0</b></p><p><b> SJMP $</b></p><p> INT1: CLR P1.0</p><p><b> CLR TR1</b></p><p><b> CLR TR0</b>&
95、lt;/p><p> MOV 40H,TL1 ; 存入數(shù)據(jù)</p><p> MOV 41H,TH1</p><p> MOV 42H,TL0</p><p> MOV 43H,TH0</p><p><b> RETI</b></p>&l
96、t;p> 4.3.2數(shù)碼顯示程序</p><p> 單片機(jī)控制其內(nèi)部計(jì)數(shù)器得到的數(shù)據(jù)要送到6位數(shù)碼顯示管中顯示出來,才能被我們所看到,直接得到我們所測量的頻率。</p><p><b> 顯示程序 </b></p><p><b> DISPLAY0:</b></p><p> MO
97、V A,COUNTER_DISPLAY;</p><p> CJNE A,#6,DISPLAY1</p><p> JMP DISPLAY2;/當(dāng)前顯示位數(shù)等于6/</p><p><b> DISPLAY1:</b></p><p> JNC DISPLAY2;/當(dāng)前顯示位數(shù)大于6/</p>&l
98、t;p> JMP DISPLAY3</p><p><b> DISPLAY2:</b></p><p><b> CLR A</b></p><p> MOV COUNTER_DISPLAY,A;/當(dāng)前顯示位數(shù)大于等于6,清零/</p><p><b> DISPLAY3
99、:</b></p><p> MOV A,#0FFH</p><p> MOV PORT_LED,A;/變換數(shù)據(jù)前先滅LED,以消除閃動(dòng)/</p><p> MOV A,COUNTER_DISPLAY</p><p> MOV PORT_LED_138,A</p><p> MOV R1,#DIS
100、PLAY_DATA_ADDR</p><p> ADD A,#DISPLAY_DATA_ADDR;/計(jì)算當(dāng)前要顯示數(shù)據(jù)的地址,初始地址+相應(yīng)位數(shù)/</p><p><b> MOV R1,A</b></p><p> MOV A,@R1;/取出要顯示的相應(yīng)位的數(shù)據(jù)/</p><p> MOV PORT_LED,A
101、;/送出顯示數(shù)據(jù)/</p><p> MOV A,COUNTER_DISPLAY</p><p><b> INC A</b></p><p> MOV COUNTER_DISPLAY,A;/顯示位加1/</p><p><b> RETI</b></p><p>&
102、lt;b> 4.3.3系統(tǒng)程序</b></p><p> ORG 0000H</p><p> AJMP MAIN </p><p> ORG 0003H</p><p> AJMPINT0 </p><p><b>
103、 ORG000BH</b></p><p> AJMPTIMER0 </p><p><b> ORG0013H</b></p><p> AJMPINT1 </p><p> ORG 001BH</p>
104、<p> AJMP TIMER1 </p><p> MAIN: MOV SP,#40H</p><p> ACALL CHUSHIHUA</p><p> LP11: ACALL INT0</p><p> ACALL BCD </p><p> ACAL
105、L DISPLAY</p><p> SJMP LP11</p><p> CHUSHIHUA :MOV A,#00H</p><p> MOV B,#00H</p><p> MOV 2AH,A</p><p> MOV P0,#0FFH</p><p> MOV P1,
106、#0FFH</p><p> MOV P2,#0FFH</p><p> MOV 45H,#00H</p><p> MOV 44H,#00H</p><p> MOV 43H,#00H</p><p> MOV 61H,#00H</p><p> MOV 60H,#00H&l
107、t;/p><p> MOV 62H,#00H</p><p> MOV T_G,#00H</p><p> MOV TIMCOUNT,#00H</p><p> MOV TIMER_H,#4CH </p><p> MOV TIMER_L,#0FH </p><p
108、> SETB P3.5 </p><p><b> RET</b></p><p><b> MOV A,R2</b></p><p><b> CLR C</b></p><p> MOV 20H,#00H</p><
109、;p> MOV 21H,#00H</p><p> MOV 22H,#00H</p><p> MOV 24H,#00H</p><p> MOV 25H,#00H</p><p> MOV R3,#10H</p><p> NEXT: RLC A</p><p><b&
110、gt; MOV R2,A</b></p><p><b> MOV A,20H</b></p><p> ADDC A,20H</p><p><b> DA A</b></p><p><b> MOV 20H,A</b></p><
111、p><b> MOV A,21H</b></p><p> ADDC A,21H</p><p><b> DA A</b></p><p><b> MOV 21H,A</b></p><p><b> MOV A,22H</b><
112、/p><p> ADDC A,22H</p><p><b> DA A</b></p><p><b> MOV 22H,A</b></p><p><b> MOV A,R2</b></p><p> DJNZ R3,NEXT</p>
113、;<p><b> MOV A,R6</b></p><p><b> clr c</b></p><p> MOV R3,#08H</p><p> NEXT1: RLC A</p><p><b> MOV R6,A</b></p>&
114、lt;p><b> MOV A,24H</b></p><p> ADDC A,24H</p><p><b> DA A</b></p><p><b> MOV 24H,A</b></p><p><b> MOV A,25H</b>&
115、lt;/p><p> ADDC A,25H</p><p><b> DA A</b></p><p><b> MOV 25H,A</b></p><p><b> mov a,r6</b></p><p> DJNZ R3,NEXT1</
116、p><p><b> clr c</b></p><p><b> mov a,24h</b></p><p> addc a,20h</p><p><b> da a</b></p><p><b> mov 20h,a</b&
117、gt;</p><p><b> mov a,25h</b></p><p> addc a,21h</p><p><b> da a</b></p><p><b> mov 21h,a</b></p><p><b> mov
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 數(shù)字頻率計(jì)畢業(yè)設(shè)計(jì)-- 數(shù)字頻率計(jì)設(shè)計(jì)
- 數(shù)字頻率計(jì)畢業(yè)設(shè)計(jì)-- 數(shù)字頻率計(jì)設(shè)計(jì)
- 畢業(yè)論文--基于vhdl的數(shù)字頻率計(jì)設(shè)計(jì)
- 數(shù)字頻率計(jì)畢業(yè)論文
- 數(shù)字頻率計(jì)
- 數(shù)字頻率計(jì)設(shè)計(jì)
- 數(shù)字頻率計(jì)實(shí)驗(yàn)報(bào)告---數(shù)字頻率計(jì)的設(shè)計(jì)與制作
- 數(shù)字頻率計(jì)的設(shè)計(jì)
- 數(shù)字頻率計(jì)的設(shè)計(jì)畢業(yè)論文
- 數(shù)字頻率計(jì)畢業(yè)論文 (2)
- 畢業(yè)論文--數(shù)字頻率計(jì)的設(shè)計(jì)
- 簡易數(shù)字頻率計(jì)設(shè)計(jì)論文
- 畢業(yè)設(shè)計(jì)---數(shù)字頻率計(jì)
- 畢業(yè)設(shè)計(jì)--數(shù)字頻率計(jì)
- 數(shù)字頻率計(jì)畢業(yè)設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)--數(shù)字頻率計(jì)
- 數(shù)字頻率計(jì)系統(tǒng)設(shè)計(jì)畢業(yè)論文
- vhdl課程設(shè)計(jì)--簡易數(shù)字頻率計(jì)
- 畢業(yè)設(shè)計(jì)----數(shù)字頻率計(jì)
- 數(shù)字頻率計(jì)的設(shè)計(jì).doc
評(píng)論
0/150
提交評(píng)論