【正文】
dataDisplay()。 T0count =0。 while(timecount==250) {TR0=0。}//******************************************************////*********定時(shí)中斷服務(wù)程序1**********//void t1(void) interrupt 3 using 0{TH1=(655364000)/256。kt。P2=dispbit[dispcount]。i++){ dispbuf[i]=temp[i]。 i++。i++){temp[i]=0。EA=1。TR1=1。 TH0=0。 unsigned long x,freq。void dataDisplay()。 unsigned char T0count。//********數(shù)碼管段代碼表(P0口,共陰且高位接dp,低位接a筆段)**********// unsigned char code dispcode[]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07, 0x7F}。他們一直在鼓勵(lì)我,讓我充滿信心地迎接每一個(gè)問題。經(jīng)過一段時(shí)間,終于在指導(dǎo)老師的幫助下完成了畢業(yè)設(shè)計(jì),對(duì)自己的能力有了很大的提升。測(cè)試結(jié)果:電路導(dǎo)通,LED燈顯示所測(cè)量的信號(hào)頻率,測(cè)量范圍:10HZ10KHZ。通過Keil uvision2逐步運(yùn)行程序的功能可以檢測(cè)出程序的錯(cuò)漏從而進(jìn)行改正。要選擇適當(dāng)?shù)娜龢O管,以免避免發(fā)生截止失真和飽和失真。當(dāng)定時(shí)達(dá)到1S時(shí),停止T0,T1。圖42 T1中斷流程圖T0中斷流程圖如圖42所示。當(dāng)計(jì)數(shù)脈沖發(fā)生負(fù)跳變時(shí),這就是所謂計(jì)數(shù)工作方式。方式0是13位計(jì)數(shù)結(jié)構(gòu)的工作方式[15],其計(jì)數(shù)器由TH0高8位和TL0的低五位構(gòu)成。當(dāng)89C51內(nèi)部的定時(shí)器/計(jì)數(shù)器被選擇為定時(shí)器工作方式時(shí),計(jì)數(shù)輸入信號(hào)是內(nèi)部時(shí)鐘脈沖,每個(gè)機(jī)器周期產(chǎn)生一個(gè)脈沖使計(jì)數(shù)器增1。每一個(gè)中斷源都有一個(gè)中斷申請(qǐng)標(biāo)志位,但是串行口占有兩個(gè)中斷標(biāo)志位。(3)中斷允許控制寄存器(IE)[12]EA——中斷允許總控制位ET0和ET1——定時(shí)/計(jì)數(shù)中斷定時(shí)器/計(jì)數(shù)器提供給用戶使用的有:8位計(jì)數(shù)器TH和TL,以及有關(guān)的控制位?,F(xiàn)對(duì)其定時(shí)功能加以介紹。在單片機(jī)中,中斷技術(shù)主要用于實(shí)時(shí)控制。在通常情況下,單片機(jī)執(zhí)行主程序,只有當(dāng)正常狀態(tài)出現(xiàn)故障,或發(fā)出中斷請(qǐng)求時(shí),單片機(jī)才暫停執(zhí)行主程序,轉(zhuǎn)去執(zhí)行或處理中斷服務(wù)程序,執(zhí)行完中斷服務(wù)程序后,再返回到主程序繼續(xù)運(yùn)行。得出的頻率放到RRR3三個(gè)寄存器后調(diào)用轉(zhuǎn)換BCD代碼模塊。在測(cè)周期過程中,會(huì)發(fā)生定時(shí)器T0的中斷,每發(fā)生一次中斷則將R0寄存器加一,因此R0實(shí)際上是周期值的高字節(jié)。待測(cè)信號(hào)經(jīng)預(yù)處理電路分頻后變成較寬的方波信號(hào),為單片機(jī)測(cè)信號(hào)頻率提供有效的輸入信號(hào)。計(jì)數(shù)閘門由軟件延時(shí)程序?qū)崿F(xiàn),從計(jì)數(shù)閘門的最小值開始,也就是從測(cè)量頻率的高量程開始。5V電源電路如圖314所示。圖312 二十進(jìn)制異步加法計(jì)數(shù)器本設(shè)計(jì)中因?yàn)橐獙?duì)信號(hào)進(jìn)行20分頻,所以要使用兩塊74LS290進(jìn)行級(jí)聯(lián)。Q0 為二分頻輸出,Q1~Q3 為五分頻輸出。應(yīng)將/CP1 與 Q0 連接,計(jì)數(shù)脈沖由/CP0 輸入。異步清零端 MR1,MR2 為高電平時(shí),只要置9端 MS1,MS2有一個(gè)為低電平,就可以完成清零功能。74LS290引腳圖如圖39所示。如果是共陽(yáng)LED顯示器,公共陽(yáng)極接高電平,顯示“P”字符的字形代碼應(yīng)為10001100(8CH)。圖36 數(shù)碼管引腳圖共陰和共陽(yáng)結(jié)構(gòu)的LED顯示器各筆劃段名和安排位置是相同的。使用時(shí)公共陽(yáng)極接+5V,這樣,陰極端輸入低電平的段的發(fā)光二極管被點(diǎn)亮,相應(yīng)的段被顯示;而輸入高電平的段則不點(diǎn)亮。這種顯示塊有共陽(yáng)極和共陰極兩種。這樣處理以后信號(hào)變成方波信號(hào),以便后續(xù)的電路進(jìn)行計(jì)數(shù)。但復(fù)位不影響單片機(jī)內(nèi)部的RAM狀態(tài)7414是六反相施密特觸發(fā)器集成電路,其基本作用就是反相器,一般用于信號(hào)輸入電路,用施密特觸發(fā)器對(duì)輸入信號(hào)進(jìn)行波形整形。在復(fù)位有效期間,ALE、 引腳輸出高電平。電容的大小范圍為20pF~40pF,本設(shè)計(jì)選用30pF電容。89C51引腳圖如圖32所示。圖31為數(shù)字頻率計(jì)方案框圖?;谏鲜霰容^,所以選擇了方案一第三章 數(shù)字頻率計(jì)的硬件系統(tǒng)設(shè)計(jì) 數(shù)字頻率計(jì)的硬件系統(tǒng)框架數(shù)字頻率計(jì)是一個(gè)將被測(cè)頻率顯示出來的計(jì)數(shù)裝置,它主要由單片機(jī)89C51控制、740LED顯示器、電源等組成。邏輯控制電路的作用有兩個(gè):一是產(chǎn)生鎖存脈沖,是顯示器上的數(shù)字穩(wěn)定;二是產(chǎn)生清零脈沖,使計(jì)數(shù)器每次測(cè)量從零開始計(jì)數(shù)。編寫相應(yīng)的程序可以使單片機(jī)自動(dòng)調(diào)節(jié)測(cè)量的量程,并把測(cè)出的頻率數(shù)據(jù)送到顯示電路顯示。第二章 數(shù)字頻率計(jì)總體方案設(shè)計(jì)方案一:本方案主要以單片機(jī)為核心,利用單片機(jī)的計(jì)數(shù)定時(shí)功能來實(shí)現(xiàn)頻率的計(jì)數(shù)并且利用單片機(jī)的動(dòng)態(tài)掃描法把測(cè)出的數(shù)據(jù)送到數(shù)字顯示電路顯示。單片機(jī)控制的數(shù)字頻率計(jì):10Hz~10KHz。數(shù)字頻率計(jì)是用數(shù)字顯示被測(cè)信號(hào)頻率的儀器,被測(cè)信號(hào)可以是正弦波,方波或其它周期性變化的信號(hào)。通常情況下計(jì)算每秒內(nèi)待測(cè)信號(hào)的脈沖個(gè)數(shù),此時(shí)我們稱閘門時(shí)間為1秒。單片機(jī)的潛力越來越被人們所重視。按功能分類,測(cè)量某種單一功能的計(jì)數(shù)器。[關(guān)鍵詞]單片機(jī),運(yùn)算,頻率計(jì),LED數(shù)碼管AbstractThe program mainly microcontroller as the core, are divided into timebase circuit, the logic control circuit, amplifier shaping circuit, the gate circuit, the counting circuit, latch circuit, decoding circuit most of the seven shows, design a microcontroller as the core, the measured signal the first amplifier to amplify the ining signal, and then was sent to the waveform shaping circuit surgery, the measured sine wave or triangle wave shaping as a square wave. Counter and timer microchip features of the signal count. Write the corresp