綜合實驗報告-數(shù)字頻率計設(shè)計_第1頁
綜合實驗報告-數(shù)字頻率計設(shè)計_第2頁
綜合實驗報告-數(shù)字頻率計設(shè)計_第3頁
綜合實驗報告-數(shù)字頻率計設(shè)計_第4頁
綜合實驗報告-數(shù)字頻率計設(shè)計_第5頁
已閱讀5頁,還剩24頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、 專業(yè)綜合實驗 題 目: 數(shù)字頻率計設(shè)計 院(系): 專業(yè)年級 : 姓 名 : 學(xué) 號 : 指導(dǎo)教師 : 目錄 TOC o 1-3 h z u HYPERLINK l _Toc262570583 第一章 前言 HYPERLINK l _Toc262570584 1.1頻率計概述 HYPERLINK l _Toc262570585 1.2頻率計發(fā)展與應(yīng)用 HYPERLINK l _Toc262570586 1.3頻率計設(shè)計內(nèi)容 HYPERLINK l _Toc262570587 第二章 系統(tǒng)總體方案設(shè)計 HYPERLINK l _Toc262570588 2.1測頻的原理 HYPERLINK l

2、 _Toc262570589 2.2總體思路 HYPERLINK l _Toc262570590 2.3具體模塊 HYPERLINK l _Toc262570591 第三章 硬件電路具體設(shè)計 HYPERLINK l _Toc262570592 3.1 AT89S52主控制器模塊 HYPERLINK l _Toc262570593 3.1.1 AT89S52的介紹 HYPERLINK l _Toc262570594 3.1.2 復(fù)位電路及時鐘電路 HYPERLINK l _Toc262570595 3.1.3 引腳功能 HYPERLINK l _Toc262570596 3.1.4 單片機(jī)引腳分

3、配 HYPERLINK l _Toc262570597 3.2 電源模塊 HYPERLINK l _Toc262570598 3.2.1 直流穩(wěn)壓電源的基本原理 HYPERLINK l _Toc262570599 3.2.2 電源電路設(shè)計 HYPERLINK l _Toc262570600 3.3放大整形模塊 HYPERLINK l _Toc262570601 3.4 分頻設(shè)計模塊 HYPERLINK l _Toc262570602 3.4.1 分頻電路分析 HYPERLINK l _Toc262570603 3.4.2 74LS161芯片介紹 HYPERLINK l _Toc26257060

4、4 3.4.3 74LS151芯片介紹 HYPERLINK l _Toc262570605 3.4.4 分頻電路 HYPERLINK l _Toc262570606 3.5 顯示模塊 HYPERLINK l _Toc262570607 3.5.1 數(shù)碼管介紹 HYPERLINK l _Toc262570608 3.5.2 頻率值顯示電路 HYPERLINK l _Toc262570609 3.5.3 檔位轉(zhuǎn)換指示電路 HYPERLINK l _Toc262570610 第四章 系統(tǒng)的軟件設(shè)計 HYPERLINK l _Toc262570611 4.1 軟件模塊設(shè)計 HYPERLINK l _T

5、oc262570612 4.2 中斷服務(wù)子程序 HYPERLINK l _Toc262570613 4.3 顯示子程序 HYPERLINK l _Toc262570614 4.4 量程檔自動轉(zhuǎn)換子程序 HYPERLINK l _Toc262570615 4.5 應(yīng)用軟件簡介 HYPERLINK l _Toc262570616 4.5.1 Keil簡介 HYPERLINK l _Toc262570617 4.5.2 protues簡介4.5.3 實驗結(jié)果附錄 試驗程序第一章 前言頻率測量是電子學(xué)測量中最為基本的測量之一。由于頻率信號抗干擾性強,易于傳輸,因此可以獲得較高的測量精度。隨著數(shù)字電子技

6、術(shù)的發(fā)展,頻率測量成為一項越來越普遍的工作,測頻原理和測頻方法的研究正受到越來越多的關(guān)注。1.1頻率計概述數(shù)字頻率計是計算機(jī)、通訊設(shè)備、音頻視頻等科研生產(chǎn)領(lǐng)域不可缺少的測量儀器。它是一種用十進(jìn)制數(shù)字顯示被測信號頻率的數(shù)字測量儀器。它的基本功能是測量正弦信號、方波信號及其他各種單位時間內(nèi)變化的物理量。在進(jìn)行模擬、數(shù)字電路的設(shè)計、安裝、調(diào)試過程中,由于其使用十進(jìn)制數(shù)顯示,測量迅速,精確度高,顯示直觀,經(jīng)常要用到頻率計。傳統(tǒng)的頻率計采用測頻法測量頻率,通常由組合電路和時序電路等大量的硬件電路組成,產(chǎn)品不但體積大,運行速度慢而且測量低頻信號不準(zhǔn)確。本次采用單片機(jī)技術(shù)設(shè)計一種數(shù)字顯示的頻率計,測量準(zhǔn)確度

7、高,響應(yīng)速度快,體積小等優(yōu)點1。1.2頻率計發(fā)展與應(yīng)用在我國,單片機(jī)已不是一個陌生的名詞,它的出現(xiàn)是近代計算機(jī)技術(shù)的里程碑事件。單片機(jī)作為最為典型的嵌入式系統(tǒng),它的成功應(yīng)用推動了嵌入式系統(tǒng)的發(fā)展。單片機(jī)已成為電子系統(tǒng)的中最普遍的應(yīng)用。單片機(jī)作為微型計算機(jī)的一個重要分支,其應(yīng)用范圍很廣,發(fā)展也很快,它已成為在現(xiàn)代電子技術(shù)、計算機(jī)應(yīng)用、網(wǎng)絡(luò)、通信、自動控制與計量測試、數(shù)據(jù)采集與信號處理等技術(shù)中日益普及的一項新興技術(shù),應(yīng)用范圍十分廣泛。其中以AT89S52為內(nèi)核的單片機(jī)系列目前在世界上生產(chǎn)量最大,派生產(chǎn)品最多,基本可以滿足大多數(shù)用戶的需要2。1.3頻率計設(shè)計內(nèi)容利用電源、單片機(jī)、分頻電路及數(shù)碼管顯示

8、等模塊,設(shè)計一個簡易的頻率計能夠粗略的測量出被測信號的頻率。 參數(shù)要求如下:1測量范圍10HZ2MHZ;2用四位數(shù)碼管顯示測量值;3能根據(jù)輸入信號自動切換量程;4.可以測量方波、三角波及正弦波等多種波形;第二章 系統(tǒng)總體方案設(shè)計2.1測頻的原理測頻的原理歸結(jié)成一句話,就是“在單位時間內(nèi)對被測信號進(jìn)行計數(shù)”。被測信號,通過輸入通道的放大器放大后,進(jìn)入整形器加以整形變?yōu)榫匦尾?,并送入主門的輸入端3。由晶體振蕩器產(chǎn)生的基頻,按十進(jìn)制分頻得出的分頻脈沖,經(jīng)過基選通門去觸發(fā)主控電路,再通過主控電路以適當(dāng)?shù)木幋a邏輯便得到相應(yīng)的控制指令,用以控制主門電路選通被測信號所產(chǎn)生的矩形波,至十進(jìn)制計數(shù)電路進(jìn)行直接計

9、數(shù)和顯示。若在一定的時間間隔T內(nèi)累計周期性的重復(fù)變化次數(shù)N,則頻率的表達(dá)式為式: (1)圖1說明了測頻的原理及誤差產(chǎn)生的原因。時基信號 待測信號 丟失(少計一個脈沖) 計到N個脈沖 多余(比實際多出了0.x個脈沖)圖1 測頻原理在圖1中,假設(shè)時基信號為1KHZ,則用此法測得的待測信號為1KHZ5=5KHZ。但從圖中可以看出,待測信號應(yīng)該在5.5KHZ左右,誤差約有0.5/5.59.1%。這個誤差是比較大的,實際上,測量的脈沖個數(shù)的誤差會在1之間。假設(shè)所測得的脈沖個數(shù)為N,則所測頻率的誤差最大為=1(N-1)*100%。顯然,減小誤差的方法,就是增大N。本頻率計要求測頻誤差在1以下,則N應(yīng)大于1

10、000。通過計算,對1KHZ以下的信號用測頻法,反應(yīng)的時間長于或等于10S,。由此可以得出一個初步結(jié)論:測頻法適合于測高頻信號。頻率計數(shù)器嚴(yán)格地按照公式進(jìn)行測頻4。由于數(shù)字測量的離散性,被測頻率在計數(shù)器中所記進(jìn)的脈沖數(shù)可有正一個或負(fù)一個脈沖的量化誤差,在不計其他誤差影響的情況下,測量精度將為: 應(yīng)當(dāng)指出,測量頻率時所產(chǎn)生的誤差是由N和T倆個參數(shù)所決定的,一方面是單位時間內(nèi)計數(shù)脈沖個數(shù)越多時,精度越高,另一方面T越穩(wěn)定時,精度越高。為了增加單位時間內(nèi)計數(shù)脈沖的個數(shù),一方面可在輸入端將被測信號倍頻,另一方面可增加T來滿足,為了增加T的穩(wěn)定度,只需提高晶體振蕩器的穩(wěn)定度和分頻電路的可靠性就能達(dá)到。上

11、述表明,在頻率測量時,被測信號頻率越高,測量精度越高。2.2總體思路頻率計是我們經(jīng)常會用到的實驗儀器之一,頻率的測量實際上就是在單位時間內(nèi)對信號進(jìn)行計數(shù),計數(shù)值就是信號頻率。本文介紹了一種基于單片機(jī)AT89S52 制作的頻率計的設(shè)計方法,所制作的頻率計測量比較高的頻率采用外部十分頻,測量較低頻率值時采用單片機(jī)直接計數(shù),不進(jìn)行外部分頻。該頻率計實現(xiàn)10HZ2MHZ的頻率測量,而且可以實現(xiàn)量程自動切換功能,四位共陽極動態(tài)顯示測量結(jié)果,可以測量正弦波、三角波及方波等各種波形的頻率值。2.3具體模塊根據(jù)上述系統(tǒng)分析,頻率計系統(tǒng)設(shè)計共包括五大模塊:單片機(jī)控制模塊、電源模塊、放大整形模塊、分頻模塊及顯示模

12、塊。各模塊作用如下:1、單片機(jī)控制模塊:以AT89S52單片機(jī)為控制核心,來完成它待測信號的計數(shù),譯碼,和顯示以及對分頻比的控制。利用其內(nèi)部的定時計數(shù)器完成待測信號周期頻率的測量。單片機(jī)AT89S52內(nèi)部具有2個16位定時計數(shù)器,定時計數(shù)器的工作可以由編程來實現(xiàn)定時、計數(shù)和產(chǎn)生計數(shù)溢出時中斷要求的功能。(因為AT89C51所需外圍元件少,擴(kuò)展性強,測試準(zhǔn)確度高。)2、電源模塊:為整個系統(tǒng)提供合適又穩(wěn)定的電源,主要為單片機(jī)、信號調(diào)理電路以及分頻電路提供電源,電壓要求穩(wěn)定、噪聲小及性價高的電源。3、放大整形模塊:放大電路是對待測信號的放大,降低對待測信號幅度的要求。整形電路是對一些不是方波的待測信

13、號轉(zhuǎn)化成方波信號,便于測量。4、分頻模塊:考慮單片機(jī)外部計數(shù),使用12 MHz時鐘時,最大計數(shù)速率為500 kHz,因此需要外部分頻。分頻電路用于擴(kuò)展單片機(jī)頻率測量范圍,并實現(xiàn)單片機(jī)頻率測量使用統(tǒng)一信號,可使單片機(jī)測頻更易于實現(xiàn),而且也降低了系統(tǒng)的測頻誤差??捎?4161進(jìn)行外部十分頻。5、顯示模塊:顯示電路采用四位共陽極數(shù)碼管動態(tài)顯示,為了加大數(shù)碼管的亮度,使用4個PNP三極管進(jìn)行驅(qū)動,便于觀測。綜合以上頻率計系統(tǒng)設(shè)計有單片機(jī)控制模塊、電源模塊、放大整形模塊、分頻模塊及顯示模塊等組成,頻率計的總體設(shè)計框圖如圖2所示。 圖2 頻率計總體設(shè)計框圖第三章 硬件電路具體設(shè)計根據(jù)系統(tǒng)設(shè)計的要求,頻率計

14、實際需要設(shè)計的硬件系統(tǒng)主要包括以下幾個部分:AT89S52單片機(jī)最小系統(tǒng)模塊、電源模塊、放大整形模塊、分頻模塊及顯示模塊,下面將分別給予介紹。3.1 AT89S52主控制器模塊3.1.1 AT89S52的介紹8位單片機(jī)是MSC-51系列產(chǎn)品升級版5,有世界著名半導(dǎo)體公司ATMEL在購買MSC-51設(shè)計結(jié)構(gòu)后,利用自身優(yōu)勢技術(shù)(掉電不丟數(shù)據(jù))閃存生產(chǎn)技術(shù)對舊技術(shù)進(jìn)行改進(jìn)和擴(kuò)展,同時使用新的半導(dǎo)體生產(chǎn)工藝,最終得到成型產(chǎn)品。與此同時,世界上其他的著名公司也通過基本的51內(nèi)核,結(jié)合公司自身技術(shù)進(jìn)行改進(jìn)生產(chǎn),推廣一批如51F020等高性能單片機(jī)。AT89S52片內(nèi)集成256字節(jié)程序運行空間、8K字節(jié)F

15、lash存儲空間,支持最大64K外部存儲擴(kuò)展。根據(jù)不同的運行速度和功耗的要求,時鐘頻率可以設(shè)置在0-33M之間。片內(nèi)資源有4組I/O控制端口、3個定時器、8個中斷、軟件設(shè)置低能耗模式、看門狗和斷電保護(hù)??梢栽?V到5.5V寬電壓范圍內(nèi)正常工作。不斷發(fā)展的半導(dǎo)體工藝也讓該單片機(jī)的功耗不斷降低。同時,該單片機(jī)支持計算機(jī)并口下載,簡單的數(shù)字芯片就可以制成下載線,僅僅幾塊錢的價格讓該型號單片機(jī)暢銷10年不衰。根據(jù)不同場合的要求,這款單片機(jī)提供了多種封裝,本次設(shè)計根據(jù)最小系統(tǒng)有時需要更換單片機(jī)的具體情況,使用雙列直插DIP-40的封裝。AT89S52引腳如下圖3所示。圖3 AT89S52引腳圖 復(fù)位電路

16、及時鐘電路復(fù)位電路和時鐘電路是維持單片機(jī)最小系統(tǒng)運行的基本模塊。復(fù)位電路通常分為兩種:上電復(fù)位(圖4)和手動復(fù)位(圖5)。 圖4 上電復(fù)位 圖5 手動復(fù)位有時系統(tǒng)在運行過程中出現(xiàn)程序跑飛的情況,在程序開發(fā)過程中,經(jīng)常需要手動復(fù)位。所以本次設(shè)計選用手動復(fù)位。高頻率的時鐘有利于程序更快的運行,也有可以實現(xiàn)更高的信號采樣率,從而實現(xiàn)更多的功能6。但是告訴對系統(tǒng)要求較高,而且功耗大,運行環(huán)境苛刻??紤]到單片機(jī)本身用在控制,并非高速信號采樣處理,所以選取合適的頻率即可。合適頻率的晶振對于選頻信號強度準(zhǔn)確度都有好處,本次設(shè)計選取12.000M無源晶振接入XTAL1和XTAL2引腳。并聯(lián)2個30pF陶瓷電容

17、幫助起振。AT89S52單片機(jī)最小系統(tǒng)如圖6所示。圖6 單片機(jī)最小系統(tǒng)原理圖 引腳功能VCC:電源電壓;GND:地;P0口:P0口是一個8位漏極開路的雙向I/O口。作為輸出口,每位能驅(qū)動8個TTL邏輯電平。對P0端口寫“1”時,引腳用作高阻抗輸入。當(dāng)訪問外部程序和數(shù)據(jù)存儲器時,P0口也被作為低8位地址/數(shù)據(jù)復(fù)用。在這種模式下,P0具有內(nèi)部上拉電阻。在 flash編程時,P0口用來接收指令字節(jié);在程序校驗時,輸出指令字節(jié)。程序校驗時,需要外部上拉電阻7。P1口:P1口是一個具有內(nèi)部上拉電阻的8位雙向I/O口,P1 輸出緩沖器能驅(qū)動4個TTL 邏輯電平。對 P1 端口寫“1”時,內(nèi)部上拉電阻把端口

18、拉高,此時可以作為輸入口使用。作為輸入使用時,被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流。此外,P1.0和P1.2分別作定時器/計數(shù)器2的外部計數(shù)輸入和定時器/計數(shù)器2的觸發(fā)輸入,P1口功能具體如表1所示。在flash編程和校驗時,P1口接收低8位地址字節(jié)。表1 P1口的第二種功能說明表引腳號第二功能P1.0T2(定時器/計數(shù)器T2的外部計數(shù)輸入),時鐘輸出P1.1T2EX(定時器/計數(shù)器T2的捕捉/重載觸發(fā)信號和方向控制)P1.5MOSI(在系統(tǒng)編程用)P1.6MISO(在系統(tǒng)編程用)P1.7SCK(在系統(tǒng)編程用)P2口:P2口是一個具有內(nèi)部上拉電阻的8位雙向I/O口,P2輸出緩沖器能驅(qū)

19、動4 個TTL邏輯電平。對P2端口寫“1”時,內(nèi)部上拉電阻把端口拉高,此時可以作為輸入口使用。作為輸入使用時,被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流。在訪問外部程序存儲器或用16位地址讀取外部數(shù)據(jù)存儲器時,P2口送出高八位地址。在這種應(yīng)用中,P2口使用很強的內(nèi)部上拉發(fā)送1。在使用8位地址訪問外部數(shù)據(jù)存儲器時,P2口輸出P2鎖存器的內(nèi)容。在flash編程和校驗時,P2口也接收高8位地址字節(jié)和一些控制信號。P3口:P3口是一個具有內(nèi)部上拉電阻的8位雙向I/O口,P2輸出緩沖器能驅(qū)動4個TTL邏輯電平。對P3端口寫“1”時,內(nèi)部上拉電阻把端口拉高,此時可以作為輸入口使用。作為輸入使用時,被外

20、部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流。P3口亦作為AT89C51特殊功能(第二功能)使用,P3口功能如表2所示。在flash編程和校驗時,P3口也接收一些控制信號。表2 P3口的第二種功能說明表引腳號第二功能P3.0RXD(串行輸入)P3.1TXD (串行輸出)P3.2(外部中斷0)P3.3(外部中斷1)P3.4T0(定時器0外部輸入)P3.5T1(定時器1外部輸入)P3.6(外部數(shù)據(jù)存儲器寫選通)P3.7(外部數(shù)據(jù)存儲器寫選通)RST:復(fù)位輸入。晶振工作時,RST腳持續(xù)2個機(jī)器周期高電平將使單片機(jī)復(fù)位??撮T狗計時完成后,RST 腳輸出96個晶振周期的高電平。特殊寄存器 AUXR(地址8

21、EH)上的DISRTO位可以使此功能無效。DISRTO默認(rèn)狀態(tài)下,復(fù)位高電平有效。XTAL1:振蕩器反相放大器和內(nèi)部時鐘發(fā)生電路的輸入端。XTAL2:振蕩器反相放大器的輸出端。 單片機(jī)引腳分配根據(jù)系統(tǒng)設(shè)計及各模塊的分析得出,單片機(jī)的引腳分配如表3所示。 表 3 單片機(jī)端口分配表模 塊端口功能顯示模塊數(shù)碼管頻率值顯示LED單位顯示分頻模塊通道選擇P1.3清零3.2 電源模塊 直流穩(wěn)壓電源的基本原理直流穩(wěn)壓電源一般由電源變壓器T、整流、濾波及穩(wěn)壓電路所組成8,基本框圖如圖7所示。圖7 直流穩(wěn)壓電源框圖及波形(1)電源變壓器T的作用是將220V的交流電壓變換成整流濾波電路所需要的交流電壓Ui。變壓器

22、副邊與原邊的功率比為P2/P1=n,式中n是變壓器的效率。(2)整流電路:整流電路將交流電壓Ui變換成脈動的直流電壓。再經(jīng)濾波電路濾除較大的波紋成分,輸出波紋較小的直流電壓U1。常用的整流濾波電路有全波整流濾波、橋式整流濾波等。 圖8 整流電路(3)濾波電路:各濾波電路C滿足RL-C=(35)T/2,式中T為輸入交流信號周期,RL為整流濾波電路的等效負(fù)載電阻。圖9 濾波電路(4)穩(wěn)壓電路:常用的穩(wěn)壓電路有兩種形式:一是穩(wěn)壓管穩(wěn)壓電路,二是串聯(lián)型穩(wěn)壓電路。二者的工作原理有所不同。穩(wěn)壓管穩(wěn)壓電路其工作原理是利用穩(wěn)壓管兩端的電壓稍有變化,會引起其電流有較大變化這一特點,通過調(diào)節(jié)與穩(wěn)壓管串聯(lián)的限流電阻

23、上的壓降來達(dá)到穩(wěn)定輸出電壓的目的。它一般適用于負(fù)載電流變化較小的場合。串聯(lián)型穩(wěn)壓電路是利用電壓串聯(lián)負(fù)反饋的原理來調(diào)節(jié)輸出電壓的。集成穩(wěn)壓電源事實上是串聯(lián)穩(wěn)壓電源的集成化。 電源電路設(shè)計根據(jù)上述介紹設(shè)計,電源電路包括變壓器、整流電路、濾波電路、穩(wěn)壓電路等模塊組成,使用LED進(jìn)行電源工作狀態(tài)指示。LM78XX系列三端穩(wěn)壓IC來組成穩(wěn)壓電源所需的外圍元件極少9,電路內(nèi)部還有過流、過熱及調(diào)整管的保護(hù)電路,使用起來可靠、方便,而且價格便宜,因此使用LM7805穩(wěn)壓芯片進(jìn)行5V的電源電路設(shè)計。具體的5V電源電路如下圖10所示。圖10 5V直流電源電路3.3放大整形模塊由于輸入的信號可以是正弦波,三角波。而

24、后面的閘門或計數(shù)電路要求被測信號為矩形波,所以需要設(shè)計一個整形電路則在測量的時候,首先通過整形電路將正弦波或者三角波轉(zhuǎn)化成矩形波。在整形之前由于不清楚被測信號的強弱的情況。所以在通過整形之前通過放大衰減處理。當(dāng)輸入信號電壓幅度較大時,通過輸入衰減電路將電壓幅度降低。當(dāng)輸入信號電壓幅度較小時,前級輸入衰減為零時若不能驅(qū)動后面的整形電路,則調(diào)節(jié)輸入放大的增益,時被測信號得以放大10。根據(jù)上述分析,放大電路放大整形電路采用高頻晶體管3DG100與74LS00等組成。其中3DG100為NPN型高頻小功率三極管,組成放大器將輸入頻率為fx的周期信號如正弦波、三角波及方波等波形進(jìn)行放大。與非門74LS00

25、構(gòu)成施密特觸發(fā)器,它對放大器的輸出波形信號進(jìn)行整形,使之成為矩形脈沖11。具體放大整形電路如圖11所示。 圖11 放大整形電路3.4 分頻設(shè)計模塊分頻電路用于擴(kuò)展單片機(jī)頻率測量范圍,并實現(xiàn)單片機(jī)頻率和周期測量使用統(tǒng)一信號,可使單片機(jī)測頻更易于實現(xiàn),而且也降低了系統(tǒng)的測頻誤差??捎?4161進(jìn)行分頻。 分頻電路分析本頻率計的設(shè)計以AT89S51單片機(jī)為核心,利用他內(nèi)部的定時計數(shù)器完成待測信號周期頻率的測量。單片機(jī)AT89S51內(nèi)部具有2個16位定時計數(shù)器,定時計數(shù)器的工作可以由編程來實現(xiàn)定時、計數(shù)和產(chǎn)生計數(shù)溢出時中斷要求的功能。在定時器工作方式下,在被測時間間隔內(nèi),每來一個機(jī)器周期,計數(shù)器自動加

26、1(使用12 MHz時鐘時,每1s加1),這樣以機(jī)器周期為基準(zhǔn)可以用來測量時間間隔。在計數(shù)器工作方式下,加至外部引腳的待測信號發(fā)生從1到0的跳變時計數(shù)器加1,這樣在計數(shù)閘門的控制下可以用來測量待測信號的頻率。外部輸入在每個機(jī)器周期被采樣一次,這樣檢測一次從1到0的跳變至少需要2個機(jī)器周期(24個振蕩周期),所以最大計數(shù)速率為時鐘頻率的124(使用12 MHz時鐘時,最大計數(shù)速率為500 kHz),因此采用74LS161進(jìn)行外部十分頻使測頻范圍達(dá)到2MHz。為了測量提高精度,當(dāng)被測信號頻率值較低時,直接使用單片機(jī)計數(shù)器計數(shù)測得頻率值;當(dāng)被測信號頻率值較高時采用外部十分頻后再計數(shù)測得頻率值。這兩種

27、情況使用74LS151進(jìn)行通道選擇,由單片機(jī)先簡單測得被測信號是高頻信號還是低頻信號,然后根據(jù)信號頻率值的高低進(jìn)行通道的相應(yīng)導(dǎo)通,繼而測得相應(yīng)頻率值。3.4.2 74LS161芯片介紹74LS161是常用的四位二進(jìn)制可預(yù)置的同步加法計數(shù)器12,可以靈活的運用在各種數(shù)字電路,以及單片機(jī)系統(tǒng)種實現(xiàn)分頻器等很多重要的功能。74LS161引腳如圖12所示。圖12 74LS161引腳圖時鐘CP和四個數(shù)據(jù)輸入端P0P3,清零/MR,使能CEP,CET,置數(shù)PE,數(shù)據(jù)輸出端Q0Q3,以及進(jìn)位輸出TC (TC=Q0Q1Q2Q3CET)。表4為74161的功能表。表4 74161的功能表清零RD預(yù)置LD使能EP

28、 ET時鐘CP預(yù)置數(shù)據(jù)輸入A B C D輸出Q0 Q1 Q2 Q3L L L L LHL 上升沿A B C DA B C DHHL 保 持HH L 保 持HHH H上升沿 計 數(shù)其中RD是異步清零端,LD是預(yù)置數(shù)控制端,A、B、C、D是預(yù)置數(shù)據(jù)輸入端,EP和ET是計數(shù)使能端,RCO(=ET.QA.QB.QC.QD)是進(jìn)位輸出端,它的設(shè)置為多片集成計數(shù)器的級聯(lián)提供了方便。計數(shù)過程中,首先加入一清零信號RD0,使各觸發(fā)器的狀態(tài)為0,即計數(shù)器清零。RD變?yōu)?后,加入一置數(shù)信號LD0,即信號需要維持到下一個時鐘脈沖的正跳變到來后。在這個置數(shù)信號和時鐘脈沖上升的共同作用下,各觸發(fā)器的輸出狀態(tài)與預(yù)置的輸入

29、數(shù)據(jù)相同,這就是預(yù)置操作。接著EP=ET=1,在此期間74161一直處于計數(shù)狀態(tài)。一直到EP=0,ET1,計數(shù)器計數(shù)狀態(tài)結(jié)束。從74LS161功能表功能表中可以知道,當(dāng)清零端CR=“0”,計數(shù)器輸出Q3、Q2、Q1、Q0立即為全“0”,這個時候為異步復(fù)位功能。當(dāng)CR=“1”且LD=“0”時,在CP信號上升沿作用后,74LS161輸出端Q3、Q2、Q1、Q0的狀態(tài)分別與并行數(shù)據(jù)輸入端D3,D2,D1,D0的狀態(tài)一樣,為同步置數(shù)功能。而只有當(dāng)CR=LD=EP=ET=“1”、CP脈沖上升沿作用后,計數(shù)器加1。74LS161還有一個進(jìn)位輸出端CO,其邏輯關(guān)系是CO= Q0Q1Q2Q3CET。合理應(yīng)用計

30、數(shù)器的清零功能和置數(shù)功能,一片74LS161可以組成16進(jìn)制以下的任意進(jìn)制分頻器。3.4.3 74LS151芯片介紹數(shù)據(jù)選擇端(ABC)按二進(jìn)制譯碼,以從8個數(shù)據(jù)(D0-D7)中選取1個所需的數(shù)據(jù)。只有在選通端STROBE為低電平時才可選擇數(shù)據(jù)。74LS151有互補輸出端(Y、W),Y輸出原碼,W輸出反碼13。74LS151引腳如圖13所示。圖13 74151管腳圖74LS151的功能如下表所示。其中A、B、C為選擇輸入端,D0-D7為數(shù)據(jù)輸入端,STROBE為選通輸入端(低電平有效),W為反碼數(shù)據(jù)輸出端,Y為數(shù)據(jù)輸出端。表5 74151功能表 分頻電路根據(jù)以上分析,采用74LS161和74L

31、S151設(shè)計分頻電路如圖14所示。圖15 分頻電路原理圖3.5 顯示模塊顯示器是最常用的輸出設(shè)備,其種類繁多,但在單片機(jī)系統(tǒng)設(shè)計中最常用的是發(fā)光二極管顯示器(LED)和液晶顯示器(LCD)兩種。由于這兩種顯示器結(jié)構(gòu)簡單,價格便宜,接口容易實現(xiàn),因而得到廣泛的應(yīng)用,本次方案采用了1602液晶顯示器。3,5.1 1602的功能簡介1.40通道點陣LCD 驅(qū)動;2.可選擇當(dāng)作行驅(qū)動或列驅(qū)動;3.輸入/輸出信號:輸出,能產(chǎn)生202個LCD驅(qū)動波形;輸入,接受控制器送出的串行數(shù)據(jù)和控制信號,偏壓(V1V6);4.通過單片機(jī)控制將所測的頻率信號讀數(shù)顯示出來【11】。具體引腳功能見表2-2: 2-2 160

32、2引腳和指令功能引腳符號名稱功能1Vss接地0V2VDD電路電源5V(正負(fù)10%)3VEE液晶驅(qū)動電壓V0為液晶顯示器對比度調(diào)整端,接正電源時對比度最弱,接地電源時對比度最高。4RS寄存器選擇信號高電平時選擇數(shù)據(jù)寄存器、低電平時選擇指令寄存器。5R/W讀/寫信號高電平時進(jìn)行讀操作,低電平時進(jìn)行寫操作。當(dāng)RS和RW共同為低電平時可以寫入指令或者顯示地址,當(dāng)RS為低電平RW為高電平時可以讀忙信號,當(dāng)RS為高電平RW為低電平時可以寫入數(shù)據(jù)。6E片選信號當(dāng)E端由高電平跳變成低電平時,液晶模塊執(zhí)行命令。7-14DB0-DB7數(shù)據(jù)線D0D7為8位雙向數(shù)據(jù)線。3.5.2 1602與AT89C52的連接圖 2

33、-8 顯示電路圖2-8中為單片機(jī)與1602的連接圖。其中,D0-D7為1602數(shù)據(jù)口,分別接單片機(jī)的P0.0-P0.7口;單片機(jī)的P2.0口接1602的復(fù)位腳RS;單片機(jī)的P2.3口接1602的讀/寫控制腳RW;單片機(jī)的P2.1口接1602的使能端E;通過一個10K的電位器調(diào)整VEE電壓改變液晶對比度,對比度調(diào)節(jié)不當(dāng)時會產(chǎn)生“鬼影”。通過這種連接方式,就可以實現(xiàn)單片機(jī)對1602控制顯示測得頻率數(shù)值。第四章 系統(tǒng)的軟件設(shè)計系統(tǒng)軟件設(shè)計主要采用模塊化設(shè)計,敘述了各個模塊的程序流程圖,并介紹了軟件Keil和Proteus的使用方法和調(diào)試仿真。4.1 軟件模塊設(shè)計系統(tǒng)軟件設(shè)計采用模塊化設(shè)計方法。整個系

34、統(tǒng)由初始化模塊,信號頻率測量模塊,自動量程轉(zhuǎn)換和顯示模塊等模塊組成。系統(tǒng)軟件流程如圖19所示。頻率計開始工作或者完成一次頻率測量,系統(tǒng)軟件都進(jìn)行測量初始化。測量初始化模塊設(shè)置堆棧指針(SP)、工作寄存器、中斷控制和定時計數(shù)器的工作方式。定時計數(shù)器的工作首先被設(shè)置為計數(shù)器方式,即用來測量信號頻率15。圖19 系統(tǒng)軟件流程總圖首先定時計數(shù)器的計數(shù)寄存器清0,運行控制位TR置1,啟動對待測信號的計數(shù)。計數(shù)閘門由軟件延時程序?qū)崿F(xiàn),從計數(shù)閘門的最小值(即測量頻率的高量程)開始測量,計數(shù)閘門結(jié)束時TR清0,停止計數(shù)。計數(shù)寄存器中的數(shù)值經(jīng)過數(shù)制轉(zhuǎn)換程序從十六進(jìn)制數(shù)轉(zhuǎn)換為十進(jìn)制數(shù)。判斷該數(shù)的最高位,若該位不為

35、0,滿足測量數(shù)據(jù)有效位數(shù)的要求,測量值和量程信息一起送到顯示模塊;若該位為0,將計數(shù)閘門的寬度擴(kuò)大10倍,重新對待測信號的計數(shù),直到滿足測量數(shù)據(jù)有效位數(shù)的要求。定時計數(shù)器的工作被設(shè)置為定時器方式,定時計數(shù)器的計數(shù)寄存器清0,在判斷待測信號的上跳沿到來后,運行控制位TR置為1,以單片機(jī)工作周期為單位進(jìn)行計數(shù),直至信號的下跳沿到來,運行控制位TR清0,停止計數(shù)。16位定時計數(shù)器的最高計數(shù)值為65535,當(dāng)待測信號的頻率較低時,定時計數(shù)器可以對被測信號直接計數(shù),當(dāng)被測信號的頻率較高時,先由硬件十分頻后再有定時計數(shù)器對被測信號計數(shù),加大測量的精度和范圍。4.2 中斷服務(wù)子程序T0中斷服務(wù)子程序流程如圖

36、20所示。測頻時,定時器T0 工作在定時方式,每次定時50mS ,則T0 中斷20 次正好為1秒,即T0用來產(chǎn)生標(biāo)準(zhǔn)秒信號,定時器T0 用作計數(shù)器,對待測信號計數(shù),每秒鐘的開始啟動T0 ,每秒鐘的結(jié)束關(guān)閉T0 ,則定時器T0 之值乘以分頻系數(shù)就為待測信號的頻率。圖20 T0中斷服務(wù)子程序定時計數(shù)器T1工作在計數(shù)方式, 對信號進(jìn)行計數(shù),計數(shù)器1中斷流程圖如圖21所示。圖21 計數(shù)器1中斷服務(wù)子程序4.3 顯示子程序顯示子程序?qū)⒋娣旁陲@示緩沖區(qū)的頻率或周期值送往數(shù)碼管上顯示出來,由于所有4 位數(shù)碼管的8 根段選線并聯(lián)在一起由單片機(jī)的P2口 控制,因此,在每一瞬間4位數(shù)碼管會顯示相同的字符,要想每位

37、顯示不同的字符就必須采用掃描方法輪流點亮各位數(shù)碼管,即在每一瞬間只點亮某一位顯示字符,在此瞬間,段選控制口P2輸出相應(yīng)字符。由P0.0-P0.3逐位輪流點亮各個數(shù)碼管, 每位保持1mS ,在10mS20mS 之內(nèi)再點亮一次,重復(fù)不止,利用人的視角暫留,好像4 位數(shù)碼管同時點亮。數(shù)碼管顯示子程序流程如圖22所示。圖22 顯示子程序流程圖4.4 量程檔自動轉(zhuǎn)換子程序使用定時方法實現(xiàn)頻率測量時,外部的待測信號通過頻率計的預(yù)處理電路變成寬度等于待測信號周期的方波,該方波同樣加至定時計數(shù)器的輸入腳(P3.5)。工作高電平是否加至定時計數(shù)器的輸入腳;當(dāng)判定高電平加至定時計數(shù)器的輸入腳,運行控制位TR置1,

38、啟動定時計數(shù)器對單片機(jī)的機(jī)器周期的計數(shù),同時檢測方波高電平是否結(jié)束;當(dāng)判定高電平結(jié)束時TR清0,停止計數(shù),然后從計數(shù)寄存器讀出測量數(shù)據(jù)。由顯示電路顯示測量結(jié)果,根據(jù)測量結(jié)果判斷,進(jìn)行頻率計比較后,進(jìn)行檔位的自動切換,具體檔位自動切換流程圖如圖23所示。圖23 量程檔自動轉(zhuǎn)換子程序4.5 應(yīng)用軟件簡介此設(shè)計需要在Keil軟件平臺上完成程序的調(diào)試,在Proteus軟件平臺上完成仿真顯示。因此介紹如何使用Keil和Proteus進(jìn)行軟件的仿真。 Keil簡介Keil軟件是目前最流行開發(fā)系列單片機(jī)的軟件,Keil提供了包括C編譯器、宏匯編、連接器、庫管理和一個功能強大的仿真調(diào)試器等在內(nèi)的完整開發(fā)方案,

39、通過一個集成開發(fā)環(huán)境(uVision)將這些部份組合在一起。而Proteus與其它單片機(jī)仿真軟件不同的是,它不僅能仿真單片機(jī)CPU的工作情況,也能仿真單片機(jī)外圍電路或沒有單片機(jī)參與的其它電路的工作情況。因此在仿真和程序調(diào)試時,關(guān)心的不再是某些語句執(zhí)行時單片機(jī)寄存器和存儲器內(nèi)容的改變,而是從工程的角度直接看程序運行和電路工作的過程和結(jié)果。對于這樣的仿真實驗,從某種意義上講,是彌補了實驗和工程應(yīng)用間脫節(jié)的矛盾和現(xiàn)象16。(1)建立工程文件點擊“Project-New project”菜單,出現(xiàn)一個對話框,要求給將要建立的工程起一個名字,你可以在編緝框中輸入一個名字,點擊“保存”按鈕,出現(xiàn)第二個對話

40、框,按要求選擇目標(biāo)器件片。建立新文件并增加到組。分別設(shè)置“target1”中的“Target,output,debug”各項,使程序匯編后產(chǎn)生HEX文件。(2)匯編,調(diào)試系統(tǒng)程序Keil 單片機(jī)模擬調(diào)試軟件內(nèi)集成了一個文本編輯器,用該文本編輯器可以編輯源程序。在集成開發(fā)環(huán)境中選擇菜單“File New.”、單擊對應(yīng)的工具按鈕或者快捷鍵Ctrl +N 將打開一個新的文本編輯窗口,完成匯編語言源文件的輸入,并且完成源程序向當(dāng)前工程的添加。然后在集成開發(fā)環(huán)境中選擇菜單“FileSave As.”可以完成文件的第一次存儲。注意,匯編語言源文件的擴(kuò)展名應(yīng)該是“ASM”,它應(yīng)該與工程文件存儲在同一文件夾之

41、內(nèi)。在完成文件的第一次存儲以后,當(dāng)對匯編語言源文件又進(jìn)行了修改,再次存儲文件則應(yīng)該選擇菜單“FileSave”、單擊對應(yīng)的工具按鈕或者快捷鍵Ctrl +S 實現(xiàn)文件的保存。接著的工作需要把匯編語言源文件加入工程之中。選擇工程管理器窗口的子目“Source Group 1”,再單擊鼠標(biāo)右鍵打開快捷菜單。在快捷菜單中選擇“Add File to Group Source Group 1”,加入文件對話框被打開。在這個對話框的“查找范圍(I)”下拉列表框中選擇存儲匯編語言源文件的文件夾,在“文件類型(T)” 下拉列表框選擇“Asm Source file(*.a*;*.src)”,這時存儲的匯編語言

42、源文件將顯示出來。雙擊要加入的文件名或者選擇要加入的文件名再單擊“Add”按鈕即可完成把匯編語言源文件加入工程。文件加入以后,加入文件對話框并不消失,更多的文件也可以利用它加入工程。如果不需要加入其它文件,單擊“Close”按鈕可以關(guān)閉加入文件對話框。這時工程管理窗口的文件選項卡中子目錄“Source Group 1”下出現(xiàn)一個匯編語言源文件。 需要注意,當(dāng)把匯編語言源文件加入工程但還沒有關(guān)閉加入文件對話框,這時有可能被誤認(rèn)為文件沒有成功地加入工程而再次進(jìn)行加入操作,系統(tǒng)將顯示所需的文件已經(jīng)加入的提示。在這種情況下,單擊提示框中的“確定”按鈕,再單擊“Close”按鈕可以關(guān)閉加入文件對話框。(

43、3)編譯源程序,出現(xiàn)錯誤時,返回上一級對錯誤更改后重新編譯,直到?jīng)]有錯誤為止。4.5.2 protues簡介 protues是Labcenter公司出品的電路分析、實物仿真系統(tǒng),而KEIL是目前世界上最好的51單片機(jī)匯編和C語言的集成開發(fā)環(huán)境。他支持匯編和C的混合編程,同時具備強大的軟件仿真和硬件仿真功能17。Protues能夠很方便的和KEIL、Matlab IDE等編譯模擬軟件結(jié)合。Proteus提供了大量的元件庫有RAM,ROM,鍵盤,馬達(dá),LED,LCD,AD/DA,部分SPI器件,部分IIC器件,它可以仿真單片機(jī)和周邊設(shè)備,可以仿真51系列、AVR,PIC等常用的MCU,與keil和

44、MPLAB不同的是它還提供了周邊設(shè)備的仿真,只要給出電路圖就可以仿真。這里我將keil和 Protues兩個軟件的快速集成起來使用。(1)首先將keil和 Protues兩個軟件安裝好。(2)然后在C:Program FilesLabcenter EletronicsProtues 6 ProfessionalMODELS(我的Protues是安裝C盤里面的)目錄下的VDM51.DLL 動態(tài)連接庫文件復(fù)制到C:KEILC51BIN 目錄下面(我的keil 也安裝在C盤)這個文件將在keil的debug設(shè)置時用到。(3)打開protues軟件,新建一文件將硬件原理圖繪入圖中。(4)將KEIL生成

45、的HEX文件下載入單片機(jī)中,點擊“開始”進(jìn)行仿真。(5)在keil中進(jìn)行debug,同時在proteus中查看直觀的結(jié)果(如LCD顯示)。這樣就可以像使用仿真器一樣調(diào)試程序。利用Proteus與Keil整合進(jìn)行實驗,具有比較明顯的優(yōu)勢,當(dāng)然其存在的缺點也是有的。利用仿真實驗可以做全部的軟件實驗和極大多數(shù)的硬件系統(tǒng),虛擬仿真實驗室,因極少硬件投入、所以經(jīng)濟(jì)優(yōu)勢明顯,不僅可以彌補實驗儀器和元器件缺乏帶來的不足,而且排除了原材料消耗和儀器損壞等因素。附錄試驗程序:#include #include/#include1602.h/#includedelay.h#define HIGH_T (65536-10000)/256#define LOW_T (65536-10000)%256sbit LED=P12; /定義LED端口bit OVERFLOWFLAG;bit TIMERFLAG;/*- 定時器0初始化子程序本程序用于計數(shù)-*/void Init_Timer0(void) TMOD |= 0 x01 | 0 x04; /使用模式1,16位計數(shù)器,使用|符號可以在使用多個定時器時不受影響 TH0=0 x00; /給定初值 TL0=0 x00; EA=1; /總中斷打開 ET0=1; /定時器中斷打

溫馨提示

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

評論

0/150

提交評論