課程設(shè)計--數(shù)字頻率計_第1頁
已閱讀1頁,還剩22頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、<p>  基于單片機的數(shù)字頻率計的設(shè)計</p><p><b>  【摘要】</b></p><p>  本設(shè)計以STC89C52單片機為核心充分利用硬件資源設(shè)計的一種頻率計,該頻率計首先將被測信號放大整形處理,變成滿足單片機I/O口接受的TTL/ CMOS 兼容信號從單片機的T1輸入口輸入直接累加脈沖數(shù),將單片機內(nèi)部定時器定時為1S,這時累加的脈沖數(shù)即為

2、被測信號的頻率。最后經(jīng)單片機處理送至lcd液晶顯示屏顯示。</p><p>  【關(guān)鍵字】 單片機(STC89C52)、放大整形、 數(shù)據(jù)處理、1602LCD、</p><p>  【Abstract】</p><p>  This design take STC89C52 monolithic integrated circuit as the core full

3、 use hardware source design's one kind of frequency meter, this frequency meter will be measured first that signal enlargement reshaping processing, turns satisfies TTL/which the monolithic integrated circuit I/O mou

4、th accepts the CMOS compatible signal from monolithic integrated circuit's T1 input port input direct summation pulse number, the monolithic integrated circuit interior timer fixed time is 1S, by now accumulated <

5、/p><p>  【Keyword】STC89C52、 Larger plastic、Data processing、1602LCD</p><p><b>  目錄 </b></p><p>  引言……………………………………………………………………………………………5</p><p>  1.系統(tǒng)概述………………………

6、……………………………………………………………5</p><p>  1.1數(shù)字頻率計概述…………………………………………………………………………5</p><p>  1.2頻率測量儀的設(shè)計思路與頻率的計算 ……………………………………………………5</p><p>  1.3基本設(shè)計原理 …………………………………………………………………………5</p&

7、gt;<p>  2.數(shù)字頻率計的硬件結(jié)構(gòu)設(shè)計………………………………………………………………7</p><p>  2.1 系統(tǒng)硬件的構(gòu)成 ………………………………………………………………………7</p><p>  2.2 STC89C52單片機及其引腳說明 …………………………………………………………7</p><p>  2.3 信號調(diào)理及放

8、大整形模塊 ………………………………………………………………8</p><p>  2.3.1工作原理 ………………………………………………………………………8</p><p>  2.3.2 LF353雙運算放大器簡介 ………………………………………………………8</p><p>  2.4 顯示模塊 ……………………………………………………………………………

9、…10</p><p>  2.4.1 1602ALCD與單片機的接法 ………………………………………………………10</p><p>  2.4.2 1602ALCD基本技術(shù) …………………………………………………………… 11</p><p>  3.Altium designer原理圖 ………………………………………………………………13</p&

10、gt;<p>  3.1 整形放大部分 …………………………………………………………………………13</p><p>  3.2 單片機及1602部分 ……………………………………………………………………13</p><p>  4.Altium designerPCB布線 ………………………………………………………………14</p><p>  5.

11、 Proteus 仿真 …………………………………………………………………………15</p><p>  6. 軟件設(shè)計 …………………………………………………………………………………16</p><p>  6.1 系統(tǒng)工作流程圖 ………………………………………………………………………16</p><p>  6.1.1 T0的1s定時………………………………

12、……………………………………16</p><p>  6.1.2 T1的計數(shù)原理 …………………………………………………………………16</p><p>  6.2 軟件工作原理 …………………………………………………………………………16</p><p>  6.3 軟件處理方法 …………………………………………………………………………17</p>

13、<p>  7. 實驗結(jié)果與分析 …………………………………………………………………………18</p><p>  8. 元器件清單 …………………………………………………………………………18</p><p>  結(jié)束語 ………………………………………………………………………………………19</p><p>  致謝詞 …………………………………………

14、……………………………………………19</p><p>  參考文獻 ……………………………………………………………………………………19</p><p>  程序附錄 ……………………………………………………………………………………20</p><p><b>  引言</b></p><p>  頻率測量在科技研究

15、和實際應(yīng)用中的作用日益重要。傳統(tǒng)的頻率計通采用組合電路和時序電路等大量的硬件電路構(gòu)成,產(chǎn)品不但體積較大,運行速度慢,而且測量低頻信號時不宜直接使用。頻率信號抗干擾性強、易于傳輸 ,可以獲得較高的測量精度。同時 ,頻率測量方法的優(yōu)化也越來越受到重視.并采用單片機和相關(guān)硬軟件實現(xiàn)。</p><p>  STC89C52系列單片機具有體積小,功能強,性能價格比較高等特點,因此被廣泛應(yīng)用于工業(yè)控制和智能化儀器,儀表等領(lǐng)域

16、。此頻率計以STC89C52單片機為核心,具有性能優(yōu)良,精度高,可靠性好等特點。</p><p>  以STC89C52單片機為控制器件的頻率測量方法,并用C語言進行設(shè)計,采用單片機智能控制,結(jié)合外圍電子電路。最終實現(xiàn)數(shù)字頻率計的設(shè)計方案,根據(jù)頻率計的特點,可廣泛應(yīng)用于各種測試場所。</p><p>  在基礎(chǔ)理論和專業(yè)技術(shù)基礎(chǔ)上,通過對數(shù)字頻率計的設(shè)計,用十進制數(shù)字來顯示被測信號頻率的測

17、量裝置。以精確迅速的特點測量信號頻率,在本設(shè)計在實踐理論上鍛煉提高了自己的綜合運用知識水平,為以后的開發(fā)及科研工作打下基礎(chǔ)。</p><p><b>  1系統(tǒng)概述 </b></p><p>  1.1數(shù)字頻率計概述</p><p>  數(shù)字頻率計是計算機、通訊設(shè)備、音頻視頻等科研生產(chǎn)領(lǐng)域不可缺少的測量儀器。它是一種用十進制數(shù)字顯示被測信號頻率

18、的數(shù)字測量儀器。它的基本功能是測量正弦信號,方波信號及其他各種單位時間內(nèi)變化的物理量。在進行模擬、數(shù)字電路的設(shè)計、安裝、調(diào)試過程中,由于其使用十進制數(shù)顯示,測量迅速,精確度高,顯示直觀,經(jīng)常要用到頻率計。 </p><p>  本數(shù)字頻率計將采用定時、計數(shù)的方法測量頻率,采用一個1602 LCD顯示器動態(tài)顯示7位數(shù)。</p><p>  1.2 基本設(shè)計原理</p><

19、p>  基本設(shè)計原理是直接用十進制數(shù)字顯示被測信號頻率的一種測量裝置。它以測量頻率的方法直接對正弦波、方波、三角波的頻率進行自動的測量。</p><p>  所謂“頻率”,就是周期性信號在單位時間(1s)內(nèi)變化的次數(shù)。若在一定時間間隔T內(nèi)測得這個周期性信號的重復(fù)變化次數(shù)N,則其頻率可表示為f=N/T。其中脈沖形成電路的作用是將被測信號變成脈沖信號,其重復(fù)頻率等于被測頻率f。利用單片機的內(nèi)部定時器作為定時時間

20、周期,若其周期為1s,則輸入的脈沖信號持續(xù)計數(shù)時間亦準(zhǔn)確地等于1s,所計數(shù)的脈沖個數(shù)即為被測信號的頻率。[1]</p><p><b>  1.3 方案選擇</b></p><p>  用單片機設(shè)計頻率計通常采用兩種辦法,第一種方法是使用單片機自帶的計數(shù)器對輸入脈沖進行計數(shù);第二種方法是單片機外部使用計數(shù)器對脈沖信號進行計數(shù),計數(shù)值再由單片機讀取。第一種方法的好處是設(shè)

21、計出的頻率計系統(tǒng)結(jié)構(gòu)和程序編寫簡單,成本低廉,不需要外部計數(shù)器,直接利用所給的單片機最小系統(tǒng)就可以實現(xiàn)。這種方法的缺陷是受限于單片機計數(shù)的晶振頻率,輸入的時鐘頻率通常是單片機晶振頻率的幾分之一甚至是幾十分之一,在本次設(shè)計使用的98C51單片機,由于檢測一個由“1”到“0”的跳變需要兩個機器周期,前一個機器周期測出“1”,后一個周期測出“0”。故輸入時鐘信號的最高頻率不得超過單片機晶振頻率的二十四分之一。第二種方法的好處是輸入的時鐘信號頻

22、率可以不受單片機晶振頻率的限制,可以對相對較高頻率進行測量,但缺點是成本比第一種方法高,設(shè)計出來的系統(tǒng)結(jié)構(gòu)和程序也比較復(fù)雜。[2]</p><p>  由于成本有限,本次設(shè)計中采用第一種方法,因此輸入的時鐘信號最高頻率不得高于12MHz/24=500KHz。對外部脈沖的占空比無特殊要求。根據(jù)頻率檢測的原理,很容易想到利用51單片機的T0、T1兩個定時/計數(shù)器,一個用來定時,另一個用來計數(shù),兩者均應(yīng)該工作在中斷方式

23、,一個中斷用于1s時間的中斷處理,一個中斷用于對頻率脈沖的計數(shù)溢出處理。</p><p>  2數(shù)字頻率計的硬件結(jié)構(gòu)設(shè)計</p><p>  2.1 系統(tǒng)硬件的構(gòu)成</p><p>  本頻率計的數(shù)據(jù)采集系統(tǒng)主要元器件是單片機STC89C52,由它完成對待測信號頻率的計數(shù)、計數(shù)處理、結(jié)果顯示等功能,外部還要有信號處理、LCD顯示器等器件。具體可分為以下幾個模塊:放大

24、整形模塊、單片機系統(tǒng)、LCD顯示模塊。各模塊關(guān)系圖如圖2所示:[3]</p><p>  圖2 系統(tǒng)工作原理圖</p><p>  2.2 STC89C52單片機及其引腳說明</p><p>  STC89C52是一種高性能低功耗的采用CMOS工藝制造的8位微控制器,它提供下列標(biāo)準(zhǔn)特征:4K字節(jié)的程序存儲器,128字節(jié)的RAM,32條I/O線,2個16位定時器/計數(shù)

25、器, 一個5中斷源兩個優(yōu)先級的中斷結(jié)構(gòu),一個雙工的串行口, 片上震蕩器和時鐘電路</p><p><b>  引腳說明:</b></p><p><b>  ·VCC:電源電壓</b></p><p><b>  ·GND:地</b></p><p>  &

26、#183;P0口:P0口是一組8位漏極開路型雙向I/O口,作為輸出口用時,每個引腳能驅(qū)動8個TTL邏輯門電路。當(dāng)對0端口寫入1時,可以作為高阻抗輸入端使用。</p><p>  當(dāng)P0口訪問外部程序存儲器或數(shù)據(jù)存儲器時,它還可設(shè)定成地址數(shù)據(jù)總線復(fù)用的形式。在這種模式下,P0口具有內(nèi)部上拉電阻。</p><p>  在EPROM編程時,P0口接收指令字節(jié),同時輸出指令字節(jié)在程序校驗時。程序校

27、驗時需要外接上拉電阻。</p><p>  ·P1口:P1口是一帶有內(nèi)部上拉電阻的8位雙向I/O口。P1口的輸出緩沖能接受或輸出4個TTL邏輯門電路。當(dāng)對P1口寫1時,它們被內(nèi)部的上拉電阻拉升為高電平,此時可以作為輸入端使用。當(dāng)作為輸入端使用時,P1口因為內(nèi)部存在上拉電阻,所以當(dāng)外部被拉低時會輸出一個低電流(IIL)。</p><p>  ·P2口:P2是一帶有內(nèi)部上拉

28、電阻的8位雙向的I/O端口。P2口的輸出緩沖能驅(qū)動4個TTL邏輯門電路。當(dāng)向P2口寫1時,通過內(nèi)部上拉電阻把端口拉到高電平,此時可以用作輸入口。作為輸入口,因為內(nèi)部存在上拉電阻,某個引腳被外部信號拉低時會輸出電流(IIL)。</p><p>  P2口在訪問外部程序存儲器或16位地址的外部數(shù)據(jù)存儲器(例如MOVX @ DPTR)時,P2口送出高8位地址數(shù)據(jù)。在這種情況下,P2口使用強大的內(nèi)部上拉電阻功能當(dāng)輸出1時

29、。當(dāng)利用8位地址線訪問外部數(shù)據(jù)存儲器時(例MOVX @R1),P2口輸出特殊功能寄存器的內(nèi)容。</p><p>  當(dāng)EPROM編程或校驗時,P2口同時接收高8位地址和一些控制信號。</p><p>  ·P3口:P3是一帶有內(nèi)部上拉電阻的8位雙向的I/O端口。P3口的輸出緩沖能驅(qū)動4個TTL邏輯門電路。當(dāng)向P3口寫1時,通過內(nèi)部上拉電阻把端口拉到高電平,此時可以用作輸入口。作為

30、輸入口,因為內(nèi)部存在上拉電阻,某個引腳被外部信號拉低時會輸出電流(IIL)。</p><p>  P3口同時具有多種特殊功能,具體如下表1所示:</p><p>  表1 P3口的第二功能</p><p>  ·RST:復(fù)位輸入。當(dāng)振蕩器工作時,RST引腳出現(xiàn)兩個機器周期的高電平將使單片機復(fù)位。</p><p>  ·AL

31、E/ :當(dāng)訪問外部存儲器時,地址鎖存允許是一輸出脈沖,用以鎖存地址的低8位字節(jié)。當(dāng)在Flash編程時還可以作為編程脈沖輸出。</p><p>  一般情況下,ALE是以晶振頻率的1/6輸出,可以用作外部時鐘或定時目的。但也要注意,每當(dāng)訪問外部數(shù)據(jù)存儲器時將跳過一個ALE脈沖。</p><p>  · :程序存儲允許時外部程序存儲器的讀選通信號。當(dāng)AT89C52執(zhí)行外部程序存儲器的

32、指令時,每個機器周期 兩次有效,除了當(dāng)訪問外部數(shù)據(jù)存儲器時, 將跳過兩個信號。</p><p>  · /VPP:外部訪問允許。為了使單片機能夠有效的傳送外部數(shù)據(jù)存儲器從0000H到FFFH單元的指令, 必須同GND相連接。需要主要的是,如果加密位1被編程,復(fù)位時EA端會自動內(nèi)部鎖存。</p><p>  當(dāng)執(zhí)行內(nèi)部編程指令時, 應(yīng)該接到VCC端。</p><

33、p>  ·XTAL1:振蕩器反相放大器以及內(nèi)部時鐘電路的輸入端。</p><p>  ·XTAL2:振蕩器反相放大器的輸出端。</p><p>  2.3 信號調(diào)理及放大整形模塊</p><p>  2.3.1 工作原理</p><p>  放大整形系統(tǒng)包括衰減器、跟隨器、放大器、施密特觸發(fā)器。它將正弦輸入信號Vx整

34、形成同頻率方波Vo,幅值過大的被測信號經(jīng)過分壓器分壓送入后級放大器,以避免波形失真。由運算放大器構(gòu)成的射級跟隨器起阻抗變換作用,使輸入阻抗提高。同相輸入的運算放大器的放大倍數(shù)為(R3+R4)/R3,改變R3的大小可以改變放大倍數(shù)。系統(tǒng)的整形電路由施密特觸發(fā)器組成,整形后的方波送至單片機以便計數(shù)。</p><p>  由于輸入的信號幅度是不確定、可能很大也有可能很小,這樣對于輸入信號的測量就不方便了,過大可能會把器

35、件燒毀,過小可能器件檢測不到,所以在設(shè)計中采用了這個信號調(diào)理電路對輸入的波形進行阻抗變換、放大限幅和整形,信號調(diào)理部分電路具體實現(xiàn)電路原理圖和參數(shù)如下圖3所示:[4] </p><p><b>  圖3 信號處理</b></p><p>  圖中D1—D4為肖特基二極管(DIODE),本設(shè)計中選用IN4148。D5為穩(wěn)壓二極管,本設(shè)計選用的穩(wěn)壓二極管IN733,其中

36、R1、R2、R5、R6為10KΩ,R4為150KΩ,R3為500KΩ的電位器。[5]</p><p>  2.3.2 LF353雙運算放大器簡介 </p><p>  集成電路運算放大器是一種高電壓增益、高輸入電阻和低輸出電阻的多級直接耦合放大電路,它的類型很多,電路也不一樣,但結(jié)構(gòu)具有共同之處,圖6表示集成運放的內(nèi)部電路組成原理框圖。圖中輸入級一般是由BJT、JFET或MOSFET組成的

37、差分式放大電路,利用它的對稱性可以提高整個電路的共模抑制比和其他方面的性能,它的兩個輸入端構(gòu)成整個電路的反相輸入端和同相輸入端[7]。電壓放大級一般由電壓跟隨器或互補電壓跟隨器所組成,以降低輸出電阻,提高帶負載能力。偏置電路是為各級提供合適的工作電流。此外還有一些輔助環(huán)節(jié),如電平移動電路、過載保護電路以及高頻補償環(huán)節(jié)等。</p><p>  + 差分 電壓放大級

38、 輸出級 </p><p>  Vid - 輸入級 </p><p><b>  偏置電流</b></p><p>  圖 6 集成電路運算放大器內(nèi)部組成原理框圖</p><p>  運算放大器分為通用型和專用型集成電路運算

39、放大器,741型集成運算放大器即為通用型,其電路主要包括偏置電路(24個BJT、10個電阻和一個電容組成)、輸入級、中間級和輸出級四個部分,整個電路要求當(dāng)輸入信號為零時輸出也為零。放大器主要參數(shù)的設(shè)置不管是哪種類型都極其重要,直接影響到電路的實際功能。</p><p>  集成電路運算放大器在近幾年得到迅速發(fā)展,除了具有高電壓增益的通用型外,還具有性能更優(yōu)良和具有特殊功能的集成運放,可分為高輸入阻抗、低漂移、高精

40、度、帶寬、低功耗、高壓、大功率和程控型等專用型集成運算放大。</p><p>  題中用到的LF353放大器屬于用型集成運算放大,該運算放大器內(nèi)部有偏移電壓和FET輸入裝置(雙向場效應(yīng)管),有較大的反向擊穿電壓,因此,當(dāng)大差動輸入電壓時,可以很容易容納增加的輸入電流。</p><p>  圖7 典型接法            圖8 內(nèi)部結(jié)構(gòu)   </p><p>&

41、lt;b>  顯示模塊 </b></p><p>  2.4.1 1602ALCD 與單片機的接法</p><p>  單片機與1602ALCD的連接如圖9所示</p><p>  圖9 單片機與LCD接法</p><p>  1602ALCD采用標(biāo)準(zhǔn)的16腳接口,本設(shè)計具體接法如下: </p><p&

42、gt;  第1腳:VSS為地電源(圖中未畫出)。 </p><p>  第2腳:VDD接5V正電源(圖中未畫出)。</p><p>  第3腳:V0為液晶顯示器對比度調(diào)整端,接正電源時對比度最弱,接地電源時對比度最高,對比度過高時會產(chǎn)生“鬼影”,本設(shè)計使用時通過一個10K的電位器調(diào)整其對比度(圖中未畫出)。</p><p>  第4腳:RS為寄存器選擇

43、,高電平時選擇數(shù)據(jù)寄存器、低電平時選擇指令寄存器。</p><p>  第5腳:RW為讀寫信號線,高電平時進行讀操作,低電平時進行寫操作。當(dāng)RS和RW共同為低電平時可以寫入指令或者顯示地址,當(dāng)RS為低電平RW為高電平時可以讀忙信號,當(dāng)RS為高電平RW為低電平時可以寫入數(shù)據(jù)。</p><p>  第6腳:E端為使能端,當(dāng)E端由高電平跳變成低電平時,液晶模塊執(zhí)行命令。 </p>

44、<p>  第7~14腳:D0~D7為8位雙向數(shù)據(jù)線。 </p><p>  第15~16腳:空腳(圖中未畫出)。</p><p>  由于STC89C52單片機的P0口內(nèi)部沒有上拉電阻故在單片機與1602ALCD之間需加上上拉電阻(圖中未標(biāo)出)。</p><p>  2.4.2 1602ALCD基本技術(shù): </p><p

45、>  1602液晶模塊內(nèi)部的字符發(fā)生存儲器(CGROM)已經(jīng)存儲了160個不同的點陣字符圖形,如表1所示,這些字符有:阿拉伯?dāng)?shù)字、英文字母的大小寫、常用的符號、和日文假名等,每一個字符都有一個固定的代碼,比如大寫的英文字母“A”的代碼是01000001B(41H),顯示時模塊把地址41H中的點陣字符圖形顯示出來,我們就能看到字母“A”</p><p>  1602液晶模塊內(nèi)部的控制器共有11條控制指令,如下

46、表所示, </p><p>  它的讀寫操作、屏幕和光標(biāo)的操作都是通過指令編程來實現(xiàn)的。(說明:1為高電平、0為低電平) </p><p>  指令1:清顯示,指令碼01H,光標(biāo)復(fù)位到地址00H位置。</p><p>  指令2:光標(biāo)復(fù)位,光標(biāo)返回到地址00H。</p><p>  指令3:光標(biāo)和顯示模式設(shè)置 I/D:光標(biāo)移動方向,高電平右移

47、,低電平左移 S:屏幕上所有文字是否左移或者右移。高電平表示有效,低電平則無效。 </p><p>  指令4:顯示開關(guān)控制。 D:控制整體顯示的開與關(guān),高電平表示開顯示,低電平表示關(guān)顯示 C:控制光標(biāo)的開與關(guān),高電平表示有光標(biāo),低電平表示無光標(biāo) B:控制光標(biāo)是否閃爍,高電平閃爍,低電平不閃爍。 </p><p>  指令5:光標(biāo)或顯示移位 S/C:高電平時移動顯示的文字,低電平時移動光標(biāo)

48、。 </p><p>  指令6:功能設(shè)置命令 DL:高電平時為4位總線,低電平時為8位總線 N:低電平時為單行顯示,高電平時雙行顯示 F: 低電平時顯示5x7的點陣字符,高電平時顯示5x10的點陣字符。 </p><p>  指令7:字符發(fā)生器RAM地址設(shè)置。 </p><p>  指令8:DDRAM地址設(shè)置。 </p><p>  指令9

49、:讀忙信號和光標(biāo)地址 BF:為忙標(biāo)志位,高電平表示忙,此時模塊不能接收命令或者數(shù)據(jù),如果為低電平表示不忙。 </p><p><b>  指令10:寫數(shù)據(jù) </b></p><p><b>  指令11:讀數(shù)據(jù) </b></p><p>  液晶顯示模塊是一個慢顯示器件,所以在執(zhí)行每條指令之前一定要確認模塊的忙標(biāo)志為低電平

50、,表示不忙,否則此指令失效。要顯示字符時要先輸入顯示字符地址,也就是告訴模塊在哪里顯示字符,下表是DM-162的內(nèi)部顯示地址. </p><p>  比如第二行第一個字符的地址是40H,那么是否直接寫入40H就可以將光標(biāo)定位在第二行第一個字符的位置呢?這樣不行,因為寫入顯示地址時要求最高位D7恒定為高電平1所以實際寫入的數(shù)據(jù)應(yīng)該是01000000B(40H)+10000000B(80H)=11000000B(C0

51、H) </p><p>  3 Altium designer原理圖</p><p>  3.1 整形放大部分</p><p>  3.2單片機及1602部分</p><p>  4 Altium designer PCB布線</p><p>  5 Proteus仿真</p><p><

52、;b>  6 軟件流程圖</b></p><p>  圖10系統(tǒng)工作流程圖</p><p>  6.1.1 T0的1s定時</p><p>  本次設(shè)計選用定時器T0完成定時功能,選用方式1,采用T0定時50 ,連續(xù)循環(huán)定時20次即可完成1 定時,用一個計數(shù)單元存放循環(huán)的次數(shù),每一次循環(huán)單元自加1,當(dāng)加到20次時則1S 定時到時。其程序流程圖如圖1

53、1所示。</p><p>  6.1.2 T1的計數(shù)原理</p><p>  設(shè)計中T1采用計數(shù)功能,需要注意的一個問題是,輸入的待測時鐘信號的頻率最高可以達到460800Hz,但本設(shè)計的最高頻率為計數(shù)器的最多計數(shù)65536次,顯然當(dāng)所輸入的頻率大于65536Hz的時候?qū)o法顯示,所以每當(dāng)計數(shù)器T1溢出回零時產(chǎn)生中斷,中斷程序執(zhí)行顯示提示錯誤信息顯示為00000Hz。其程序流程圖如圖12所

54、示。</p><p>  圖11 圖12</p><p>  6.2 軟件工作原理</p><p>  將整形后的波形送至單片機的T1計數(shù)器輸入口,打開定時器0,初始化定時器0,將單片機的內(nèi)部定時器T0定時為1S,此時T1輸入口在1s內(nèi)所計數(shù)到的脈沖個數(shù)即為該信號的頻率。將該計數(shù)脈沖個數(shù)經(jīng)單

55、片機處理送至LCD顯示。</p><p>  6.3 軟件處理方法 </p><p>  本頻率計的設(shè)計以 STC89C52 單片機為核心 ,利用它內(nèi)部的定時/ 計數(shù)器完成待測信號頻率的測量 。單片機 STC89C52 內(nèi)部具有 2 個 16 位定時/計數(shù)器 ,定時/ 計數(shù)器的工作可以由編程來實現(xiàn)定時 、計數(shù)和產(chǎn)生計數(shù)溢出中斷要求的功能 。在構(gòu)成為定時器時 ,每個機器周期加 1 (使用 1

56、2M Hz 時鐘時 ,每 1us 加 1) ,這樣以機器周期為基準(zhǔn)可以用來準(zhǔn)確定時1S。在構(gòu)成為計數(shù)器時 ,在相應(yīng)的外部引腳發(fā)生從 1 到 0 的跳變時計數(shù)器加 1 ,這樣在計數(shù)閘門的控制下可以用來測量待測信號的頻率 。外部輸入每個機器周期被采樣一次 ,這樣檢測一次從1 到 0 的跳變至少需要 2 個機器周期 (24 個振蕩周期) ,所以最大計數(shù)速率為時鐘頻率的 1/ 24 。定時/計數(shù)器的工作由相應(yīng)的運行控制位 TR 控制 ,當(dāng) TR

57、置 1 ,定時/ 計數(shù)器開始計數(shù) ;當(dāng) TR 清 0 ,停止計數(shù) 。</p><p><b>  7 實驗結(jié)果與分析</b></p><p>  通過前一部分的整形放大可以將正弦波,方波,矩形波變換成相同頻率的矩形波,方便單片機進行測量,在示波器上觀察,頻率基本不變。經(jīng)過單片機的測量,再在LCD上顯示,誤差也比較小??梢詼y量的范圍是0~70K,雖然程序設(shè)置是可以超過1

58、00K,但在實際中有差別,并且錯誤地進行了10分頻。在整形放大部分頻率與輸入頻率相差無幾,但是在顯示的過程中,進行了十分頻,所以應(yīng)該是程序的顯示部分有問題,但是在檢查的過程中沒有發(fā)現(xiàn)錯誤。</p><p><b>  8 元器件清單</b></p><p><b>  結(jié) 束 語</b></p><p>  通過本次課程設(shè)

59、計,雖然結(jié)果并不十分理想,但是也學(xué)到了很多東西。不僅加深了對理論知識的理解,尤其是對單片機基礎(chǔ)知識的掌握,而且也通過一次一次的實踐,提高了動手操作能力,相對對第一次的制作過程,這次有了一定的提高,不僅在繪制PCB的過程,在焊接上也少了很多失誤。在設(shè)計過程中,得到了同學(xué)的大力支持和協(xié)助,在此表示衷心的感謝。</p><p><b>  參考文獻</b></p><p>

60、  [1]赫建國、劉立新、黨劍華.《基于單片機的頻率計設(shè)計》[J] .西安郵電學(xué)院學(xué)報 2003年 7月 第8卷 第3期</p><p>  [2] 曲云霞、郭蘭申、李向東《基于單片機的頻率計數(shù)器的設(shè)計》 [J] .河北工業(yè)大學(xué)學(xué)報 1999年 12月 第28卷 第6期</p><p>  [3]史軍、雷正紅.《數(shù)字頻率計的設(shè)計》[J] .河西學(xué)院學(xué)報 2005年05期</p&g

61、t;<p>  [4] 馬場清太郎 譯者:何希才.《運算放大器應(yīng)用電路設(shè)計》[M].科學(xué)出版社.2007年4月</p><p>  [5] 龔運新.《單片機C語言開發(fā)技術(shù)》[M].清華大學(xué)出版社.2006年10月</p><p>  [6]鄒道生、李銘、楊漢祥.《多功能數(shù)字頻率計的設(shè)計》[J] . 贛南師范學(xué)院學(xué)報 2004年03期</p><p>&

62、lt;b>  附錄程序:</b></p><p>  #include <reg51.h></p><p>  #define SEG P0</p><p>  sbit PB0=P2^0;</p><p>  sbit RS=P1^0;</p><p>  sbit RW=P1^1;&l

63、t;/p><p>  sbit E=P1^2;</p><p>  char AA[]="freq:";</p><p>  char BB[]="HZ";</p><p>  char CC[8];</p><p>  char disp[5];</p><p&

64、gt;  #define count_M1 50000</p><p>  #define H_0 (65636-count_M1)/256</p><p>  #define L_0 (65636-count_M1)%256</p><p>  char times=0,num=0;</p><p>  int b,c,m,a=0;<

65、/p><p>  char scan=1;</p><p>  unsigned long int freq=0;</p><p>  void delay(int);</p><p>  void measure(void);</p><p>  void display(void);</p><p&

66、gt;  void init();</p><p>  void wr_inst(char);</p><p>  void wr_char(char);</p><p>  void sj();</p><p>  void xs();</p><p><b>  main()</b></

67、p><p><b>  {init(); </b></p><p><b>  while(1)</b></p><p><b>  { </b></p><p>  measure();</p><p>  sj();xs();</p>&l

68、t;p>  wr_inst(0x80);</p><p>  for(m=0;m<8;m++)</p><p>  {wr_char(CC[m]);}</p><p>  display();}</p><p><b>  }</b></p><p>  void measure(vo

69、id)</p><p><b>  { </b></p><p><b>  IE=0x8a;</b></p><p>  TMOD=0x51;</p><p>  TH0=H_0;TL0=L_0;</p><p>  TH1=0;TL1=0;</p><

70、p>  TR0=1;TR1=1;</p><p><b>  }</b></p><p>  void T0_1S(void)interrupt 1</p><p>  { TH0=H_0;TL0=L_0;</p><p><b>  times++;</b></p><p

71、>  if(times==20)</p><p>  { times=0;</p><p>  TR1=0;TR0=0;</p><p>  freq=num*65536+TH1*256+TL1;</p><p>  disp[0]=freq/10000+0x30;</p><p>  disp[1]=freq/

72、1000%10+0x30;</p><p>  disp[2]=freq/100%10+0x30;</p><p>  disp[3]=freq/10%10+0x30;</p><p>  disp[4]=freq%10+0x30;</p><p><b>  }</b></p><p><

73、b>  }</b></p><p>  void Tcount_1(void)interrupt 3</p><p><b>  {</b></p><p>  TH1=0;TL1=0;</p><p><b>  num++;</b></p><p>&l

74、t;b>  }</b></p><p>  void display(void)</p><p>  { char i,j,l; </p><p>  wr_inst(0xc0);</p><p>  for(j=0;j<5;j++){wr_char(AA[j]);}</p><p>  f

75、or(i=0;i<5;i++){ wr_char(disp[i]);}</p><p>  for(l=0;l<2;l++){wr_char(BB[l]);} </p><p><b>  }</b></p><p>  void init(void)</p><p>  { wr_inst(0x30);

76、</p><p>  wr_inst(0x30);</p><p>  wr_inst(0x30);</p><p>  wr_inst(0x38);</p><p>  wr_inst(0x08);</p><p>  wr_inst(0x01);</p><p>  wr_inst(0x06

77、);</p><p>  wr_inst(0x0c);}</p><p>  void wr_inst(char inst)</p><p>  { P0=inst;</p><p>  RS=0;RW=0;E=1;delay(2);E=0;}</p><p>  void wr_char(char chardata)

78、</p><p>  { P0=chardata;</p><p>  RS=1;RW=0;E=1;delay(2);E=0;}</p><p><b>  void sj()</b></p><p>  { a++;delay(900);</p><p>  if(a==60){a=0;b++;

79、}</p><p>  if(b==60){b=0;c++;}</p><p>  if(c==24){a=b=c=0;} </p><p><b>  }</b></p><p>  void xs(){CC[7]=a%10+0x30;</p><p>  CC[6]=a/10+0x30;&

80、lt;/p><p>  CC[5]=':';</p><p>  CC[4]=b%10+0x30;</p><p>  CC[3]=b/10+0x30;</p><p>  CC[2]=':';</p><p>  CC[1]=c%10+0x30;</p><p> 

81、 CC[0]=c/10+0x30;}</p><p>  void delay(int x)</p><p>  { int i,j;</p><p>  for(i=0;i<x;i++)</p><p>  for(j=0;j<120;j++);</p><p><b>  }</b>

溫馨提示

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

評論

0/150

提交評論