基于單片機(jī)的多功能數(shù)字頻率計(jì)的設(shè)計(jì)_第1頁
基于單片機(jī)的多功能數(shù)字頻率計(jì)的設(shè)計(jì)_第2頁
基于單片機(jī)的多功能數(shù)字頻率計(jì)的設(shè)計(jì)_第3頁
基于單片機(jī)的多功能數(shù)字頻率計(jì)的設(shè)計(jì)_第4頁
基于單片機(jī)的多功能數(shù)字頻率計(jì)的設(shè)計(jì)_第5頁
已閱讀5頁,還剩25頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、精選優(yōu)質(zhì)文檔-傾情為你奉上多功能數(shù)字頻率計(jì)的設(shè)計(jì) 摘 要:隨著電子信息產(chǎn)業(yè)的不斷發(fā)展,信號頻率等的測量在科學(xué)研究和實(shí)際應(yīng)用中的作用日益重要。數(shù)字頻率計(jì)是直接用十進(jìn)制數(shù)字顯示被測信號頻率的一種測量裝置,此設(shè)計(jì)應(yīng)用單片機(jī)AT89C52的數(shù)學(xué)運(yùn)算和控制功能,首先通過整形放大模塊對待測信號進(jìn)行預(yù)處理,以滿足單片機(jī)輸入要求,然后送入單片機(jī)的定時(shí)器進(jìn)行軟件計(jì)數(shù),獲得頻率值,最終通過LCD顯示模塊顯示出頻率。同時(shí)還利用ADC0804進(jìn)行對源信號模數(shù)轉(zhuǎn)換,得到信號的最大值。此設(shè)計(jì)通過在keil1環(huán)境中用c語言2編程,并在proteus中對電路進(jìn)行了仿真測試,仿真測試通過后進(jìn)行電路焊接調(diào)試,電路結(jié)構(gòu)較簡單,成本

2、低,測量精度高,適合用于多種場合。關(guān)鍵詞:單片機(jī);頻率計(jì);模數(shù)轉(zhuǎn)換Design of The Multifunctional Digital Frequency Meter Abstract:With the unceasing development of electronic information industry, the measurement of the signal frequency is playing an increasingly important role in scientific research and practical applications .Digi

3、tal frequency meter is a measuring device which directly use decimal digital to display signal frequency , this design applies the arithmetic and control functions of SCM AT89C52 , at first ,through the shaping and amplification module to pre processing the test signal so that it can meet the SCM in

4、put requirements, and then input the MCU timer to do the software counting and obtain frequency value ,finally, through the LCD display module shows the frequency. At the same time, the analog source signals are converted into digital signals using ADC0804 to obtain the maximum value of the signal.

5、This design is programmed through the Keil environment using C language , and in Proteus for circuit simulation test, then welding and debugging circuit, this design has the advantages of simple structure, low cost, high measurement accuracy, so it is suitable for a variety of occasions.Key words:si

6、ngle chip microcomputer; frequency meter; ADC1引言 數(shù)字頻率計(jì)是計(jì)算機(jī)、通訊設(shè)備、音頻視頻等科研生產(chǎn)領(lǐng)域不可缺少的測量儀器。它是一種用十進(jìn)制數(shù)字顯示被測信號頻率的數(shù)字測量儀器,它的基本功能是測量正弦信號、方波信號等物理量的頻率,在進(jìn)行模擬、數(shù)字電路的設(shè)計(jì)、安裝、調(diào)試過程中、由于其使用十進(jìn)制數(shù)顯示,測量迅速,精確度高,顯示直觀,經(jīng)常要用到頻率計(jì)。 在電子技術(shù)中, 頻率是最基本的參數(shù)之一, 并且與許多電參量的測量方案、測量結(jié)果都有十分密切的關(guān)系,因此頻率計(jì)在教學(xué)、科研、測量儀器、工業(yè)控制等方面都有較廣泛的應(yīng)用, 頻率的測量也就顯得更為重要,傳統(tǒng)的數(shù)字頻

7、率計(jì)多采用組合電路和時(shí)序電路等硬件電路組成,產(chǎn)品體積大,運(yùn)行速度慢,測量精度低。因此,隨著對測量精度要求的提高,傳統(tǒng)的設(shè)計(jì)方法已不能滿足要求,隨著單片機(jī)技術(shù)的發(fā)展與成熟,以單片機(jī)為控制核心,設(shè)計(jì)一個(gè)多功能數(shù)字頻率計(jì),逐漸顯示出其優(yōu)越性。本論文以單片機(jī)為核心,設(shè)計(jì)的多功能數(shù)字頻率計(jì),電路結(jié)構(gòu)簡單,成本低,測量精度高,測量范圍也得到極大的提高。頻率計(jì)的設(shè)計(jì)原理實(shí)際上是測量單位時(shí)間內(nèi)的脈沖數(shù)。這種方法免去了實(shí)測以前的預(yù)測,同時(shí)節(jié)省了劃分頻率的時(shí)間,克服了原來高頻率采用測頻模式而低頻段采用測周期模式的測量方法存在換擋速度慢的缺點(diǎn)。通常情況下計(jì)算每秒內(nèi)待測信號的脈沖個(gè)數(shù),此時(shí)我們稱閘門時(shí)間為1秒。閘門時(shí)

8、間也可以大于或小于1秒。閘門時(shí)間越長,得到的頻率值就越準(zhǔn)確,但閘門時(shí)間越長則每測一次頻率的時(shí)間隔就越長。閘門時(shí)間越短,測得頻率值刷新?lián)娇?,但測得的頻率精度就受影響。本論文的任務(wù)就是設(shè)計(jì)一個(gè)基于單片機(jī)技術(shù)的多功能數(shù)字頻率計(jì),主要介紹了放大整形電路,模數(shù)轉(zhuǎn)換電路,控制電路,顯示電路等模塊的設(shè)計(jì)原理3,12,以及測頻的基本方法,測量對象可以使方波,三角波正弦波等,通過proteus軟件4進(jìn)行仿真后,最終制作為成品。2 系統(tǒng)總體設(shè)計(jì)方案設(shè)計(jì)2.1 頻率測量方法概述 頻率的測量方法很多,比較常用的有直讀法、比較法、電容充放電式計(jì)數(shù)法、電子計(jì)數(shù)法5。 其中,電子計(jì)數(shù)式測量頻率具有精度高、測量范圍寬、顯示

9、醒目直觀、測量迅速 ,以及便于實(shí)現(xiàn)測量過程自動(dòng)化等一系列優(yōu)點(diǎn)。常用的有以下幾種方法: 1. 脈沖數(shù)定時(shí)測頻法(M法)此法是記錄在確定時(shí)間TC內(nèi)待測信號的脈沖個(gè)數(shù)M0,則待測頻率為: (1)顯然,時(shí)間TC為準(zhǔn)確值,測量的精度主要取決于計(jì)數(shù)MX的誤差。其特點(diǎn)在于:測量方法簡單,測量精度與待測信號頻率和閘門時(shí)間有關(guān)。所以在本設(shè)計(jì)中測頻率采用這種方法。 2.脈沖周期測頻法(T法) 專心-專注-專業(yè)此法是在待測信號的一個(gè)周期內(nèi),TX記錄標(biāo)準(zhǔn)頻率信號變化次數(shù)M0。這種方法測出的頻率是: (2)此法的特點(diǎn)是低頻檢測時(shí)精度高,所以在周期測量中采用了這種方法。3.脈沖數(shù)倍頻測頻法(AM法) (3)此法是為克服M

10、法在低頻測量時(shí)精度不高的缺陷發(fā)展起來的。通過A倍頻,把待測信號頻率放大A倍, 以提高測量精度。其待測頻率為:其特點(diǎn)是待測信號脈沖間隔減小,間隔誤差降低;精度較高,但控制電路較復(fù)雜。 4.脈沖數(shù)分頻測頻法(A/T法) 此法是為了提高T法高頻測量時(shí)的精度形成的。由于T法測量時(shí)要求待測信號的周期不能太短,所以可通過A分頻使待測信號的周期擴(kuò)大A倍,所測頻率為: (4)其特點(diǎn)是高頻測量精度比T法高A倍;但控制電路也較復(fù)雜,而且課題要求所測的頻率較低,所以無需用該法。 5.脈沖平均周期測頻法(M/T法) 此法是在閘門時(shí)間TC內(nèi),同時(shí)用兩個(gè)計(jì)數(shù)器分別記錄待測信號的脈沖數(shù)MX和標(biāo)準(zhǔn)信號的脈沖數(shù)M0。若標(biāo)準(zhǔn)信號

11、的頻率為F0,則待測信號頻率為: (5)M/T法在測高頻時(shí)精度較高;但在測低頻時(shí)精度較低,因?yàn)檎n題要求所測頻率較低,所以沒有選擇M/T法來完成測量任務(wù)。6.多周期同步測頻法 此法是由閘門時(shí)間TC與同步門控時(shí)間TD共同控制計(jì)數(shù)器計(jì)數(shù)的一種測量方法,待測信號頻率與 M/T法相同。此法的優(yōu)點(diǎn)是,閘門時(shí)間與被測信號同步,消除了對被測信號計(jì)數(shù)產(chǎn)生的個(gè)字誤差,測量精度大大提高,且測量精度與待測信號的頻率無關(guān),達(dá)到了在整個(gè)測量頻段等精度測量。因?yàn)樗箢l率較低所以也無需用該法。2.2 整體方案比較方案一:本方案主要以數(shù)字器件為核心,主要分為時(shí)基電路,邏輯控制電路,放大整形電路,閘門電路,計(jì)數(shù)電路,鎖存電路,

12、譯碼顯示電路七大部分。其原理框圖如圖1所示。方案二:本方案主要以單片機(jī)為核心,利用單片機(jī)的計(jì)數(shù)定時(shí)功能來實(shí)現(xiàn)頻率的計(jì)數(shù)并且利用單片機(jī)的動(dòng)態(tài)掃描法把測出的數(shù)據(jù)送到數(shù)字顯示電路顯示。其原理框圖如2所示。 邏輯控制 時(shí)基電路放大整形電路 閘門電路 計(jì)數(shù)器 鎖存器 譯碼顯示器圖1 方案一原理圖信號放大信號整形單片機(jī)AT89C52電路LCD顯示電路圖2 方案二原理圖2.2 方案論證方案一:本方案使用大量的數(shù)字器件,被測量信號放大整形電路變成計(jì)數(shù)器所要求的脈沖信號,其頻率于被測信號的頻率相同。同時(shí)時(shí)基電路提供標(biāo)準(zhǔn)時(shí)間基準(zhǔn)信號,其高電平持續(xù)時(shí)間1s,當(dāng)1s信號來到時(shí),閘門開通,被測脈沖信號通過閘門,計(jì)數(shù)器開

13、始計(jì)數(shù),直到1s信號結(jié)束閘門關(guān)閉,停止計(jì)數(shù)。若在閘門時(shí)間1s內(nèi)計(jì)數(shù)器計(jì)得的脈沖個(gè)數(shù)為N,則被測信號頻率FX=NHZ。邏輯控制電路的作用有兩個(gè):一是產(chǎn)生鎖存脈沖,是顯示器上的數(shù)字穩(wěn)定;二是產(chǎn)生清零脈沖,使計(jì)數(shù)器每次測量從零開始計(jì)數(shù)。方案二:本方案主要以單片機(jī)為核心,被測信號先進(jìn)入信號放大電路進(jìn)行放大,再被送到波形整形電路整形,把被測得正弦波或者三角波為方波。利用單片機(jī)的計(jì)數(shù)器和定時(shí)器的功能對被測信號進(jìn)行計(jì)數(shù)。編寫相應(yīng)的程序可以使單片機(jī)自動(dòng)測量頻率,并把測出的頻率數(shù)據(jù)送到顯示電路顯示。2.3 方案選擇 比較以上兩種方案可以知道,方案二的核心是單片機(jī),使用的元器件少,原理電路簡單,調(diào)試簡單只要改變程

14、序就能實(shí)現(xiàn)不同的功能。與方案二相比較方案一則使用了大量的數(shù)字元器件,原理電路復(fù)雜,硬件調(diào)試麻煩。如要測量高頻的信號還需要加上分頻電路,價(jià)格相對高了點(diǎn)?;谏鲜?,所以選擇了方案二。3 系統(tǒng)硬件設(shè)計(jì)本設(shè)計(jì)主要元器件為AT89C52,由它完成對待測信號頻率的計(jì)數(shù)和結(jié)果顯示等功能,外部還要有信號預(yù)處理電路,顯示電路等??梢苑譃橐韵聨讉€(gè)模塊:放大整形模塊,模數(shù)轉(zhuǎn)換模塊,單片機(jī)系統(tǒng),LCD顯示模塊。3.1 單片機(jī)控制模塊3.1.1 AT89C52介紹AT89C52是美國ATMEL公司生產(chǎn)的低電壓,高性能CMOS8位單片機(jī),片內(nèi)含8k bytes的可反復(fù)擦寫的Flash只讀程序存儲(chǔ)器和256 bytes的隨

15、機(jī)存取數(shù)據(jù)存儲(chǔ)器(RAM),器件采用ATMEL公司的高密度、非易失性存儲(chǔ)技術(shù)生產(chǎn),兼容標(biāo)準(zhǔn)MCS-51指令系統(tǒng),片內(nèi)置通用8位中央處理器和Flash存儲(chǔ)單元,AT89C52單片機(jī)在電子行業(yè)中有著廣泛的應(yīng)用。其引腳說明如下(引腳分布如圖3):VCC:電源電壓。GND:接地。P0口:P0口是一組8位漏極開路型雙向I/O口,也即地址/數(shù)據(jù)總線復(fù)用口。作為輸出口用時(shí),每位能吸收電流的方式驅(qū)動(dòng)8 個(gè)TTL邏輯門電路,對端口P0 寫“1”時(shí),可作為高阻抗輸入端用。在訪問外部數(shù)據(jù)存儲(chǔ)器或程序存儲(chǔ)器時(shí),這組口線分時(shí)轉(zhuǎn)換地址(低8 位)和數(shù) 圖3 AT89C52引腳分布圖據(jù)總線復(fù)用,在訪問期間激活內(nèi)部上拉電阻。

16、在Flash 編程時(shí),P0 口接收指令字節(jié),而在程序校驗(yàn)時(shí),輸出指令字節(jié),校驗(yàn)時(shí),要求外接上拉電阻。P1 口:P1 是一個(gè)帶內(nèi)部上拉電阻的8 位雙向I/O 口, P1 的輸出緩沖級可驅(qū)動(dòng)(吸收或輸出電流)4 個(gè)TTL 邏輯門電路。對端口寫“1”,通過內(nèi)部的上拉電阻把端口拉到高電平,此時(shí)可作輸入口。作輸入口使用時(shí),因?yàn)閮?nèi)部存在上拉電阻,某個(gè)引腳被外部信號拉低時(shí)會(huì)輸出一個(gè)電流(IIL)。與AT89C51 不同之處是,P1.0 和P1.1 還可以分作為定時(shí)/計(jì)數(shù)器2 的外部計(jì)數(shù)輸入(P1.0/T2)和輸入(P1.1/T2EX),見表1。表1 P1.0和P1.1的第二功能引腳號功能特性P1.0T2(時(shí)

17、鐘輸出)P1.1T2EX(定時(shí)/計(jì)數(shù)器2)FLASH編程和程序校驗(yàn)期間,P1接收低8位地址。P2 口:P2 是一個(gè)帶有內(nèi)部上拉電阻的8 位雙向I/O 口,P2 的輸出緩沖級可驅(qū)動(dòng)(吸收或輸出電流)4 個(gè)TTL 邏輯門電路。對端口P2 寫“1”,通過內(nèi)部的上拉電阻把端口拉到高電平,此時(shí)可作輸入口,作輸入口使用時(shí),因?yàn)閮?nèi)部存在上拉電阻,某個(gè)引腳被外部信號拉低時(shí)會(huì)輸出一個(gè)電流(IIL)。在訪問外部程序存儲(chǔ)器或16 位地址的外部數(shù)據(jù)存儲(chǔ)器(例如執(zhí)行MOVX DPTR 指令)時(shí),P2 口送出高8 位地址數(shù)據(jù)。在訪問8 位地址的外部數(shù)據(jù)存儲(chǔ)器(如執(zhí)行MOVX RI 指令)時(shí),P2口輸出P2鎖存器的內(nèi)容。F

18、LASH編程或校驗(yàn)時(shí),P2亦接收高位地址和一些控制信號。P3 口:P3 口是一組帶有內(nèi)部上拉電阻的8 位雙向I/O 口。P3 口輸出緩沖級可驅(qū)動(dòng)(吸收或輸出電流)4 個(gè)TTL 邏輯門電路。對P3 口寫入“1”時(shí),它們被內(nèi)部上拉電阻拉高,并可作為輸入端口。此時(shí),被外部拉低的P3口將用上拉電阻輸出電流(IIL)。P3口除了作為一般的I/O口線外,更重要的用途是它的第二功能,如表2。表2 P3口的第二功能端口引腳第二功能P3.0RXD (串行輸入口)P3.1 TXD(串行輸出口)P3.2 INT2(外部中斷0)P3.3 INT1(外部中斷1)P3.4 T0(定時(shí)器/計(jì)數(shù)器0)P3.5 T1(定時(shí)器/

19、計(jì)數(shù)器1)P3.6 WR(外部數(shù)據(jù)存儲(chǔ)器寫選通)P3.7 RD(外部數(shù)據(jù)存儲(chǔ)器都選通) P3口還接收一些用于Flash閃速存儲(chǔ)器編程和程序校驗(yàn)的控制信號。RST:復(fù)位輸入。當(dāng)振蕩器工作時(shí),RST引腳出現(xiàn)兩個(gè)機(jī)器周期以上高電平將使單片機(jī)復(fù)位。ALE/PROG:當(dāng)訪問外部程序存儲(chǔ)器或數(shù)據(jù)存儲(chǔ)器時(shí),ALE(地址鎖存允許)輸出脈沖用于鎖存地址的低8 位字節(jié)。一般情況下,ALE 仍以時(shí)鐘振蕩頻率的1/6 輸出固定的脈沖信號,因此它可對外輸出時(shí)鐘或用于定時(shí)目的。要注意的是:每當(dāng)訪問外部數(shù)據(jù)存儲(chǔ)器時(shí)將跳過一個(gè)ALE脈沖。對Flash存儲(chǔ)器編程期間,該引腳還用于輸入編程脈沖(PROG)。如有必要,可通過對特殊

20、功能寄存器(SFR)區(qū)中的8EH 單元的D0 位置位,可禁止ALE 操作。該位置位后,只有一條 MOVX 和MOVC指令才能將ALE 激活。此外,該引腳會(huì)被微弱拉高,單片機(jī)執(zhí)行外部程序時(shí),應(yīng)設(shè)置ALE禁止位無效。PSEN:程序儲(chǔ)存允許(PSEN)輸出是外部程序存儲(chǔ)器的讀選通信號,當(dāng)AT89C52 由外部程序存儲(chǔ)器取指令(或數(shù)據(jù))時(shí),每個(gè)機(jī)器周期兩次PSEN 有效,即輸出兩個(gè)脈沖。在此期間,當(dāng)訪問外部數(shù)據(jù)存儲(chǔ)器,將跳過兩次PSEN信號。EA/VPP:外部訪問允許。欲使CPU 僅訪問外部程序存儲(chǔ)器(地址為0000HFFFFH),EA 端必須保持低電平(接地)。需注意的是:如果加密位LB1 被編程,

21、復(fù)位時(shí)內(nèi)部會(huì)鎖存EA端狀態(tài)。如EA端為高電平(接Vcc端),CPU 則執(zhí)行內(nèi)部程序存儲(chǔ)器中的指令。Flash 存儲(chǔ)器編程時(shí),該引腳加上+12V 的編程允許電源Vpp,當(dāng)然這必須是該器件是使用12V 編程電壓Vpp。XTAL1:振蕩器反向放大器及內(nèi)部時(shí)鐘發(fā)生器的輸入端。XTAL2:振蕩器反向放大器的輸出端。3.1.2 單片機(jī)晶振時(shí)序電路XLAT1CC晶振30PF30PFXLAT2XLAT1AT89C52時(shí)鐘是計(jì)算機(jī)的心臟,控制著計(jì)算機(jī)的工作節(jié)奏。單片機(jī)內(nèi)部有一個(gè)由高增益反相放大器組成的振蕩器。反相放大器輸入端為XTAL1,輸出端為XTAL2。單片機(jī)的振蕩方式有兩種,即內(nèi)部方式和外部時(shí)鐘方式10。

22、單片機(jī)的內(nèi)部時(shí)鐘如圖4所示。它是利用芯片內(nèi)部反相器和電阻組成的振蕩電路,在XTAL1 圖4 單片機(jī)內(nèi)部時(shí)鐘電路和XTAL2引腳上跨接晶體振蕩器和微調(diào)電容,從而構(gòu)成一個(gè)穩(wěn)定的自激振蕩器,構(gòu)成單片機(jī)的時(shí)鐘電路。晶振可以在1.2MHz12MHz之間選用,電容C1、C2可以在20pF100pF之間選擇,它的主要作用是幫助振蕩器起振。其值的大小對振蕩器頻率有微調(diào)作用,典型值為C1=C2=30PF。外部時(shí)鐘方式使用外部振蕩脈沖信號由XTAL2端輸入,對外部振蕩脈沖信號沒有特殊要求,其主要在整個(gè)單片機(jī)系統(tǒng)已有時(shí)鐘源和多片單片機(jī)同時(shí)工作取得時(shí)鐘上的同步時(shí)應(yīng)用。因此,本系統(tǒng)用了內(nèi)部方式的時(shí)鐘電路,晶振選擇12M

23、Hz,電容值為30PF。3.1.3 單片機(jī)復(fù)位電路 AT89C52的復(fù)位輸入引腳RST(即RESET)為它提供了初始化的手段。有了它可以使程序從指定處開始執(zhí)行,即從程序存儲(chǔ)器中的0000H地址單元開始執(zhí)行程序。在89C52的時(shí)鐘電路工作后,只要在RET引腳上出現(xiàn)兩個(gè)機(jī)器周期以上的高電平時(shí),單片機(jī)內(nèi)部則初始復(fù)位。只要RET保持高電平,89C52循環(huán)復(fù)位。只有當(dāng)RET由高電平變成低電平以后,89C52才從0000H地址開始執(zhí)行程序。單片機(jī)的復(fù)位電路通常采用上電復(fù)位和開關(guān)復(fù)位的兩種方式10。本設(shè)計(jì)采用開關(guān)復(fù)位電路,如圖5所示。RSTAT89C52+5VC R7R8S圖5 單片機(jī)復(fù)位電路3.2 信號預(yù)

24、處理模塊信號預(yù)處理電路如圖6 所示,它由反相比例放大電路5和整形電路構(gòu)成。R2+LM32474LS14uiR1R3A1A2uouo1VccR4圖6 信號預(yù)處理電路圖 第一級反相比例放大電路,放大器的放大能力實(shí)現(xiàn)了對小信號的測量,運(yùn)算放大器采用的是LM3246,單電源5V供電。其中,R1=100,R2=300,R3=100,R4=1K,Vcc=5V。 其輸入輸出關(guān)系為:+ (6) 第二級采用帶施密特觸發(fā)器的反相器74LS14 7,它可以用于把放大器的輸出信號變換成TTL電平的矩形波,還可以將任意周期性脈沖信號整形為矩形波,從而便于單片機(jī)計(jì)數(shù)。在第二級電路中,輸入與輸出的關(guān)系如圖7所示。tVT+V

25、T-tuo1uo00 圖7 用74LS14實(shí)現(xiàn)的波形變換3.3 模數(shù)轉(zhuǎn)換模塊3.3.1 ADC0804基本技術(shù) 所謂A/D轉(zhuǎn)換器就是模擬/數(shù)字轉(zhuǎn)換器(ADC),是將輸入的模擬信號轉(zhuǎn)換成數(shù)字信號,信號輸入端可以是傳感器或轉(zhuǎn)換器的輸出,而ADC的數(shù)字信號也可能提高給微處理器,以便廣泛應(yīng)用。1)ADC0804的規(guī)格:8 位COMS 依次逼近型的A/D 轉(zhuǎn)換器.三態(tài)鎖定輸出 存取時(shí)間:135US分辨率:8位轉(zhuǎn)換時(shí)間:100US 圖8 ADC0804引腳分布 總誤差:正負(fù)1LSB 工作溫度:ADC0804LCN-070度 2)ADC0804引腳說明(引腳分布如圖8): /CS :片選信號。低電平有效,高

26、電平時(shí)芯片不工作。 /RD :外部讀取轉(zhuǎn)換結(jié)果的控制輸出信號。/RD 為HI 時(shí),DB0DB7 處理高阻抗;/RD 為LO時(shí),數(shù)字?jǐn)?shù)據(jù)才會(huì)輸出。 /WR:用來啟動(dòng)轉(zhuǎn)換的控制輸入,相當(dāng)于ADC 的轉(zhuǎn)換開始(/CS=0 時(shí)),當(dāng)/WR 由HI變?yōu)長O時(shí),轉(zhuǎn)換器被清除;當(dāng)/WR 回到HI 時(shí),轉(zhuǎn)換正式開始。 CLK IN,CLK R: 時(shí)鐘輸入或接振蕩無件(R,C)頻率約限制在100KHZ1460KHZ,如果使用RC 電路則其振蕩頻率為1/(1.1RC) /INTR:轉(zhuǎn)換結(jié)束輸出信號。ADC0804完成一次A/D轉(zhuǎn)換后,此引腳輸出一個(gè)低脈沖,對單片機(jī)可以稱為中斷觸發(fā)信號。 VIN(+) VIN(-)

27、 :差動(dòng)模擬電壓輸入.輸入單端正電壓時(shí), VIN(-)接地:而差動(dòng)輸入時(shí),直接加入VIN(+) VIN(-). AGND,DGND:模擬信號以及數(shù)字信號的接地. VREF:輔助參考電壓. DB0DB7:8 位的數(shù)字輸出.VCC: 電源供應(yīng)以及作為電路的參考電壓3)ADC0804工作原理模數(shù)轉(zhuǎn)換器ADC0804的工作分為三個(gè)過程:l 復(fù)位中斷觸發(fā)信號信號中斷表明ADC0804轉(zhuǎn)換已經(jīng)結(jié)束,它提示單片機(jī)隨時(shí)可以讀取轉(zhuǎn)換結(jié)果,是ADC0804的一個(gè)輸出信號。一般情況下,啟動(dòng)A/D轉(zhuǎn)換前應(yīng)該復(fù)位這個(gè)信號,以等待新的轉(zhuǎn)換完成后ADC0804發(fā)出新的信號,這樣才可以讀到新的轉(zhuǎn)換結(jié)果。復(fù)位信號的時(shí)序如圖9中

28、的A,在實(shí)現(xiàn)片選的前提下,使用一個(gè)讀信號的下降沿就可以復(fù)位信號。圖9 ADC0804的A/D轉(zhuǎn)換時(shí)序l 啟動(dòng)ADC0804的A/D轉(zhuǎn)換ADC0804中的A/D轉(zhuǎn)換器在滿足一定條件時(shí)開始一個(gè)轉(zhuǎn)換過程,這個(gè)條件就是:在實(shí)現(xiàn)片選的前提下,INTR引腳上出現(xiàn)的一個(gè)上升沿。啟動(dòng)A/D轉(zhuǎn)換的時(shí)序如圖9中的B,實(shí)現(xiàn)片選以后,使用一個(gè)寫信號就可以啟動(dòng)一個(gè)轉(zhuǎn)換過程。l 讀取轉(zhuǎn)換結(jié)果 在A/D轉(zhuǎn)換結(jié)束以后,ADC0804的INTR引腳將給出一個(gè)低脈沖,如果把這個(gè)引腳直接連接到單片機(jī)的外部中斷引腳,這個(gè)低脈沖將引起單片機(jī)中斷,單片機(jī)可以在中斷處理程序中讀取ADC0804的轉(zhuǎn)換結(jié)果。3.3.2 模數(shù)轉(zhuǎn)換模塊結(jié)構(gòu)模數(shù)轉(zhuǎn)

29、換電路主要器件為ADC080414,它與單片機(jī)連接方式如圖10所示。 在該設(shè)計(jì)中,ADC0804的數(shù)據(jù)輸出線與AT89C52的數(shù)據(jù)總線直接相連,AT89C52的RD,WR,INTR直接連到ADC0804,由于用P3產(chǎn)生片選信號,無需外加地址譯碼器,當(dāng)AT89C52向ADC0804發(fā)送信號時(shí),只要虛擬一個(gè)系統(tǒng)不占用的數(shù)據(jù)存儲(chǔ)器地址即可。 圖10 單片機(jī)與ADC0804連接方式3.4 顯示電路模塊3.4.1 1602基本技術(shù)1)、主要功能A、 40通道點(diǎn)陣LCD 驅(qū)動(dòng);B、 可選擇當(dāng)作行驅(qū)動(dòng)或列驅(qū)動(dòng);C、 輸入/輸出信號:輸出,能產(chǎn)生20×2個(gè)LCD驅(qū)動(dòng)波形;輸入,接受控制器送出的串行數(shù)

30、據(jù)和控制信號,偏壓(V1V6);D、 通過單片機(jī)控制將所測的頻率信號讀數(shù)顯示出來。2) 、引腳和指令功能2.1)模塊引腳功能表表4 模塊引腳功能表引 線 號符 號名 稱功 能1Vss接地0V2VDD電路電源5V±10%3VEE液晶驅(qū)動(dòng)電壓保證VDD-VEE=4.55V電壓差4RS寄存器選擇信號H:數(shù)據(jù)寄存器 L:指令寄存器5R/W讀/寫信號H:讀 L:寫6E片選信號下降沿觸發(fā),鎖存數(shù)據(jù)7-14DB0-DB7 數(shù)據(jù)線 數(shù)據(jù)傳輸2.2)寄存器選擇功能表表5 寄存器選擇功能表RSR/W操 作00指令寄存器(IR)寫入01忙標(biāo)志和地址計(jì)數(shù)器讀出10數(shù)據(jù)寄存器(DR)寫入11數(shù)據(jù)寄存器讀出 (

31、注:忙標(biāo)志為"1"時(shí),表明正在進(jìn)行內(nèi)部操作,此時(shí)不能輸入指令或數(shù)據(jù),要等內(nèi)部操作結(jié)束,即忙標(biāo)志為"0"時(shí)。)2.3) 指令功能1602液晶模塊內(nèi)部的控制器共有11條控制指令,功能如下:格式:RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0指令1:清顯示,指令碼01H,光標(biāo)復(fù)位到地址00H位置。指令2:光標(biāo)復(fù)位,光標(biāo)返回到地址00H。指令3:光標(biāo)和顯示模式設(shè)置 I/D:光標(biāo)移動(dòng)方向,高電平右移,低電平左移 S:幕上所有文字是否左移或者右移。高電平表示有效,低電平則無效。 指令4:顯示開關(guān)控制。 D:控制整體顯示的開與關(guān),高電平表

32、示開顯示,低電平表示關(guān)顯示 C:控制光標(biāo)的開與關(guān),高電平表示有光標(biāo),低電平表示無光標(biāo) B:控制光標(biāo)是否閃爍,高電平閃爍,低電平不閃爍。 指令5:光標(biāo)或顯示移位 S/C:高電平時(shí)移動(dòng)顯示的文字,低電平時(shí)移動(dòng)光標(biāo)。 指令6:功能設(shè)置命令 DL:高電平時(shí)為4位總線,低電平時(shí)為8位總線 N:低電平時(shí)為單行顯示,高電平時(shí)雙行顯示 F: 低電平時(shí)顯示5x7的點(diǎn)陣字符,高電平時(shí)顯示5x10的點(diǎn)陣字符。 指令7:字符發(fā)生器RAM地址設(shè)置。 指令8:DDRAM地址設(shè)置。 指令9:讀忙信號和光標(biāo)地址 BF:為忙標(biāo)志位,高電平表示忙,此時(shí)模塊不能接收命令或者數(shù)據(jù),如果為低電平表示不忙。 指令10:寫數(shù)據(jù) 指令11:

33、讀數(shù)據(jù) 3) 、顯示位與DD RAM 地址的對應(yīng)關(guān)系表6 顯示位與DD RAM 地址的對應(yīng)關(guān)系 顯 示 位 序 號1 2 3 4 5 40 DD RAM 地 址(HEX)第 一 行00 01 02 03 04 . 27第 二 行40 41 42 43 44 . 673.1.2 顯示電路結(jié)構(gòu)顯示電路主要器件為1602ALCD15,單片機(jī)與1602ALCD的連接方法如下圖11所示。1602ALCD采用標(biāo)準(zhǔn)的16腳接口,本設(shè)計(jì)具體接法如下: 第1腳:VSS為地電源(圖中未畫出)。 第2腳:VDD接5V正電源(圖中未畫出)。第3腳:V0為液晶顯示器對比度調(diào)整端,接正電源時(shí)對比度最弱,接地電源時(shí)對比度最

34、高,對比度過高時(shí)會(huì)產(chǎn)生“鬼影”,本設(shè)計(jì)使用時(shí)通過一個(gè)10K的電位器調(diào)整其對比度(圖中未畫出)。第4腳:RS為寄存器選擇,高電平時(shí)選擇數(shù)據(jù)寄存器、低電平時(shí)選擇指令寄存器。第5腳:RW為讀寫信號線,高電平時(shí)進(jìn)行讀操作,低電平時(shí)進(jìn)行寫操作。當(dāng)RS和RW共同為低電平時(shí)可以寫入指令或者顯示地址,當(dāng)RS為低電平RW為高電平時(shí)可以讀忙信號,當(dāng)RS為高電平RW為低電平時(shí)可以寫入數(shù)據(jù)。第6腳:E端為使能端,當(dāng)E端由高電平跳變成低電平時(shí),液晶模塊執(zhí)行命令。 第714腳:D0D7為8位雙向數(shù)據(jù)線。 第1516腳:空腳(圖中未畫出)。圖11 單片機(jī)與1602ALCD連接方式4 系統(tǒng)軟件設(shè)計(jì) 系統(tǒng)軟件方面主要采用模塊化

35、設(shè)計(jì),整個(gè)系統(tǒng)由初始化模塊,信號頻率測量模塊,電壓測量模塊,顯示模塊等組成,并敘述了各個(gè)模塊的程序流程圖,最后通過軟件Keil和Proteus對電路進(jìn)行了仿真。4.1 初始化設(shè)置基于測量頻率的任務(wù),程序包括定時(shí)器T0、T1初始化,主要是對特殊功能寄存器TMOD和TCON的相應(yīng)位進(jìn)行控制字設(shè)置,并將計(jì)數(shù)初值送入定時(shí)器中。(1) 工作方式寄存器TMOD工作方式寄存器TMOD用于選擇定時(shí)器/計(jì)數(shù)器的工作模式和工作方式,它的字節(jié)地址為89H,不能進(jìn)行位尋址,其格式如表7所示。表7 TMOD寄存器格式D7D6D5D4D3D2D1D0GATEC/ TM1M0GATEC/TM1M08位分為兩組,高4位控制T

36、1,低4位控制T0。M1、M0位:定時(shí)器的工作方式的選擇位,對應(yīng)關(guān)系如表8所示。表8 定時(shí)器的工作方式M1M0功能說明00方式0,為13位的定時(shí)器/計(jì)數(shù)器01方式1,為16位的定時(shí)器/計(jì)數(shù)器10方式2為常數(shù)自動(dòng)重新裝入的8位定時(shí)器/計(jì)數(shù)器11僅適用于T0,分三個(gè)8位計(jì)數(shù)器,對T1停止計(jì)數(shù)C/位:C/=0為定時(shí)器方式,采用晶振脈沖的12分頻信號作為計(jì)數(shù)器的計(jì)數(shù)信號,亦即對機(jī)器周期進(jìn)行計(jì)數(shù)。GATE位:GATE位為1時(shí),定時(shí)器/計(jì)數(shù)器的計(jì)數(shù)受到外部引腳輸入電平的控制;GATE位為0時(shí),定時(shí)器/計(jì)數(shù)器的運(yùn)行不受外部輸入引腳的控制。方式1為16位的定時(shí)器/計(jì)數(shù)器,其定時(shí)或計(jì)數(shù)范圍較大,所以采用方式1。

37、(2) 定時(shí)器/計(jì)數(shù)器控制寄存器TCON字節(jié)地址為88H,位地址為88H-8FH,TCON的格式如表9所示:表9 TCON寄存器格式D7D6D5D4D3D2D1D0TF1TR1TF0IR0IE1IT1IE0IT0低4位與外部中斷有關(guān),高4位的功能如下:TF1和TF0分別為T1、T0計(jì)數(shù)溢出標(biāo)志位,當(dāng)計(jì)數(shù)器計(jì)數(shù)溢出時(shí),該位置“1”。使用查詢方式時(shí),此位作為狀態(tài)位供CPU查詢,但應(yīng)當(dāng)注意的是在查詢該位有效后應(yīng)以軟件方法及時(shí)將該位清零。使用中斷方式時(shí),此位作為中斷申請標(biāo)志位,進(jìn)入中斷服務(wù)程序后由硬件自動(dòng)清零。TR1、TR0:計(jì)數(shù)運(yùn)行控制位,TR1(或TR0)=1,是啟動(dòng)定時(shí)器/計(jì)數(shù)器工作的必要條件,

38、還與GATE位的狀態(tài)有關(guān)。TR1(或TR0)=0,停止定時(shí)器/計(jì)數(shù)器工作,該位可由軟件置1或清0。本系統(tǒng)中,T1工作于定時(shí)模式,T0工作于計(jì)數(shù)模式。所以TMOD控制字為15H。4.2 測頻子程序 首先,系統(tǒng)置P1.3、P1.4為00,即選通測量頻率時(shí)的輸入信號,再對定時(shí)器/計(jì)數(shù)器的TMOD、TCON,以及定時(shí)器T1、計(jì)數(shù)器T0初值進(jìn)行設(shè)置。在T1定時(shí)的1S內(nèi),T0連續(xù)計(jì)數(shù),直到1S時(shí)間到,關(guān)定時(shí)/計(jì)數(shù)器,讀出TH0、TL0的值。該程序流程圖如圖13所示。 選通輸入置定時(shí)器控制方式定時(shí)時(shí)間到NY關(guān)定時(shí),、計(jì)數(shù)器讀TH0、TL0的值開始返回 圖13 頻率測量程序流程圖4.3 電壓測量子程序本試驗(yàn)的

39、軟件需要實(shí)現(xiàn)一下幾個(gè)步驟:首先,控制ADC0804芯片進(jìn)行正確采樣,讀取采樣結(jié)果。然后對采樣值進(jìn)行運(yùn)算變換,換算出實(shí)際的滑動(dòng)變阻器輸入電壓值。最后將該電壓值通過八段數(shù)碼管顯示出來,從而實(shí)現(xiàn)一個(gè)簡易的數(shù)字電壓測量表功能。電壓子程序的流程圖如圖14所示。4.4 顯示子程序顯示子程序?qū)⒋娣旁陲@示緩沖區(qū)的頻率值送往LCD1602A上顯示出來,顯示子程序流程如圖15所示。用戶所編的顯示程序,開始必須進(jìn)行初始化,否則模塊無法正常顯示,需利用內(nèi)部復(fù)位電路進(jìn)行初始化,下面指令是在初始化過程中執(zhí)行的。1) 清屏(DISPLAY CLEAR);2) 功能設(shè)置(FUNCTION SET);DL = 1: 8Bit

40、接口數(shù)據(jù);N = 0: 1行顯示; F = 0:5×7dot字形;3) 顯示開/關(guān)控制(DISPLAY ON/OFF CONTROL)D = 0: 顯示關(guān); C = 0: 光標(biāo)關(guān); B = 0: 消隱關(guān)4) 輸入方式設(shè)置(ENTRY MODE SET )I/D = 1:(增量): S = 0: 無移位開始 初始化 啟動(dòng)ADC0804開始 延時(shí) LCD初始化 讀取數(shù)據(jù)延時(shí)數(shù)據(jù)顯示 運(yùn)算變換 數(shù)據(jù)顯示 圖14 電壓測量流程 圖15 顯示子程序流程5 總結(jié)數(shù)字頻率計(jì)是計(jì)算機(jī)、通訊設(shè)備、音頻視頻等科研生產(chǎn)領(lǐng)域不可缺少的測量儀器。在進(jìn)行模擬、數(shù)字電路的設(shè)計(jì)、安裝、調(diào)試過程中,由于其使用十進(jìn)制數(shù)

41、顯示,測量迅速,精確度高,顯示直觀,會(huì)被經(jīng)常使用到。本設(shè)計(jì)所設(shè)計(jì)的頻率計(jì)有有較高的精度,擴(kuò)展功能還可實(shí)現(xiàn)對信號的幅度測量,使用方便,有較強(qiáng)的實(shí)用價(jià)值。經(jīng)過不斷的修改調(diào)試,最終也仿真實(shí)現(xiàn)了測頻和測幅度功能。當(dāng)然這只是基于各種理想的實(shí)驗(yàn)條件下得出的結(jié)論,設(shè)計(jì)當(dāng)中不可避免的存在一些問題。(1) 、在信號預(yù)處理電路中只是粗略的將正弦信號轉(zhuǎn)換成方波信號,而沒有對輸出信號進(jìn)行進(jìn)一步的處理。(2) 、該設(shè)計(jì)測量頻率范圍較小,加上分頻電路后就會(huì)大大提高測量范圍。(3) 、該設(shè)計(jì)采用脈沖數(shù)定時(shí)測頻法,并不是精度最高的,如果采用多周期同步測頻法,測量精度會(huì)大大提高,測量范圍也會(huì)增大,但由于個(gè)人能力有限,選擇了第一

42、種方法,此法原理簡單,更容易實(shí)現(xiàn)功能。(4) 、在軟件編程過程中,由于對C語言不是很熟悉,測量占空比,脈寬等預(yù)期目標(biāo)并沒有實(shí)現(xiàn),最終只實(shí)現(xiàn)了對頻率及幅度的測量,編程能力有待提高。參考文獻(xiàn)1 王為青、程國剛.Keil Cx51應(yīng)用開發(fā)技術(shù)M.北京:人民郵電出版社,2006.2 譚浩強(qiáng).C程序設(shè)計(jì)(第三版)M.北京:清華大學(xué)出版社,2005.3 曲云霞、郭蘭申、李向東.基于單片機(jī)的頻率計(jì)數(shù)器的設(shè)計(jì) J .河北工業(yè)大學(xué)學(xué)報(bào),1999 , 28(6).4 李學(xué)禮.基于Proteus的8051單片機(jī)實(shí)例教程(第四版)M.北京:電子工業(yè)出版社,2008,6 .5 譚文秀.數(shù)字頻率計(jì)電路的設(shè)計(jì)與分析J.鄭州

43、電子工程學(xué)校校報(bào),2008.6 深圳市中源單片機(jī)發(fā)展有限公司 AT89C52 Datasheets.7 馬場清太郎 譯者:何希才.運(yùn)算放大器應(yīng)用電路設(shè)計(jì)M.北京:科學(xué)出版社,2007,4.8 閻石.數(shù)字電子技術(shù)基礎(chǔ)(第四版)M. 北京:高等教育出版社,1989,5-9.9 史軍、雷正紅.數(shù)字頻率計(jì)的設(shè)計(jì)J .河西學(xué)院學(xué)報(bào) , 2005,05.10 王金鳳. 單片機(jī)實(shí)用系統(tǒng)設(shè)計(jì)技術(shù)M.北京: 國防工業(yè)出版社, 1996,6.11赫建國、劉立新、黨劍華.基于單片機(jī)的頻率計(jì)設(shè)計(jì)J .西安郵電學(xué)院學(xué)報(bào), 2003 ,8(3).12 謝自美.電子線路設(shè)計(jì)·實(shí)驗(yàn)·測試M.武漢:華中科技

44、大學(xué)出版社,2006,08:242-249.13 鄒道生、李銘、楊漢祥.多功能數(shù)字頻率計(jì)的設(shè)計(jì)J. 贛南師范學(xué)院學(xué)報(bào),2004,06.14 Joseph D. Greenfild. Practical Digital Design Using. Ies Regent/Drentice-hall.Inc, 1994.15 Lattice Co.Ltd. Lattice Handbook. Lattice Co.Ltd. , 1994 .謝 辭經(jīng)過一個(gè)多月的辛苦和努力,多功能數(shù)字頻率計(jì)的設(shè)計(jì)已基本完成。本次設(shè)計(jì)完成的同時(shí),我們的知識(shí)和能力也得到了一定的擴(kuò)展和提高。對于我們而言,這只是電子設(shè)計(jì)方面的

45、一次小小的嘗試,但其過程所運(yùn)用的一些理論、方法都使我們獲益非淺。在這次設(shè)計(jì)中,我們力爭設(shè)計(jì)的各個(gè)環(huán)節(jié)盡量合理完善這一原則,綜合考慮經(jīng)濟(jì)性和可行性。本次設(shè)計(jì)過程,使我們在電子設(shè)計(jì)、方案選擇、資料查閱、數(shù)據(jù)收集及團(tuán)體協(xié)作方面均獲得了鍛煉,這必將為我們?nèi)蘸蟮膶?shí)際工作奠基良好的基礎(chǔ)。對于本次設(shè)計(jì),雖然我們做了很多工作,但是其中一定會(huì)存在缺陷和不足之處,希望各位老師和同學(xué)們批評指正。本設(shè)計(jì)在老師的細(xì)心指導(dǎo)下完成從設(shè)計(jì)的選題,資料查找,到論文的撰寫過程都給予了精心細(xì)致的指導(dǎo),同時(shí)也得到了老師的大力幫助。此外,還得到同學(xué)們的幫助,在此一并致以最誠摯的謝意?。ㄈ墓?1000字)附錄一 整體電路圖 實(shí)物圖附錄

46、二 #include<reg52.h>#include <intrins.h>#include<math.h>#define uchar unsigned char#define uint unsigned int#define ulong unsigned longuchar i,j,k; unsigned long num,num3,num1,num2; sbit E=P27; sbit RW=P26; sbit RS=P25; sbit int1=P33; /定義管腳功能 sbit cs=P32; /使能端 sbit wr=P36; /寫端口 sbit

47、 rd=P37; /讀端口 uchar freq10,vol7;/分別存放頻率和電壓 uchar code tabe=" frequency:"uchar code tabe1=" V_MAX:"uchar code tabe2=" be in testing"/延遲void delay()int i,j;for(i=0; i<=10; i+)for(j=0; j<=10; j+);/延遲2void delay2(uchar dit) for(i=dit;i>0;i-) for(j=0;j<100;j+);/l

48、cd寫命令void write_com(uchar del)P1 = del;RS = 0;RW = 0;E = 0;delay();E = 1;delay();/寫數(shù)據(jù)void write_date(uchar del)P1 = del;RS = 1;RW = 0;E = 0;delay();E = 1;delay(); /lcd初始化 void L1602_init()write_com(0x01);write_com(0x38);write_com(0x0c);write_com(0x06);write_com(0xd0);/定時(shí)器初始化void time_init() ET0=1; TL0=0XB0; TH0=0X3C; TR0=0; /定時(shí)器0中斷void time_int0() interrupt 1 k+=1; TL0=0XB0;TH0=0X3C;/計(jì)數(shù)器1初始化void time_init1()ET1=1;TH1=0X00;TL1=0X00;TR1=0;/計(jì)數(shù)器只能中斷入口void time_int1() interrupt 3 num3+=1;/LCD顯示部分void display(uchar add,uchar *p) write_com

溫馨提示

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

評論

0/150

提交評論