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

下載本文檔

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

文檔簡(jiǎn)介

1、賀 州 學(xué) 院學(xué)生課程設(shè)計(jì)課程名稱 單片機(jī)課程設(shè)計(jì) 授課學(xué)期 2010 學(xué)年至 2011 學(xué)年 第 2 學(xué)期系 部 物理與電子信息工程系專 業(yè) 通信工程 學(xué)號(hào) 姓名 任課教師 交稿日期 2011.6.14 成績(jī) 閱讀教師簽名 日 期 基于單片機(jī)數(shù)字頻率計(jì)摘 要本方案以單片機(jī)為核心,被測(cè)信號(hào)先進(jìn)入信號(hào)放大電路進(jìn)行放大,再被送到波形整形電路整形為方波。利用單片機(jī)的計(jì)數(shù)器和定時(shí)器的功能對(duì)被測(cè)信號(hào)進(jìn)行計(jì)數(shù)。編寫相應(yīng)的程序可以使單片機(jī)自動(dòng)調(diào)節(jié)測(cè)量的量程,并把測(cè)出的頻率數(shù)據(jù)送到顯示電路顯示。本設(shè)計(jì)以at89s52單片機(jī)為核心,應(yīng)用單片機(jī)的算術(shù)運(yùn)算和控制功能并采用lcd液晶顯示屏將所測(cè)頻率顯示出來(lái)。系統(tǒng)簡(jiǎn)單

2、可靠、操作簡(jiǎn)易,能基本滿足一般情況下的需要。既保證了系統(tǒng)的測(cè)頻精度,又使系統(tǒng)具有較好的實(shí)時(shí)性。本頻率計(jì)設(shè)計(jì)簡(jiǎn)潔,便于攜帶,擴(kuò)展能力強(qiáng),適用范圍廣。關(guān)鍵詞:?jiǎn)纹瑱C(jī),at89s52,頻率計(jì),lcd液晶顯示屏abstractthis project is to the single-chip-micro controller as the centre.the measured signal firstly entried into the amplifier circuit to be amplified,then to be sent to waveform plastic circuit to

3、 be plasticed as square wave.make use of the performance of counter and timer of the single-chip-micro controller to count the measured signal.make corresponding program can make the single-chip-micro controller automatic adjust the range that counted.and send the counted frequency data to the show

4、circuit to show.this design is to the single-chip-micro controller of at89s52 as the centre.put the arithmatic operation and the control function of the single-chip-micro controller and use the lcd(liquid crystal display) to show the measured frequency.not only guaranteed the accuracy of the measure

5、d frequency but also make the system have a good real-time.this design of the frequency meter designed simple,easy-take,wide expand ability and widely aplication range.key words: single-chip-micro controller; at89s52;frequency meter; lcd(liquid crystal display) 目 錄abstract11方案設(shè)計(jì)31.1功能要求31.2方案論證31.2.

6、1方案比較31.2.2方案論證41.2.3方案選擇42 硬件設(shè)計(jì)42.1 數(shù)字頻率計(jì)的硬件系統(tǒng)框架42.2 數(shù)字頻率的單元電路設(shè)計(jì)52.2.1 at89s52芯片介紹52.2.2 頻率輸入端口72.2.3 時(shí)鐘電路72.2.4 復(fù)位電路82.2.5 液晶屏的顯示(lcd1602)92.2.6 電源的輸入93 軟件設(shè)計(jì)103.1 軟件設(shè)計(jì)規(guī)劃103.1.1 信號(hào)處理103.1.2 定時(shí)器/計(jì)數(shù)器103.2 程序流程圖設(shè)計(jì)114 系統(tǒng)測(cè)試124.1調(diào)試所用的基本儀器清單124.2調(diào)試結(jié)果124.3測(cè)試結(jié)果分析125 總結(jié)12參考文獻(xiàn)13附 錄141 前 言用單片機(jī)和數(shù)字電路設(shè)計(jì)的頻率計(jì)以讀數(shù)直觀、

7、數(shù)字準(zhǔn)確、功耗低、體積小、質(zhì)量輕、信號(hào)穩(wěn)定的優(yōu)點(diǎn),解決了現(xiàn)有技術(shù)中各種數(shù)字儀表由外加干電池供電,不能連續(xù)在電路中工作的問(wèn)題,被電子工程人員廣泛應(yīng)用,并有著廣闊的發(fā)展前景。頻率計(jì)的基本原理是用一個(gè)頻率穩(wěn)定度高的頻率源作為基準(zhǔn)時(shí)鐘,對(duì)比測(cè)量其他信號(hào)的頻率。通常情況下計(jì)算每秒內(nèi)待測(cè)信號(hào)的脈沖個(gè)數(shù),此時(shí)我們稱閘門時(shí)間為1秒。閘門時(shí)間也可以大于或小于一秒。閘門時(shí)間越長(zhǎng),得到的頻率值就越準(zhǔn)確,但閘門時(shí)間越長(zhǎng)則每測(cè)一次頻率的間隔就越長(zhǎng)。閘門時(shí)間越短,測(cè)的頻率值刷新就越快,但測(cè)得的頻率精度就受影響。2 方案設(shè)計(jì)2.1功能要求(1)能測(cè)量10hz500khz的方波。(2)利用數(shù)碼管或者液晶顯示器顯示頻率。2.2

8、方案論證2.2.1方案比較方案一:本方案主要以單片機(jī)為核心,利用單片機(jī)的計(jì)數(shù)定時(shí)功能來(lái)實(shí)現(xiàn)頻率的計(jì)數(shù)并且利用單片機(jī)的動(dòng)態(tài)掃描法把測(cè)出的數(shù)據(jù)送到數(shù)字顯示電路顯示。其原理框圖如圖1-1所示:信號(hào)放大電路信號(hào)整形單片機(jī)at89c51電路數(shù)字顯示 電路圖1-1 方案一原理框圖方案二:本方案主要以數(shù)字器件為核心,主要分為時(shí)基電路,邏輯控制電路,放大整形電路,閘門電路,計(jì)數(shù)電路,鎖存電路,譯碼顯示電路七大部分。其原理框圖如圖1-2所示:邏輯控制電路時(shí)基電路放大整形電路閘門電路計(jì)數(shù)器鎖存器譯碼顯示器圖1-2 方案二原理框圖2.2.2方案論證方案一:本方案主要以單片機(jī)為核心,被測(cè)信號(hào)先進(jìn)入信號(hào)放大電路進(jìn)行放大

9、,再被送到波形整形電路整形,把被測(cè)的正弦波或者三角波整形為方波。利用單片機(jī)的計(jì)數(shù)器和定時(shí)器的功能對(duì)被測(cè)信號(hào)進(jìn)行計(jì)數(shù)。編寫相應(yīng)的程序可以使單片機(jī)自動(dòng)調(diào)節(jié)測(cè)量的量程,并把測(cè)出的頻率數(shù)據(jù)送到顯示電路顯示。方案二:本方案使用大量的數(shù)字器件,被測(cè)信號(hào)經(jīng)放大整形電路變成計(jì)數(shù)器所要求的脈沖信號(hào),其頻率與被側(cè)信號(hào)的頻率相同。同時(shí)時(shí)基電路提供標(biāo)準(zhǔn)時(shí)間基準(zhǔn)信號(hào),其高電平持續(xù)時(shí)間1s,當(dāng)1s信號(hào)來(lái)到時(shí),閘門開通,被測(cè)脈沖信號(hào)通過(guò)閘門,計(jì)數(shù)器開始計(jì)數(shù),直到1s信號(hào)結(jié)束閘門關(guān)閉,停止計(jì)數(shù)。若在閘門時(shí)間1s內(nèi)計(jì)數(shù)器計(jì)得的脈沖個(gè)數(shù)為n,則被測(cè)信號(hào)頻率fx = nhz。邏輯控制電路的作用有兩個(gè):一是產(chǎn)生鎖存脈沖,是顯示器上的

10、數(shù)字穩(wěn)定;二是產(chǎn)生清零脈沖,使計(jì)數(shù)器每次測(cè)量從零開始計(jì)數(shù)。2.2.3方案選擇比較以上兩種方案可以知道,方案一的核心是單片機(jī),使用的元器件少,原理電路簡(jiǎn)單,調(diào)試簡(jiǎn)單只要改變程序的設(shè)定值則可以實(shí)現(xiàn)不同頻率范圍的測(cè)試能自動(dòng)選擇測(cè)試的量程。與方案一相比較方案二則使用了大量的數(shù)字元器件,原理電路復(fù)雜,硬件調(diào)試麻煩。如要測(cè)量高頻的信號(hào)還需要加上分頻電路,價(jià)格相對(duì)高了點(diǎn)?;谏鲜霰容^,所以選擇了方案一。3 軟件設(shè)計(jì)3.1 軟件設(shè)計(jì)規(guī)劃數(shù)字頻率計(jì)是一個(gè)將被測(cè)頻率顯示出來(lái)的計(jì)數(shù)裝置,它主要由單片機(jī)89c52控制、復(fù)位電路、晶振、lcd液晶顯示屏、電源等組成。該系統(tǒng)的功能是將信號(hào)輸入p3.4口,通過(guò)單片機(jī)程序控制

11、,對(duì)lcd顯示器進(jìn)行控制,實(shí)現(xiàn)動(dòng)態(tài)顯示。數(shù)字頻率計(jì)是計(jì)算機(jī)、通訊設(shè)備、音頻視頻等科研生產(chǎn)領(lǐng)域不可缺少的測(cè)量?jī)x器。在進(jìn)行有關(guān)電子技術(shù)的設(shè)計(jì)、安裝、調(diào)試過(guò)程中,由于其使用十進(jìn)制數(shù)顯示,測(cè)量迅速,精確度高,顯示直觀,會(huì)被經(jīng)常使用到。圖2-1為數(shù)字頻率計(jì)方案框圖。圖2-1 頻率計(jì)的系統(tǒng)框圖3.2 數(shù)字頻率的單元電路設(shè)計(jì)3.2.1 at89s52芯片介紹at89s52是一個(gè)低功耗,高性能coms8位微控制器,片內(nèi)含8k bytes的可反復(fù)插寫的flash存儲(chǔ)器,片上flash允許程序存儲(chǔ)器在系統(tǒng)可編程。在單芯片上擁有靈活的8位cpu和在系統(tǒng)可編程flash,使得at89s52為眾多嵌入式控制應(yīng)用系統(tǒng)提高

12、靈活、超有效的解決方案。at89s52具有以下標(biāo)準(zhǔn)功能:8k字節(jié)flash,256字節(jié)ram,32位i/o口線,看門狗定時(shí)器,2個(gè)數(shù)據(jù)指針,三個(gè)16位定時(shí)器/計(jì)數(shù)器、串口、中斷繼續(xù)工作。掉電保護(hù)方式下,ram內(nèi)容被保存,振蕩器被凍結(jié),單片機(jī)一切工作停止,直到下一個(gè)中斷或硬件復(fù)位為止。at89s52引腳圖如圖2-2所示。圖2-2 at89s52引腳圖芯片引腳功能:p0 口:p0口是一個(gè)8位漏極開路的雙向i/o口。作為輸出口,每位能驅(qū)動(dòng)8個(gè)ttl邏 輯電平。對(duì)p0端口寫“1”時(shí),引腳用作高阻抗輸入。 當(dāng)訪問(wèn)外部程序和數(shù)據(jù)存儲(chǔ)器時(shí),p0口也被作為低8位地址/數(shù)據(jù)復(fù)用。在這種模式下, p0不具有內(nèi)部上

13、拉電阻。 在flash編程時(shí),p0口也用來(lái)接收指令字節(jié);在程序校驗(yàn)時(shí),輸出指令字節(jié)。程序校驗(yàn) 時(shí),需要外部上拉電阻。 p1 口:p1 口是一個(gè)具有內(nèi)部上拉電阻的8 位雙向i/o 口,p1 輸出緩沖器能驅(qū)動(dòng)4 個(gè) ttl 邏輯電平。對(duì)p1 端口寫“1”時(shí),內(nèi)部上拉電阻把端口拉高,此時(shí)可以作為輸入 口使用。作為輸入使用時(shí),被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(iil)。 此外,p1.0和p1.1分別作定時(shí)器/計(jì)數(shù)器2的外部計(jì)數(shù)輸入(p1.0/t2)和定時(shí)器/計(jì)數(shù)器2 的觸發(fā)輸入(p1.1/t2ex)。 在flash編程和校驗(yàn)時(shí),p1口接收低8位地址字節(jié)。 引腳號(hào)第二功能: p1.0 t2

14、(定時(shí)器/計(jì)數(shù)器t2的外部計(jì)數(shù)輸入),時(shí)鐘輸出 p1.1 t2ex(定時(shí)器/計(jì)數(shù)器t2的捕捉/重載觸發(fā)信號(hào)和方向控制) p1.5 mosi(在系統(tǒng)編程用) p1.6 miso(在系統(tǒng)編程用) p1.7 sck(在系統(tǒng)編程用) p2 口:p2 口是一個(gè)具有內(nèi)部上拉電阻的8 位雙向i/o 口,p2 輸出緩沖器能驅(qū)動(dòng)4 個(gè) ttl 邏輯電平。對(duì)p2 端口寫“1”時(shí),內(nèi)部上拉電阻把端口拉高,此時(shí)可以作為輸入 口使用。作為輸入使用時(shí),被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(iil)。 在訪問(wèn)外部程序存儲(chǔ)器或用16位地址讀取外部數(shù)據(jù)存儲(chǔ)器(例如執(zhí)行movx dptr) 時(shí),p2 口送出高八位地址。

15、在這種應(yīng)用中,p2 口使用很強(qiáng)的內(nèi)部上拉發(fā)送1。在使用 8位地址(如movx ri)訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器時(shí),p2口輸出p2鎖存器的內(nèi)容。 在flash編程和校驗(yàn)時(shí),p2口也接收高8位地址字節(jié)和一些控制信號(hào)。 p3 口:p3 口是一個(gè)具有內(nèi)部上拉電阻的8 位雙向i/o 口,p3 輸出緩沖器能驅(qū)動(dòng)4 個(gè) ttl 邏輯電平。對(duì)p3 端口寫“1”時(shí),內(nèi)部上拉電阻把端口拉高,此時(shí)可以作為輸入 口使用。作為輸入使用時(shí),被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(iil)。 p3口亦作為at89s52特殊功能(第二功能)使用,如下表所示。 在flash編程和校驗(yàn)時(shí),p3口也接收一些控制信號(hào)。 端口引腳 第

16、二功能: p3.0 rxd(串行輸入口) p3.1 txd(串行輸出口) p3.2 into(外中斷0) p3.3 int1(外中斷1) p3.4 to(定時(shí)/計(jì)數(shù)器0) p3.5 t1(定時(shí)/計(jì)數(shù)器1) p3.6 wr(外部數(shù)據(jù)存儲(chǔ)器寫選通) p3.7 rd(外部數(shù)據(jù)存儲(chǔ)器讀選通) 此外,p3口還接收一些用于flash閃存編程和程序校驗(yàn)的控制信號(hào)。 rst:復(fù)位輸入。當(dāng)振蕩器工作時(shí),rst引腳出現(xiàn)兩個(gè)機(jī)器周期以上高電平將是單片機(jī)復(fù)位。 ale/prog:當(dāng)訪問(wèn)外部程序存儲(chǔ)器或數(shù)據(jù)存儲(chǔ)器時(shí),ale(地址鎖存允許)輸出脈沖用于鎖存地址的低8位字節(jié)。一般情況下,ale仍以時(shí)鐘振蕩頻率的1/6輸出固

17、定的脈沖信號(hào),因此它可對(duì)外輸出時(shí)鐘或用于定時(shí)目的。要注意的是:每當(dāng)訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器時(shí)將跳過(guò)一個(gè)ale脈沖。對(duì)flash存儲(chǔ)器編程期間,該引腳還用于輸入編程脈沖(prog)。如有必要,可通過(guò)對(duì)特殊功能寄存器(sfr)區(qū)中的8eh單元的d0位置位,可禁止ale操作。該位置位后,只有一條movx和movc指令才能將ale激活。此外,該引腳會(huì)被微弱拉高,單片機(jī)執(zhí)行外部程序時(shí),應(yīng)設(shè)置ale禁止位無(wú)效。 psen:程序儲(chǔ)存允許(psen)輸出是外部程序存儲(chǔ)器的讀選通信號(hào),當(dāng)at89s52由外部程序存儲(chǔ)器取指令(或數(shù)據(jù))時(shí),每個(gè)機(jī)器周期兩次psen有效,即輸出兩個(gè)脈沖,在此期間,當(dāng)訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器,將跳

18、過(guò)兩次psen信號(hào)。 ea/vpp:外部訪問(wèn)允許,欲使cpu僅訪問(wèn)外部程序存儲(chǔ)器(地址為0000h-ffffh),ea端必須保持低電平(接地)。需注意的是:如果加密位lb1被編程,復(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.2.2 頻率輸入端口信號(hào)發(fā)生器輸出的方波頻率從p3.4口輸入到at89s52單片機(jī),部分電路圖如圖2-3 所示。

19、圖2-3 頻率輸入圖3.2.3 時(shí)鐘電路單片機(jī)的時(shí)鐘產(chǎn)生方法有內(nèi)部時(shí)鐘和外部時(shí)鐘兩種。最常用的內(nèi)部時(shí)鐘方式是采用外接晶體和電容組成并聯(lián)諧振回路。單片機(jī)允許的振蕩晶體可在1.2-24mhz間選擇,在本設(shè)計(jì)中,我們選擇12mhz的晶振。電容c1、c2的取值對(duì)振蕩頻率輸出的穩(wěn)定性、大小及振蕩電路起振速度有一定的影響,可在20-100pf之間選擇,典型值為30pf。本設(shè)計(jì)的時(shí)鐘電路如圖2-4所示。圖2-4 時(shí)鐘電路3.2.4 復(fù)位電路計(jì)算機(jī)在啟動(dòng)時(shí)都需要復(fù)位,這樣使cpu和系統(tǒng)中的其他部件都處于一個(gè)確定的初始狀態(tài),并從這個(gè)狀態(tài)開始工作。單片機(jī)復(fù)位都靠外部電路實(shí)現(xiàn),mcs-51單片機(jī)有一個(gè)復(fù)位引腳rst

20、,高電平有效。它是施密特觸發(fā)輸入(對(duì)于cmos單片機(jī),rst引腳的內(nèi)部有一個(gè)拉低電阻),當(dāng)振蕩器起振后,該引腳上出現(xiàn)兩個(gè)機(jī)器周期(即24個(gè)時(shí)鐘周期)以上的高電平,使器件復(fù)位,只要rst保持高電平,mcs-51便保持復(fù)位狀態(tài)。此時(shí)ale,psen,p0,p1,p2,p3口都輸出高電平。rst變?yōu)榈碗娖?,退出?fù)位狀態(tài),cpu從初始狀態(tài)開始工作。復(fù)位操作不影響片內(nèi)ram的內(nèi)容,復(fù)位以后內(nèi)部寄存器的狀態(tài)如表2-1所示。表2-1 復(fù)位后內(nèi)部寄存器狀態(tài)專用寄存器復(fù)位狀態(tài)專用寄存器復(fù)位狀態(tài)pc0000htmod00hacc00htcon00hb00hth000hpsw00htl000hsp07hth100h

21、dptr0000htl100hp0p3ffhscon00hipxxx0 0000bsbufxxxx xxxxbie0xx0 0000bpcon0xxx xxxxb單片機(jī)通常采用上電自動(dòng)復(fù)位和按鈕復(fù)位兩種方式。最簡(jiǎn)單的是上電自動(dòng)復(fù)位,但由于系統(tǒng)運(yùn)行等需要,常常需要人工按鈕復(fù)位,所以本設(shè)計(jì)采用上電按鈕復(fù)位電路,如圖2-5所示,只需將一個(gè)常開按鈕并聯(lián)與上電復(fù)位電路,按下開光一定時(shí)間就能是rst引腳端為高電平,從而使單片機(jī)復(fù)位。圖2-5 按鈕復(fù)位電路3.2.5 液晶屏的顯示(lcd1602)液晶顯示屏(lcd)用于數(shù)字型鐘表和許多便攜式計(jì)算機(jī)的一種顯示器類型。lcd顯示使用了兩片極化材料,在它們之間是

22、液體水晶溶液。電流通過(guò)該液體時(shí)會(huì)使水晶重新排列,以使光線無(wú)法透過(guò)它們。在便于攜帶與搬運(yùn)為前題之下,傳統(tǒng)的顯示方式如crt映像管顯示器及l(fā)ed顯示板等等,皆受制于體積過(guò)大或耗電量甚巨等因素,無(wú)法達(dá)成使用者的實(shí)際需求。而液晶顯示技術(shù)的發(fā)展正好切合目前信息產(chǎn)品的潮流,無(wú)論是直角顯示、低耗電量、體積小、還是零輻射等優(yōu)點(diǎn),都能讓使用者享受最佳的視覺(jué)環(huán)境。本設(shè)計(jì)的液晶顯示如圖2-6所示。圖2-6 液晶顯示電路3.2.6 電源的輸入 在已有的電源基礎(chǔ)上,我們只要設(shè)計(jì)電源輸入端口,通常用開關(guān)控制電源的輸入,用一個(gè)發(fā)光二極管作為電源是否輸入的標(biāo)志,當(dāng)發(fā)光二極管亮則表示有電源輸入,電路中還必須有一個(gè)足夠大的電阻,

23、以防輸入電流過(guò)大而燒壞二極管。電源輸入圖如2-7所示。圖2-7 電源輸入圖4 軟件設(shè)計(jì)4.1 軟件設(shè)計(jì)規(guī)劃4.1.1 信號(hào)處理在頻率計(jì)開始工作,或者完成一次頻率測(cè)量,系統(tǒng)軟件都進(jìn)行測(cè)量初始化。測(cè)量初始化模塊設(shè)置堆棧指針(sp)、工作寄存器、中斷控制和定時(shí)/計(jì)數(shù)器的工作方式。定時(shí)/計(jì)數(shù)器的工作首先被設(shè)置為計(jì)數(shù)器的計(jì)數(shù)寄存器清0后,置運(yùn)行控制位tr為1,啟動(dòng)對(duì)待測(cè)信號(hào)的計(jì)數(shù)。計(jì)數(shù)閘門由軟件延時(shí)程序?qū)崿F(xiàn),從計(jì)數(shù)閘門的最小值開始,也就是從測(cè)量頻率的高量程開始。計(jì)數(shù)閘門結(jié)束時(shí)tr清0,停止計(jì)數(shù)。計(jì)數(shù)寄存器中的值通過(guò)16進(jìn)制數(shù)道10進(jìn)制數(shù)轉(zhuǎn)換程序轉(zhuǎn)換為10進(jìn)制數(shù)。對(duì)10進(jìn)制數(shù)的最高位進(jìn)行判別,若該位不為0

24、,滿足測(cè)量數(shù)據(jù)有效位數(shù)的要求,測(cè)量值和量程信息一起送到顯示模塊;若該位為0,將計(jì)數(shù)閘門的寬度擴(kuò)大10倍,重新對(duì)待測(cè)信號(hào)的技術(shù),直到滿足測(cè)量數(shù)據(jù)有效位數(shù)的要求。待測(cè)信號(hào)經(jīng)預(yù)處理電路分頻后變成較寬的方波信號(hào),并加至單片機(jī)的p3.4引腳,為單片機(jī)測(cè)信號(hào)頻率提供有效的輸入信號(hào)。單片機(jī)通過(guò)檢測(cè)p3.4引腳來(lái)判斷是否啟動(dòng)測(cè)周期程序。當(dāng)該引腳為高電平時(shí)則等待,知道該引腳出現(xiàn)低電平時(shí)才開始測(cè)周期。首先將零賦給th0、tl0兩個(gè)寄存器,將定時(shí)器t0的運(yùn)行控制位tr0置位,同時(shí)也將et0置位以允許定時(shí)器t0終端,然后再判斷p3.4引腳是否還為低電平,當(dāng)不是低電平時(shí)則等待。一旦出現(xiàn)低電平則使tr0復(fù)位以終止定時(shí)器,

25、測(cè)周期程序結(jié)束。在測(cè)周期過(guò)程中,會(huì)發(fā)生定時(shí)器t0的中斷,每發(fā)生一次中斷則將r0寄存器加一,因此r0實(shí)際上是周期值的高字節(jié)。測(cè)出的周期值存儲(chǔ)在r0、th0、tl0三個(gè)寄存器中,然后將其轉(zhuǎn)換成頻率。由于所測(cè)周期的單位是µs,再相除轉(zhuǎn)換時(shí)要將被除數(shù)擴(kuò)大10倍,這樣才能保證得出正確的頻率。得出的頻率放到r1、r2、r3三個(gè)寄存器后調(diào)用轉(zhuǎn)換bcd代碼模塊。調(diào)用顯示消除多余零和顯示數(shù)據(jù)存儲(chǔ)模塊,將要顯示的頻率值通過(guò)查表轉(zhuǎn)換成相應(yīng)數(shù)據(jù)8段碼放到現(xiàn)實(shí)緩沖區(qū)以備顯示。4.1.2 定時(shí)器/計(jì)數(shù)器(1)定時(shí)器控制寄存器(tcon)tcon寄存器既參與中斷控制又參與定時(shí)控制?,F(xiàn)對(duì)其定時(shí)功能加以介紹。其中有關(guān)

26、定時(shí)的控制位共有4位:f0和tf1計(jì)數(shù)溢出標(biāo)志位當(dāng)計(jì)數(shù)器計(jì)數(shù)溢出(計(jì)滿)時(shí),該位置“1”;使用查詢方式時(shí),此位作狀態(tài)位供查詢,但應(yīng)注意查詢有效后應(yīng)以軟件方法及時(shí)將該位清“0”;使用中斷方式時(shí),此位作中斷標(biāo)志位,在轉(zhuǎn)向中斷服務(wù)程序時(shí)由硬件自動(dòng)清“0”。r0和tr1定時(shí)器運(yùn)行控制位tro(tr1)=0停止定時(shí)器/計(jì)數(shù)器工作tro(tr1)=1啟動(dòng)定時(shí)器/計(jì)數(shù)器工作(2)工作方式控制寄存器(tmod)tmod寄存器是一個(gè)專用寄存器,用于設(shè)定兩個(gè)定時(shí)器/計(jì)數(shù)器的工作方式。但tmod寄存器不能位尋址,只能用字節(jié)傳送指令設(shè)置其內(nèi)容。(3)中斷允許控制寄存器(ie)ea中斷允許總控制位et0和et1定時(shí)/計(jì)

27、數(shù)中斷定時(shí)器/計(jì)數(shù)器提供給用戶使用的有:8位計(jì)數(shù)器th和tl,以及有關(guān)的控制位。這些內(nèi)容只能以軟件方法使用。4.2 程序流程圖設(shè)計(jì)主程序流程圖如圖3-1所示。圖3-1 主程序流程圖5 系統(tǒng)測(cè)試5.1調(diào)試所用的基本儀器清單(1)數(shù)字式或指針萬(wàn)用表; (2) 信號(hào)發(fā)生器5.2調(diào)試結(jié)果下載程序到at89s52中,輸入方波進(jìn)行調(diào)試。以下是調(diào)試結(jié)果:表4-1 測(cè)試結(jié)果及分析表實(shí)際輸入值(hz)測(cè)量值(hz)差值161514444.430.432052050940940015801579021112110010.89k10.89k015.34k15.34k020.11k20.11k0198.03k198.021k0.009105.75k105.764k-0.014249.0k249.025k-0.025352.3k352.24k0.06406.3k406.319k-0.019480.4k480.197k0.203491.5k48

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論