位.數(shù)顯頻率計(jì)數(shù)器(自動(dòng)保存的)資料_第1頁(yè)
位.數(shù)顯頻率計(jì)數(shù)器(自動(dòng)保存的)資料_第2頁(yè)
位.數(shù)顯頻率計(jì)數(shù)器(自動(dòng)保存的)資料_第3頁(yè)
位.數(shù)顯頻率計(jì)數(shù)器(自動(dòng)保存的)資料_第4頁(yè)
位.數(shù)顯頻率計(jì)數(shù)器(自動(dòng)保存的)資料_第5頁(yè)
已閱讀5頁(yè),還剩12頁(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、09700227遼軟專龍單片機(jī)原理及應(yīng)用設(shè)計(jì)說(shuō)明書3位數(shù)顯頻率計(jì)數(shù)器起止日期:2起2年12月N4日 至 2013年12月28日學(xué)生 姓 名«班級(jí) 班電信2班成績(jī)指導(dǎo)教師(簽字)電子與信息工程系2013年12月28日目錄第一章:設(shè)計(jì)背景及要求 11.1 數(shù)字頻率計(jì)數(shù)器的背景及意義 11.2 設(shè)計(jì)要求 1第二章:設(shè)計(jì)原理及總體方案 12.1 頻率計(jì)的基本原理 12.2 方案的確定 2第三章:硬件設(shè)計(jì) 33.1 主控單元 33.2 頻率采集 73.3 顯示單元 73.4 原理圖設(shè)計(jì) 8第四章:軟件設(shè)置 84.1 設(shè)計(jì)流程 84.2 程序設(shè)計(jì) 9第五章:仿真設(shè)計(jì)及結(jié)果 135.1 源程序編譯

2、及結(jié)果 135.2 原理圖繪制 135.3 3仿真結(jié)果 14第六章:總結(jié)及體會(huì) 14第一章:設(shè)計(jì)背景及要求1.1 數(shù)字頻率計(jì)數(shù)器的背景及意義在現(xiàn)代社會(huì)中,隨著電子工業(yè)的發(fā)展,能夠精確測(cè)量各種設(shè)備儀器中電路的頻率、電壓、電流等參數(shù)已越來(lái)越重要。而傳統(tǒng)的電子測(cè)量?jī)x器中,示波器在進(jìn)行頻率測(cè)量時(shí)測(cè)量精度較低,誤差較大。頻譜儀可以準(zhǔn)確的測(cè)量頻率并顯示被測(cè)信號(hào)的頻譜,但測(cè)量速度較慢,無(wú)法實(shí)時(shí)快速的跟蹤捕捉到被測(cè)信號(hào)頻率的變化。正是由于頻率計(jì)能夠快速準(zhǔn)確的捕捉到被測(cè)信號(hào)頻率的變化,因此,頻率計(jì)擁有非常廣泛的應(yīng)用范圍。在生產(chǎn)制造企業(yè)中,頻率計(jì)被廣泛的應(yīng)用在生產(chǎn)線的生產(chǎn)測(cè)試中。頻率計(jì)能夠快速的捕捉到晶體振蕩器輸

3、出頻率的變化,用戶通過(guò)使用頻率計(jì)能夠迅速的發(fā)現(xiàn)有故障的晶振產(chǎn)品,確保產(chǎn)品質(zhì)量。在計(jì)量實(shí)驗(yàn)室中,頻率計(jì)被用來(lái)對(duì)各種電子測(cè)量設(shè)備的本地振蕩器進(jìn)行校準(zhǔn)。在無(wú)線通訊測(cè)試中,頻率計(jì)既可以被用來(lái)對(duì)無(wú)線通訊基站的主時(shí)鐘進(jìn)行校準(zhǔn),還可以被用來(lái)對(duì)無(wú)線電臺(tái)的跳頻信號(hào)和頻率調(diào)制信號(hào)進(jìn)行分析。我所設(shè)計(jì)的三位數(shù)顯頻率計(jì)數(shù)器,是基于ATME公司的AT89S51單片機(jī),通過(guò)其T0與T1的定時(shí)與計(jì)數(shù)功能,來(lái)測(cè)量輸入信號(hào)的頻率,并通過(guò)六位動(dòng)態(tài)數(shù)碼管顯示出來(lái),并且盡可能使用最少的元器件,在滿足性能要求的前提下,盡量節(jié)省成本,以期最大的性價(jià)比。1.2 設(shè)計(jì)要求(1) 基于 AT89S51 單片機(jī),設(shè)計(jì)一個(gè)精確測(cè)量輸入信號(hào)頻率的頻率

4、計(jì)數(shù)器(2) 能夠精確測(cè)量頻率范圍在0Hz 250kHz 之間的輸入信號(hào)(3) 測(cè)量誤差不超過(guò)± 1Hz(4) 使用六位數(shù)碼管顯示測(cè)量結(jié)果(5) 在滿足性能的前提下,盡可能使用最少的、最廉價(jià)的元器件第二章:設(shè)計(jì)原理及總體方案2.1 頻率計(jì)的基本原理頻率計(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è)得的頻率精度就受影響。測(cè)量一個(gè)信號(hào)的頻率有

5、兩種方法:第一種是計(jì)時(shí)法,用基準(zhǔn)信號(hào)去測(cè)量被測(cè)信號(hào)的高電平持續(xù)的時(shí)間,然后轉(zhuǎn)換成被測(cè)信號(hào)的頻率。第二種是計(jì)數(shù)法,計(jì)算在基準(zhǔn)信號(hào)高電平期間通過(guò)的被測(cè)信號(hào)個(gè)數(shù)。根據(jù)設(shè)計(jì)要求測(cè)量0HZ250KHZ的正弦信號(hào),首先要將正弦信號(hào)通過(guò)過(guò)零比較轉(zhuǎn)換成方波信號(hào),然后變成測(cè)量方波信號(hào)。如果用第一種方法,當(dāng)信號(hào)頻率超過(guò)1KHZ的時(shí)候測(cè)量精度將超出測(cè)量精度要求,所以當(dāng)被測(cè)信號(hào)的頻率高于1KHZ的時(shí)候需要將被測(cè)信號(hào)進(jìn)行分頻處理。如果被測(cè)信號(hào)頻率很高需要將被測(cè)信號(hào)進(jìn)行多次分頻直到達(dá)到設(shè)計(jì)的精度要求。數(shù)字頻率計(jì)是一種應(yīng)用很廣泛的儀器電子,在廣泛的應(yīng)用領(lǐng)域內(nèi),到處可見到處理離散信息的數(shù)字電路。隨著數(shù)字電路制 造工業(yè)的進(jìn)步,

6、使得系統(tǒng)設(shè)計(jì)人員能在更小的空間內(nèi)實(shí)現(xiàn)更多的功能,從而提高系統(tǒng)可靠性和速度。本論文設(shè)計(jì)采用 AT89C51單片機(jī)為控制器件來(lái)制作一個(gè)0HZ250KHZ的頻率計(jì),并將所需得到的頻率通過(guò)數(shù)碼管顯示出來(lái)。根據(jù)設(shè)計(jì)要求用單片機(jī)的內(nèi)部T0產(chǎn)生基準(zhǔn)信號(hào),由INTO輸入被測(cè)信號(hào),通過(guò)定時(shí)方式計(jì)算被測(cè)信號(hào)的持續(xù)時(shí)間。 通過(guò)單片機(jī)計(jì)算得出結(jié)果, 最后通過(guò)數(shù)碼管顯示測(cè)量結(jié)果。系統(tǒng)的原理框圖如圖 2-1所示。圖2-1數(shù)字頻率計(jì)系統(tǒng)框圖2.2 方案的確定系統(tǒng)采用MCS-51系列單片機(jī)AT89S51作為控制核心,門控信號(hào)由 AT89S51內(nèi)部的計(jì)數(shù)定時(shí)器產(chǎn)生, 單位為1s。由于單片機(jī)的計(jì)數(shù)頻率上限較低 (12MHZ晶振時(shí)

7、約500KHZ),所以需對(duì)高頻被測(cè)信號(hào)進(jìn)行硬件 分頻處理,AT89S51則完成運(yùn)算、控制及顯示功能。由于使用了單片機(jī),使整個(gè)系統(tǒng)具有極為靈活的可編 程性,能方便地對(duì)系統(tǒng)進(jìn)行功能擴(kuò)展與改進(jìn)。原理圖如圖 2-2圖2-2單片機(jī)測(cè)頻原理圖在本設(shè)計(jì)方案中,我通過(guò)程序設(shè)定T0工作在計(jì)數(shù)狀態(tài)下,T1工作在計(jì)時(shí)狀態(tài)下。T0計(jì)數(shù)器對(duì)輸入的信號(hào)經(jīng)行計(jì)數(shù),其最大計(jì)數(shù)值為 fOSC/24,當(dāng)fOSC=12MH時(shí),T0的最大計(jì)數(shù)頻率為500kHz。由于信號(hào)的頻率就 是每秒鐘信號(hào)脈沖的個(gè)數(shù),于是我讓T1工作在定時(shí)狀態(tài)下,定時(shí)時(shí)間為1秒。每定時(shí)1秒鐘到,就停止T0的計(jì)數(shù),然后從T0的計(jì)數(shù)單元中讀取計(jì)數(shù)的數(shù)值,即完成了信號(hào)頻

8、率的測(cè)量。最后通過(guò)三位數(shù)碼管顯示出頻 率值。由于要盡可能的使用最少的元件,在滿足設(shè)計(jì)要求的前提下,我盡可能的減少了元器件的使用。將被 測(cè)信號(hào)不加任何處理,直接輸入單片機(jī)的T0 口。而將被測(cè)信號(hào)經(jīng)行放大整形、倍頻鎖相等處理就不再進(jìn)行了。這樣做會(huì)使該頻率計(jì)在測(cè)量信號(hào)頻率時(shí)產(chǎn)生精度誤差,但能夠滿足設(shè)計(jì)要求。第三章:硬件設(shè)計(jì)3.1主控單元主控單元主要是AT89C51單片機(jī)系統(tǒng),采用12MHz的晶振頻率。單片機(jī)的P3.2 口接被處理后的被測(cè)信號(hào),P0 口接LED顯示器的數(shù)據(jù)輸入端,ALE RD, WR P0.0 , P0.1通過(guò)外接控制電路接數(shù)碼管顯示器的控制端。單片機(jī)系統(tǒng)的電路如圖3-1所示。- -

9、- « - - - « - -Dc> :,A :-U2,r a -r -=18>XTAL1P0.0/)0P0.2/AD2P0.3/ACG 陽(yáng)4明2P0.6/AD6PQ,7/jW39383718XTAL237i534339RST32P2.onsaeP2.ij§=eP2.2/A10P2.3/A11P2.4/M2P2.5/A13P2.6/A14P2.7/A152I22_r-%.23-AL <<2330PSEN25J31EA262728- HTPW P1.110P3.0/FL® 口 q d rntTb2113P3,2/IMTOP3.3/i

10、NfTP3.<ID124ri上 n:s Pl 4 P1j5 PW PI 7146-151r J.DJI P3.6/W F37荷ia_a_17HU1- -ATB9C51 _-r'T 1- 7k、-圖3-1單片機(jī)系統(tǒng)AT89S51是一個(gè)低功耗,高性能 CMOS曲單片機(jī),片內(nèi)含 4k Bytes ISP(In-system programmable) 的 可反復(fù)擦寫1000次的Flash只讀程序存儲(chǔ)器,器件采用 ATME公司的高密度、非易失性存儲(chǔ)技術(shù)制造,兼容 標(biāo)準(zhǔn)MCS-51jf令系統(tǒng)及80C51弓I腳結(jié)構(gòu),芯片內(nèi)集成了通用8位中央處理器和ISP Flash存儲(chǔ)單元,功能強(qiáng)大的微型計(jì)

11、算機(jī)的 AT89S5何為許多嵌入式控制應(yīng)用系統(tǒng)提供高性價(jià)比的解決方案。AT89S51具有如下特點(diǎn):40個(gè)弓唧,4k Bytes Flash片內(nèi)程序存儲(chǔ)器,128 bytes的隨機(jī)存取數(shù)據(jù)存儲(chǔ)器(RAM , 32個(gè)外部雙 向輸入/輸出(I/O) 口,5個(gè)中斷優(yōu)先級(jí)2層中斷嵌套中斷,2個(gè)16位可編程定時(shí)計(jì)數(shù)器,2個(gè)全雙工串行通 信口,看門狗(WDT電路,片內(nèi)時(shí)鐘振蕩器。此外,AT89S51設(shè)計(jì)和配置了振蕩頻率可為0H班可通過(guò)軟件設(shè)置省電模式??臻e模式下,CPUT停工彳而RAMI時(shí)計(jì)數(shù)器,串行口,外中斷系統(tǒng)可繼續(xù)工作,掉電模式凍結(jié)振蕩器而保存 RAM勺數(shù)據(jù),停止芯片其它功能直至外中斷激活或硬件復(fù)位。

12、同時(shí)該芯片還具有PDIP、TQF林口 PLC/三種封裝形式,以適應(yīng)不同產(chǎn)品的需求。AT89S51單片機(jī)內(nèi)部結(jié)構(gòu)如下圖:RG.a PO.TP3&. Par圖3-2單片機(jī)內(nèi)部結(jié)構(gòu)圖主要特性;8031 CPU MCS-51 兼容4K字節(jié)可編程FLASH存儲(chǔ)器 全靜態(tài)匚作10Hz-24KHz二皴程序存儲(chǔ)器保密鎖定 128*8位內(nèi)部RAXI32條可編程r。線兩個(gè)L6位定時(shí)器/計(jì)數(shù)器6個(gè)中斷源可編程m行通道低功耗的閑置和拽電模式 片內(nèi)振蕩器和時(shí)鐘電路P1.0C140JVCCPij匚239J PO.Q (ADO)P1 2匚338 P0.1 (ADl)P1.3 口437 PO.2 iAD2)P1.4

13、t536 P0.3 (AD3)(MOSI)P1.5L635 P0 4 (ACM)(MISO) P1.6 匚734 P0.5 (ADS)(SCK) Pl ,7 匚833Zl Po.6 (AD6)RST匚9323 PO.7 (AD7)(RXD) P3 0 匚1031 EAAAPP(TXD) P3 1 匚1130J A上'PROG(INTO) P3 2 匚1229 PSENilNTl) P3.3 匚1328 P2.7 (Al 5)(TO) P3.4 匚1427 P2.6 (A14)(T1) P3 5 匚15263 P2.5 (Al 3)(WR) P3.6 匚1625 P2.4 (Al 2)(

14、RD) P3.7 匚1724 P23 (A11)XTAL2 匚1823 P2.2 (A10)XTAL1 匚1922 P2.1 (A91GND匚2021 P2.0 (AB)D圖3-3 單片機(jī)引腳圖管腳說(shuō)明:VCC :供電電壓。GND:接地。P0: P0口為一個(gè)8位漏級(jí)開路雙向I/O口,每腳可吸收8TTL門電流。當(dāng)P1 口的管腳第一次寫1時(shí),被定義為高阻輸入。P0能夠用于外部程序數(shù)據(jù)存儲(chǔ)器,它可以被定義為數(shù)據(jù)/地址的第八位。在FIASH編程時(shí),P0 口作為原碼輸入口,當(dāng) FIASH進(jìn)行校3時(shí),P0輸出原碼,此時(shí)P0外部必須被拉高。P1: P1 口是一個(gè)內(nèi)部提供上拉電阻的 8位雙向I/O 口,P1

15、口緩沖器能接收輸出4TTL門電流。P1 口管腳寫入1 后,被內(nèi)部上拉為高,可用作輸入,P1 口被外部下拉為低電平時(shí),將輸出電流,這是由于內(nèi)部上拉的緣故。在FLAS褊程和校驗(yàn)時(shí),P1 口作為第八位地址接收。P2: P2口為一個(gè)內(nèi)部上拉電阻的 8位雙向I/O 口,P2口緩沖器可接收,輸出4個(gè)TTLH電流,當(dāng)P2口被寫“ 1”時(shí),其管腳被內(nèi)部上拉電阻拉高,且作為輸入。并因此作為輸入時(shí),P2口的管腳被外部拉低,將輸出電流。這是由于內(nèi)部上拉的緣故。P2 口當(dāng)用于外部程序存儲(chǔ)器或 16位地址外部數(shù)據(jù)存儲(chǔ)器進(jìn)行存取時(shí),P2口輸出地址的高八位。在給出地址“ 1”時(shí),它利用內(nèi)部上拉優(yōu)勢(shì),當(dāng)對(duì)外部八位地址數(shù)據(jù)存儲(chǔ)

16、器進(jìn)行讀寫時(shí),P2口輸出其特殊功能寄存器的內(nèi)容。P2口在FLASHY程和校驗(yàn)時(shí)接收高八位地址信號(hào)和控制信號(hào)。P3: P3口管腳是8個(gè)帶內(nèi)部上拉電阻的雙向I/O 口,可接收輸出4個(gè)TTL門電流。當(dāng)P3口寫入“ 1”后,它們被內(nèi)部上拉為高電平,并用作輸入。作為輸入,由于外部下拉為低電平,P3口將輸出電流(ILL)這是由于上拉的緣故。P3.0 RXD(串行輸入口) P3.1 TXD (串行輸出口)P3.2 /INTO (外部中斷0) P3.3/INT1 (外部中斷1) P3.4 T0 (記時(shí)器0外部輸入)P3.5 T1 (記時(shí)器 1外部輸入) P3.6 /WR (外部數(shù)據(jù)存儲(chǔ)器寫選通)P3.7 /R

17、D (外部數(shù)據(jù)存儲(chǔ)器讀選通)P3 口同時(shí)為閃爍編程和編程校驗(yàn)接收一些控制信號(hào)。 I/O 口作為輸入口時(shí)有兩種工作方式即所謂的讀端口與讀引腳讀端口時(shí)實(shí)際上并不從外部讀入數(shù) 據(jù)而是把端口鎖存器的內(nèi)容讀入到內(nèi)部總線經(jīng)過(guò)某種運(yùn)算或變換后再寫回到端口鎖存器只有讀端口 時(shí)才真正地把外部的數(shù)據(jù)讀入到內(nèi)部總線上面圖中的兩個(gè)三角形表示的就是輸入緩沖器CP照根據(jù)不同的指令分別發(fā)出讀端口或讀引腳信號(hào)以完成不同的操作這是由硬件自動(dòng)完成的不需要我們操心1然后再實(shí)行讀引腳操作否則就可能讀入出錯(cuò)為什么看上面的圖如果不對(duì)端口置 1 端口鎖存器原來(lái)的狀態(tài) 有可能為0Q端為0QA為1加到場(chǎng)效應(yīng)管柵極的信號(hào)為1該場(chǎng)效應(yīng)管就導(dǎo)通又撲

18、&呈現(xiàn)低阻抗,此時(shí)即使引腳上輸入的信號(hào)為1 也會(huì)因端口的低阻抗而使信號(hào)變低使得外加的1 信號(hào)讀入后不一定是1若先執(zhí)行置1 操作則可以使場(chǎng)效應(yīng)管截止引腳信號(hào)直接加到三態(tài)緩沖器中實(shí)現(xiàn)正確的讀入由于在輸入操作時(shí)還必 須附加一個(gè)準(zhǔn)備動(dòng)作所以這類I/O 口被稱為準(zhǔn)雙向口 89C51的P0/P1/P2/P3 口作為輸入時(shí)都是準(zhǔn)雙向口接下來(lái)讓我們?cè)倏戳硪粋€(gè)問(wèn)題從圖中可以看出這四個(gè)端口還有一個(gè)差別除了P1 口外POP2P3n都還有其他的功能。RST:復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時(shí),要保持RST卻兩個(gè)機(jī)器周期的高電平時(shí)間。ALE/PROG :當(dāng)訪問(wèn)外部存儲(chǔ)器時(shí),地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)

19、。在FLASHY程期間,此引腳用于輸入編程脈沖。在平時(shí),AL端以不變的頻率周期輸出正脈沖信號(hào),此頻率為振蕩器頻率的 1/6 。因此它可用作對(duì)外部輸出的脈沖或用于定時(shí)目的。然而要注意的是:每當(dāng)用作外部數(shù) 據(jù)存儲(chǔ)器時(shí),將跳過(guò)一個(gè) ALEB沖。如想禁止 ALE勺輸出可在SFR8EH2址上置0。此時(shí),ALE只有在執(zhí) 行MOVXMOVC令是ALW起作用。另外,該引腳被略微拉高。 如果微處理器在外部執(zhí)行狀態(tài)AL朦止,置位無(wú)效。/PSEN:外部程序存儲(chǔ)器的選通信號(hào)。在由外部程序存儲(chǔ)器取指期間,每個(gè)機(jī)器周期兩次/PSEM效。但在訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器時(shí),這兩次有效的/PSEN言號(hào)將不出現(xiàn)。/EA/VPP :當(dāng)/E

20、A保持低電平時(shí),則在此期間外部程序存儲(chǔ)器(0000H-FFFFH),不管是否有內(nèi)部程序存儲(chǔ)器。注意加密方式1時(shí),/EA將內(nèi)部鎖定為RESET當(dāng)/EA端保持高電平時(shí),此間內(nèi)部程序存儲(chǔ)器。在 FLASHY程期間,此弓唧也用于施力口12例程電源(VPB。XTAL1 : 反向振蕩放大器的輸入及內(nèi)部時(shí)鐘工作電路的輸入。 XTAL2 : 來(lái)自反向振蕩器的3.2 頻率采集頻率采集單元主要依靠單片機(jī)的定時(shí)器/計(jì)數(shù)器,定時(shí)器/計(jì)數(shù)器實(shí)質(zhì)上就是一個(gè)加1計(jì)數(shù)器,其控制電路受軟件控制、切換.當(dāng)定時(shí)器/計(jì)數(shù)器為定時(shí)工作方式時(shí),計(jì)數(shù)器的加1信號(hào)由振蕩器的12分頻信號(hào)產(chǎn)生,即每過(guò)一個(gè)機(jī)器周期,計(jì)數(shù)器加1,直至計(jì)滿溢出為止。

21、顯然,定時(shí)器的定時(shí)時(shí)間與系統(tǒng)的振蕩頻率有關(guān)。因一個(gè)機(jī)器周期等于12個(gè)振蕩周期,所以計(jì)數(shù)頻率 fcount=1/12osc 。如果晶振為12MHz則計(jì)數(shù)周期為:T=1/ (12X106) HzX 1/12=1 s(3-1)這是最短的定時(shí)周期。若要延長(zhǎng)定時(shí)時(shí)間,則需要改變定時(shí)器的初值,并要適當(dāng)選擇定時(shí)器的長(zhǎng)度(如 8位、13位、16位等)。當(dāng)定時(shí)器/計(jì)數(shù)器為計(jì)數(shù)工作方式時(shí),通過(guò)引腳T0和T1對(duì)外部信號(hào)計(jì)數(shù),外部脈沖的下降沿將觸發(fā)計(jì)數(shù)。計(jì)數(shù)器在每個(gè)機(jī)器周期的S5P2期間采樣引腳輸入電平。若一個(gè)機(jī)器周期采樣值為1,下一個(gè)機(jī)器周期采樣值為0,則計(jì)數(shù)器加1。此后的機(jī)器周期 S3P1期間,新的計(jì)數(shù)值裝入計(jì)數(shù)

22、器。所以檢測(cè)一個(gè)由1至0的跳變需要兩個(gè)機(jī)器周期,故外部的最高計(jì)數(shù)頻率為振蕩頻率的1/24。例如,如果選用12MHz晶振,則最高計(jì)數(shù)頻率為0.5MHz。雖然對(duì)外部輸入信號(hào)的占空比無(wú)特殊要求,但為了確保某給定電平在變化前至少被采樣一次,外部計(jì)數(shù)脈沖的高電平與低電平保持時(shí)間均需在一個(gè)機(jī)器周期以上。3.3 顯示單元本次設(shè)計(jì)中采用了 LEDl示器,即數(shù)碼管。數(shù)碼管的每一個(gè)數(shù)碼段是一只發(fā)光二極管。當(dāng)發(fā)光二極管 導(dǎo)通時(shí),相應(yīng)的一個(gè)點(diǎn)或者一個(gè)筆畫發(fā)光,控制發(fā)光二極管發(fā)光組合,可以顯示出所需字符。我采用了共 陰極結(jié)構(gòu)。在定義其顯示字形的碼段時(shí),通過(guò)I/O 口送出七段碼表3-1 段碼表顯示字形0123456789

23、共陰3FH06H5BH4FH66H6DH7DH07H7FH6FHLE況示模塊原理圖Ulpi.oveepi 1 pl.2PQ.Opl.jM.lPO 2 pl 5mPd.3中L4密M.-lpl.l®PQ Spa.fiKST waSXD EAVWTXD ALE ?KOG P5ENKT1 TC T1 WR KOXTAL± XTAL1VSfl工飛 S724 S4:2$ 3$22 S3h|vccnnn 百&yyl-Jr7«$ s- S- £9ATTiEELS&lS 圖3-4LED顯示原理圖3.4原理圖設(shè)計(jì)LU pd .1 ZA D i pa a* 0

24、益PUT/* EM P-0.5/JL05RO jfijTA 06 ¥*0.7/*»?ALEp= 7/Airs P2 Q4 1 4P2 3JA.13P2 4/A12 3/A1 IP2 丑Aid P2.1/A3 P2.0WA8 京 0s>臭 b-*3j43多 力 33333333Y1 6口 jI NIVIHn O = w尸C3瑪丁臺(tái)f目5】t 1=0r:rrnS3qOS1 nibU4J【;1 J_益上c 1 1 1o圖3-5電路原理圖第四章:軟件設(shè)置4.1 設(shè)計(jì)流程根據(jù)硬件和畢業(yè)設(shè)計(jì)所要求的功能,在KEIL51開發(fā)環(huán)境下編譯程序,首先要定義相關(guān)參量,然后初始化中斷,打開外

25、中斷,T0是工作在計(jì)數(shù)狀態(tài)下,對(duì)輸入的頻率信號(hào)進(jìn)行計(jì)數(shù),但對(duì)工作在計(jì)數(shù)狀態(tài)下的 T0,最大計(jì)數(shù)值為fosC24,由于fos戶12MHz;因此:T0的最大計(jì)數(shù)頻率為 250KHz。對(duì)于頻率的概念就是 在一秒只數(shù)脈沖的個(gè)數(shù),即為頻率值。所以 T1工作在定時(shí)狀態(tài)下,每定時(shí) 1秒中到,就停止 T0的計(jì)數(shù), 而從T0的計(jì)數(shù)單元中讀取計(jì)數(shù)的數(shù)值,然后進(jìn)行數(shù)據(jù)處理。 送到數(shù)碼管顯示出來(lái)。T1工作在定時(shí)狀態(tài)下,最大定時(shí)時(shí)間為 65ms,達(dá)不到1秒的定時(shí),所以采用定時(shí)50ms,共定時(shí)20次,即可完成1秒的定時(shí)功能。 編譯實(shí)現(xiàn)相關(guān)功能程序,實(shí)現(xiàn)畢業(yè)設(shè)計(jì)所要求的功能,程序流程圖如下圖所示:圖4-1 程序流程圖4.2

26、 程序設(shè)計(jì)#include <AT89X51.H>unsigned char code dispbit尸0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f;共陰數(shù)碼管選通數(shù)組unsigned char code dispcode尸0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x00,0x40;數(shù)碼管顯示的數(shù)字?jǐn)?shù)組unsigned char dispbuf8=0,0,0,0,0,0,10,10; 數(shù)碼管顯示內(nèi)容數(shù)組unsigned char temp8;數(shù)碼管顯示內(nèi)容緩沖數(shù)組unsigned char

27、 dispcount;/ 顯示計(jì)數(shù)unsigned char T0count;計(jì)時(shí)器 0 的計(jì)數(shù)unsigned char timecount;/頻率計(jì)開始工作標(biāo)志位bit flag;unsigned long x;/ 八個(gè)數(shù)碼管顯示的數(shù)void main(void)unsigned char i;TMOD=0x15;/ 設(shè)置兩個(gè)計(jì)時(shí)器模式TH0=0;/初始化計(jì)時(shí)器 1 的高位TL0=0;/ 初始化計(jì)時(shí)器1 的低位TH1=(65536-4000)/256;/ 初始化計(jì)時(shí)器 1 的高位TL1=(65536-4000)%256;/ 初始化計(jì)時(shí)器 1 的低位TR1=1;/開計(jì)時(shí)器1TR0=1;/開計(jì)

28、時(shí)器 0ET0=1;/開外部計(jì)時(shí)中斷0ET1=1;/開外部計(jì)時(shí)中斷1EA=1;/開總中斷while(1)if(flag=1)flag=0;x=T0count*65536+TH0*256+TL0;for(i=0;i<8;i+)/tempi=0; /清緩沖數(shù)組內(nèi)容i=0;tempi=x%10;/ 把個(gè)位數(shù)給緩沖區(qū)x=x/10;i+;tempi=x;/ 把十位數(shù)給緩沖for(i=0;i<6;i+)dispbufi=tempi;/timecount=0;/ 清 0T0count=0;TH0=0;TL0=0;TR0=1;void t0(void) interrupt 1 using 0/中斷

29、計(jì)時(shí)器0 實(shí)行的函數(shù)T0count+;void t1(void) interrupt 3 using 0/ 中斷計(jì)時(shí)器1 的函數(shù)TH1=(65536-4000)/256;TL1=(65536-4000)%256;timecount+;if(timecount=250)TR0=0;timecount=0;flag=1;P0=dispcodedispbufdispcount;/數(shù)碼管顯示內(nèi)容P2=dispbitdispcount;/數(shù)碼管選通dispcount+;if(dispcount=8)dispcount=0;15第五章:仿真設(shè)計(jì)及結(jié)果5.1源程序編譯及結(jié)果;隴h - Aisio61c Ed

30、it 里ie Project Debug Flash 昵dphe*溯e lools 卻CE ififindcw H即同以呂圓國(guó) 您 ©E :J TaM 1回 & Grew 1的_*KM.C國(guó)£:著習(xí)ut片in淳設(shè)汗第皿.匚urulgud dvtr onaigived dur unsigr-sd ehat bit flag r unsigned Ifqdilfpc«un:示計(jì)題TOC0UBTI門討時(shí)41 口的法虻匕但:厘皿占*;門救,計(jì)汗護(hù)工洋驚志住 門八個(gè)效用看M示的蛀iLoslaedi Cba.- irTMMll 5 ?/設(shè)成而中計(jì)時(shí)事嘿式【日。7 ;“較I始化評(píng)時(shí)叫L竹病也TM-fl; “罰她槍計(jì)時(shí)船工納岐佳T胃1必篤后q鹵一,n1r1門|力號(hào)力出 三一r-H+k 二占京,rBuild t*rs*t 'Ta-rgit rcoHpi1ing he.e.linking -Program Size: data-33.1 xdata-0 code-773 creftting hez file Ercan "Iv". a .*' 1 v" - 0 Error (s) r 0 Warning (s)

溫馨提示

  • 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)論