版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、<p> 題 目: 基于51單片機的數(shù)字頻率計 </p><p><b> 目 錄</b></p><p> 第1節(jié) 引言 ……………………………………………………………1</p><p> 數(shù)字頻率計概述…………………………………………………………………………1</p><p>
2、 頻率測量儀的設(shè)計思路與頻率的計算…………………………………………………1</p><p> 基本設(shè)計原理……………………………………………………………………………2</p><p> 第2節(jié) 數(shù)字頻率計(低頻)的硬件結(jié)構(gòu)設(shè)計 ………………………3</p><p> 2.1系統(tǒng)硬件的構(gòu)成…………………………………………………………………………3</p&
3、gt;<p> 2.2系統(tǒng)工作原理圖…………………………………………………………………………3</p><p> 2.3AT89C51單片機及其引腳說明 …………………………………………………………4</p><p> 2.4信號調(diào)理及放大整形模塊………………………………………………………………6</p><p> 2.5時基信號產(chǎn)生電路………
4、………………………………………………………………6</p><p> 2.6顯示模塊…………………………………………………………………………………7</p><p> 第3節(jié) 軟件設(shè)計………………………………………………………11</p><p> 3.1 定時計數(shù) ………………………………………………………………………………11</p><
5、;p> 3.2 量程轉(zhuǎn)換 ………………………………………………………………………………11</p><p> 3.3 BCD轉(zhuǎn)換…………………………………………………………………………………11</p><p> 3.4 LCD顯示…………………………………………………………………………………11</p><p> 第4節(jié) 課程設(shè)計總結(jié) …………………
6、…………………………… 12</p><p> 參考文獻 ………………………………………………………………13</p><p> 附錄 匯編源程序代碼…………………………………………………14</p><p> 基于51單片機的數(shù)字頻率計</p><p><b> 第1節(jié) 引言</b></p>&l
7、t;p> 本應(yīng)用系統(tǒng)設(shè)計的目的是通過在“單片機原理及應(yīng)用”課堂上學(xué)習(xí)的知識,以及查閱資料,培養(yǎng)一種自學(xué)的能力。并且引導(dǎo)一種創(chuàng)新的思維,把學(xué)到的知識應(yīng)用到日常生活當(dāng)中。在設(shè)計的過程中,不斷的學(xué)習(xí),思考和同學(xué)間的相互討論,運用科學(xué)的分析問題的方法解決遇到的困難,掌握單片機系統(tǒng)一般的開發(fā)流程,學(xué)會對常見問題的處理方法,積累設(shè)計系統(tǒng)的經(jīng)驗,充分發(fā)揮教學(xué)與實踐的結(jié)合。全能提高個人系統(tǒng)開發(fā)的綜合能力,開拓了思維,為今后能在相應(yīng)工作崗位上的工
8、作打下了堅實的基礎(chǔ)。</p><p> 1.1數(shù)字頻率計概述</p><p> 數(shù)字頻率計是計算機、通訊設(shè)備、音頻視頻等科研生產(chǎn)領(lǐng)域不可缺少的測量儀器。它是一種用十進制數(shù)字顯示被測信號頻率的數(shù)字測量儀器。它的基本功能是測量正弦信號,方波信號及其他各種單位時間內(nèi)變化的物理量。在進行模擬、數(shù)字電路的設(shè)計、安裝、調(diào)試過程中,由于其使用十進制數(shù)顯示,測量迅速,精確度高,顯示直觀,經(jīng)常要用到頻率
9、計。 </p><p> 本數(shù)字頻率計將采用定時、計數(shù)的方法測量頻率,采用一個1602A LCD顯示器動態(tài)顯示6位數(shù)。測量范圍從1Hz—10kHz的正弦波、方波、三角波,時基寬度為1us,10us,100us,1ms。用單片機實現(xiàn)自動測量功能。</p><p> 基本設(shè)計原理是直接用十進制數(shù)字顯示被測信號頻率的一種測量裝置。它以測量周期的方法對正弦波、方波、三角波的頻率進行自動的測量。
10、</p><p> 1.2頻率測量儀的設(shè)計思路與頻率的計算</p><p> 頻率測量儀的設(shè)計思路主要是:對信號分頻,測量一個或幾個被測量信號周期中已知標(biāo)準(zhǔn)頻率信號的周期個數(shù),進而測量出該信號頻率的大小,其原理如右圖1所示。</p><p> 若被測量信號的周期為,分頻數(shù)m1,分頻后信號的周期為T,則:T=m1Tx 。由圖可知: T=NTo </p
11、><p> ?。ㄗⅲ篢o為標(biāo)準(zhǔn)信號的周期,所以T為分頻后信號的周期,則可以算出被測量信號的頻率f。)</p><p> 由于單片機系統(tǒng)的標(biāo)準(zhǔn)頻率比較穩(wěn)定,而是系統(tǒng)標(biāo)準(zhǔn)信號頻率的誤差,通常情況下很?。欢到y(tǒng)的量化誤差小于1,所以由式T=NTo可知,頻率測量的誤差主要取決于N值的大小,N值越大,誤差越小,測量的精度越高。</p><p> 1.3 基本設(shè)計原理</
12、p><p> 基本設(shè)計原理是直接用十進制數(shù)字顯示被測信號頻率的一種測量裝置。它以測量周期的方法對正弦波、方波、三角波的頻率進行自動的測量。</p><p> 所謂“頻率”,就是周期性信號在單位時間(1s)內(nèi)變化的次數(shù)。若在一定時間間隔T內(nèi)測得這個周期性信號的重復(fù)變化次數(shù)N,則其頻率可表示為f=N/T。其中脈沖形成電路的作用是將被測信號變成脈沖信號,其重復(fù)頻率等于被測頻率fx。時間基準(zhǔn)信號發(fā)
13、生器提供標(biāo)準(zhǔn)的時間脈沖信號,若其周期為1s,則門控電路的輸出信號持續(xù)時間亦準(zhǔn)確地等于1s。閘門電路由標(biāo)準(zhǔn)秒信號進行控制,當(dāng)秒信號來到時,閘門開通,被測脈沖信號通過閘門送到計數(shù)譯碼顯示電路。秒信號結(jié)束時閘門關(guān)閉,計數(shù)器停止計數(shù)。由于計數(shù)器計得的脈沖數(shù)N是在1秒時間內(nèi)的累計數(shù),所以被測頻率fx=NHz。</p><p> 第2節(jié) 數(shù)字頻率計(低頻)的硬件結(jié)構(gòu)設(shè)計</p><p> 2.1
14、系統(tǒng)硬件的構(gòu)成</p><p> 本頻率計的數(shù)據(jù)采集系統(tǒng)主要元器件是單片機AT89C51,由它完成對待測信號頻率的計數(shù)和結(jié)果顯示等功能,外部還要有分頻器、顯示器等器件??煞譃橐韵聨讉€模塊:放大整形模塊、秒脈沖產(chǎn)生模塊、換檔模擬轉(zhuǎn)換模塊、單片機系統(tǒng)、LCD顯示模塊。各模塊關(guān)系圖如圖2所示:</p><p> 圖2 數(shù)字頻率計功能模塊</p><p> 2.2
15、系統(tǒng)工作原理圖</p><p> 該系統(tǒng)工作的總原理圖如圖3所示:</p><p> 圖3 數(shù)字頻率計系統(tǒng)工作原理圖</p><p> 2.3 AT89C51單片機及其引腳說明</p><p> 89C51是一種高性能低功耗的采用CMOS工藝制造的8位微控制器,它提供下列標(biāo)準(zhǔn)特征:4K字節(jié)的程序存儲器,128字節(jié)的RAM,32條I/
16、O線,2個16位定時器/計數(shù)器, 一個5中斷源兩個優(yōu)先級的中斷結(jié)構(gòu),一個雙工的串行口, 片上震蕩器和時鐘電路。</p><p><b> 引腳說明:</b></p><p><b> ·VCC:電源電壓</b></p><p><b> ·GND:地</b></p&g
17、t;<p> ·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é),同時
18、輸出指令字節(jié)在程序校驗時。程序校驗時需要外接上拉電阻。</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>
19、3;P2口:P2是一帶有內(nèi)部上拉電阻的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口使用
20、強大的內(nèi)部上拉電阻功能當(dāng)輸出1時。當(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)部上拉電阻把端口拉到
21、高電平,此時可以用作輸入口。作為輸入口,因為內(nèi)部存在上拉電阻,某個引腳被外部信號拉低時會輸出電流(IIL)。</p><p> P3口同時具有AT89C51的多種特殊功能,具體如下表1所示:</p><p> 表1 P3口的第二功能</p><p> ·RST:復(fù)位輸入。當(dāng)振蕩器工作時,RST引腳出現(xiàn)兩個機器周期的高電平將使單片機復(fù)位。</p
22、><p> ·ALE/:當(dāng)訪問外部存儲器時,地址鎖存允許是一輸出脈沖,用以鎖存地址的低8位字節(jié)。當(dāng)在Flash編程時還可以作為編程脈沖輸出()。</p><p> 一般情況下,ALE是以晶振頻率的1/6輸出,可以用作外部時鐘或定時目的。但也要注意,每當(dāng)訪問外部數(shù)據(jù)存儲器時將跳過一個ALE脈沖。</p><p> ·:程序存儲允許時外部程序存儲器
23、的讀選通信號。當(dāng)AT89C52執(zhí)行外部程序存儲器的指令時,每個機器周期兩次有效,除了當(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)該接到V
24、CC端。</p><p> ·XTAL1:振蕩器反相放大器以及內(nèi)部時鐘電路的輸入端。</p><p> ·XTAL2:振蕩器反相放大器的輸出端。</p><p> 在本次設(shè)計中,采用89C51作為CPU處理器,充分利用其硬件資源,結(jié)合D觸發(fā)器CD4013,分頻器CD4060,模擬轉(zhuǎn)換開關(guān)CD4051,計數(shù)器74LS90等數(shù)字處理芯片,主要控
25、制兩大硬件模塊,量程切換以及顯示模塊。下面還將詳細(xì)說明。</p><p> 2.4 信號調(diào)理及放大整形模塊 放大整形系統(tǒng)包括衰減器、跟隨器、放大器、施密特觸發(fā)器。它將正弦輸入信號Vx整形成同頻率方波Vo,幅值過大的被測信號經(jīng)過分壓器分壓送入后級放大器,以避免波形失真。由運算放大器構(gòu)成的射級跟隨器起阻抗變換作用,使輸入阻抗提高。同相輸入的運算放大器的放大倍數(shù)為(R1+R2)/R1,改變R1的大小可以改變放
26、大倍數(shù)。系統(tǒng)的整形電路由施密特觸發(fā)器組成,整形后的方波送到閘門以便計數(shù)。</p><p> 由于輸入的信號幅度是不確定、可能很大也有可能很小,這樣對于輸入信號的測量就不方便了,過大可能會把器件燒毀,過小可能器件檢測不到,所以在設(shè)計中采用了這個信號調(diào)理電路對輸入的波形進行阻抗變換、放大限幅和整形,信號調(diào)理部分電路具體實現(xiàn)電路原理圖和參數(shù)如下圖4所示:
27、 圖4</p><p> 2.5 時基信號產(chǎn)生電路:</p><p> CD4013------雙上升沿D觸發(fā)器 ,引腳及功能見如下圖5:</p><p> CD4013 由兩個相同的、相互獨立的數(shù)據(jù)型觸發(fā)器構(gòu)成。每個觸發(fā)器有獨立的數(shù)據(jù)置位復(fù)位時鐘輸入和 Q及Q非輸出。此器件可用作移位寄存器,且通過將Q非輸出連接到數(shù)據(jù)輸入,可用作計數(shù)器和觸發(fā)器。在時鐘
28、上升沿觸發(fā)時,加在D 輸入端的邏輯電平傳送到Q輸出端。置位和復(fù)位或復(fù)位線上的高電平完成。 </p><p> 圖5 CD4013芯片引腳用功能圖 </p><p> CD4060------14位二進制串行計數(shù)器,引腳及功能見如下圖6: </p><p> CD4060 由一震蕩器和14極二進制串行計數(shù)器位組成,震蕩器的結(jié)
29、構(gòu)可以是RC或晶振電路。CR為高電平時,計數(shù)器清零且振蕩器使用無效,所有的計數(shù)器位均為主從觸發(fā)器 CP1非(和 CP0)的下降沿計數(shù)器以二進制進行計數(shù),在時鐘脈沖線上使用施密特觸發(fā)器對時鐘上升和下降時間無限制。 </p><p> 圖6 CD4060芯片引腳用功能圖</p><p> 時基信號的產(chǎn)生原理:</p><p> 本電路采用32768HZ晶體震蕩
30、器,利用CD4060芯片經(jīng)過14級分頻得到2HZ的信號(32768/214),在經(jīng)過CD4013雙D觸發(fā)器經(jīng)過二分頻得到0.5HZ的方波,即輸出秒脈沖信號使單片機進行計數(shù)。</p><p> 圖七 秒脈沖產(chǎn)生電路原理圖</p><p><b> 顯示模塊</b></p><p><b> 1602基本技術(shù):</b>&
31、lt;/p><p><b> 1)、主要功能</b></p><p> A、 40通道點陣LCD 驅(qū)動;</p><p> B、 可選擇當(dāng)作行驅(qū)動或列驅(qū)動;</p><p> C、 輸入/輸出信號:輸出,能產(chǎn)生20×2個LCD驅(qū)動波形;輸入,接受控制器送出的串行數(shù)據(jù)和控制信號,偏壓(V1∽V6);</
32、p><p> D、 通過單片機控制將所測的頻率信號讀數(shù)顯示出來。</p><p><b> 2)、技術(shù)參數(shù)</b></p><p><b> 2.1)極限參數(shù)表</b></p><p><b> 2.2) 電參數(shù)表</b></p><p><b
33、> 3)、時序特性表</b></p><p> 4)、引腳和指令功能</p><p> 4.1)模塊引腳功能表</p><p> 4.2)寄存器選擇功能表</p><p> ?。ㄗ?忙標(biāo)志為"1"時,表明正在進行內(nèi)部操作,此時不能輸入指令或數(shù)據(jù),要等內(nèi)部操作結(jié)束,即忙標(biāo)志為"0"
34、;時。)</p><p><b> 4.3) 指令功能</b></p><p> 格式:RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0</p><p> 共11種指令:清除,返回,輸入方式設(shè)置,顯示開關(guān),控制,移位,功能設(shè)置,CGRAM地址設(shè)</p><p> 置,
35、DDRAM地址設(shè)置,讀忙標(biāo)志,寫數(shù)據(jù)到CG/DDRAM,讀數(shù)據(jù)由CG/DDRAM。</p><p> 5)、顯示位與DD RAM 地址的對應(yīng)關(guān)系</p><p><b> 6)、初始化方法</b></p><p> 用戶所編的顯示程序,開始必須進行初始化,否則模塊無法正常顯示,下面介紹兩種初始化方法;</p><p&g
36、t; 6.1利用內(nèi)部復(fù)位電路進行初始化</p><p> 下面指令是在初始化過程中執(zhí)行的。</p><p> 清屏(DISPLAY CLEAR);</p><p> 功能設(shè)置(FUNCTION SET);</p><p> DL = 1: 8Bit 接口數(shù)據(jù);</p><p> N = 0: 1行顯示; F
37、 = 0:5×7dot字形;</p><p> 顯示開/關(guān)控制(DISPLAY ON/OFF CONTROL)</p><p> D = 0: 顯示關(guān); C = 0: 光標(biāo)關(guān); B = 0: 消隱關(guān)</p><p> 輸入方式設(shè)置(ENTRY MODE SET )</p><p> I/D = 1:(增量): S =
38、 0: 無移位:</p><p><b> 6.2) 軟件復(fù)位</b></p><p> 如果電路電源不能滿足復(fù)位電路的要求的話,那么初始化就要用軟件來實現(xiàn),過程如下:</p><p> 八位接口初始化流程圖</p><p><b> ↓ </b></p><p>&
39、lt;b> ↓</b></p><p><b> ↓等待>4.1ms</b></p><p><b> ↓等待>100us</b></p><p> ↓檢查忙標(biāo)志或延時40us</p><p> ↓檢查忙標(biāo)志或延時40us</p><p&g
40、t; ↓檢查忙標(biāo)志或延時40 us</p><p> ↓檢查忙標(biāo)志或延時1.64</p><p> ↓檢查忙標(biāo)志或延時40</p><p> 第3節(jié) 軟件設(shè)計</p><p> 主要能過編寫軟件來控制硬件完成以下各模塊的功能:</p><p><b> 3.1定時讀數(shù)</b><
41、;/p><p><b> 3.2量程轉(zhuǎn)換</b></p><p><b> 3.3 BCD轉(zhuǎn)換</b></p><p> 3.4LCD顯示的功能</p><p> 單片機當(dāng)C/T=1時為計數(shù)方式,多路開關(guān)與定時器的外部引腳連通,外部計數(shù)脈沖由引腳輸入。當(dāng)外部信號由1至0跳變時,計數(shù)器加1,此時T
42、0成為外部事件的計數(shù)器。由于確認(rèn)一次由1至0的跳變要用24個振蕩器周期,所以計數(shù)器的計數(shù)頻率為單片機內(nèi)部計數(shù)器頻率的1/24。</p><p> 當(dāng)C/T=0時為定時方式,對單片機內(nèi)部計數(shù)器進行m2分頻后,計數(shù)器的實際計數(shù)頻率為單片機內(nèi)部頻率凡的1/m2,</p><p> 當(dāng)GATE=0時,反相器輸出為1,或門輸出為1,打開與門,使定時器的啟動僅受TRO端信號電平的控制。</p
43、><p> 在此種情況下,INT0引腳的電平變化對或門不起作用。TRO=1時接通控制開關(guān),計數(shù)脈沖加到計數(shù)器上,每來一個計數(shù)脈沖,計數(shù)器加1,只有當(dāng)TRO=0時,控制開關(guān)斷開,計數(shù)器停止計數(shù)。</p><p> 當(dāng)GATA=0時,若TRO=1,或門、與門全部打開,外部信號電平通過INTO引腳直接控制定時器的啟動和關(guān)閉。輸人高電平時允許計數(shù),否則停止計數(shù)。</p><p&
44、gt; 根據(jù)定時器的結(jié)構(gòu)原理,若我們將GATE位、TR0均設(shè)為‘1’,INT0端輸人被測頻率信號,當(dāng)被測信號的高電平到來時,開始計數(shù);當(dāng)被測信號的低電平到來時,計數(shù)器停止計數(shù),此時TL0、TH0的數(shù)據(jù)就是相應(yīng)的N值。</p><p> 第4節(jié) 課程設(shè)計總結(jié)</p><p> 數(shù)字頻率計是計算機、通訊設(shè)備、音頻視頻等科研生產(chǎn)領(lǐng)域不可缺少的測量儀器。在進行模擬、數(shù)字電路的設(shè)計、安裝、調(diào)試
45、過程中,由于其使用十進制數(shù)顯示,測量迅速,精確度高,顯示直觀,會被經(jīng)常使用到。</p><p> 通過本次課程的設(shè)計,不但加深我對在課程上所學(xué)到的單片機理論知識的認(rèn)識和理解,重新讓自己認(rèn)識到了這門學(xué)科的在應(yīng)用方面的廣闊前景,并且通過知識與應(yīng)用于實踐的結(jié)合更加豐富了自己的知識。擴展了知識面,不但掌握了本專業(yè)的相關(guān)知識,而且對其他專業(yè)的知識也有所了解,而且較系統(tǒng)的掌握單片機應(yīng)用系統(tǒng)的開發(fā)過程,因而自身的綜合素質(zhì)有了
46、全面的提高 。</p><p> 經(jīng)過這次一個較完整的產(chǎn)品設(shè)計和制作過程,對于認(rèn)識到自己在知識方面存在的不足,明確今后的學(xué)習(xí)方向是非常有益的,為將來的的就業(yè)提前打了下堅實的基礎(chǔ)。在設(shè)計過程中,得到了我的指導(dǎo)老師的悉心指導(dǎo)與幫助,還有其他老師和同學(xué)的大力支持和協(xié)助,在此一并表示衷心的感謝。</p><p><b> 參考文獻</b></p><p
47、> [1]李光飛 ,樓苗然主編.51系列單片機.北京:北京航空航天大學(xué)出版社,2003</p><p> [2]黃正瑾編著.CPLD系統(tǒng)設(shè)計技術(shù)入門與應(yīng)用. 北京: 電子工業(yè)出版社, 2002</p><p> [3]謝自美編著.電子線路設(shè)計·實驗·測試.華中理工大學(xué)出版社,2002</p><p> [4]陳永甫編著.電子電路智能
48、化設(shè)計.實例與應(yīng)用.北京:電子工業(yè)出版,2002.8</p><p> [5]康華光主編.電子技術(shù)基礎(chǔ)(第四版).北京:高等教育出版社,1999附錄 匯編源程序代碼</p><p> RS BIT P2.0 ;P3.4腳接RS端</p><p> RW BIT P2.1 ;P3.5腳接R_W端</p><
49、p> E BIT P2.2 ;P3.3腳接E端</p><p><b> ORG 0000H</b></p><p><b> LJMP MAIN</b></p><p><b> ORG 002BH</b></p><p><b>
50、; LJMP IT1</b></p><p><b> MAIN:</b></p><p> MOV P0,#01H ;清除屏幕</p><p> ACALL ENABLE</p><p> MOV P0,#01H ;清除屏幕</p><p> A
51、CALL ENABLE</p><p> MOV P0,#01H ;清除屏幕</p><p> ACALL ENABLE</p><p> MOV P0,#38H ;8位點陣方式</p><p> ACALL ENABLE</p><p> MOV P0,#0cH ;
52、開顯示</p><p> ACALL ENABLE</p><p> MOV P0,#06H ;移動光標(biāo)</p><p> ACALL ENABLE</p><p> MOV P0,#80H ;顯示位置</p><p> ACALL ENABLE</p><p
53、> mov p0,#80h ;第一行的位置</p><p> call enable</p><p> mov dptr,#date</p><p> call write3</p><p> mov p0,#0c0h ;第二行的位置</p><p> call e
54、nable</p><p> MOV SP,#7FH</p><p><b> CLR CY</b></p><p> mov r6,#00</p><p> mov r2,#00</p><p> MOV R3,#00</p><p> MOV TMOD,#1
55、5H</p><p> MOV TL0,#00H</p><p> MOV TH0,#00H</p><p> mov th1,#high(65536-50000)</p><p> mov tl1,#low(65536-50000) ;setb ET1</p><p&
56、gt; cha1: SETB TR1 ;LCALL XIANSHI</p><p><b> SETB TR0</b></p><p> mov 27h,#00h</p><p><b> CLR C</b></p>
57、;<p> MOV C,P1.6</p><p> MOV 27H.0,C</p><p><b> CLR C</b></p><p> MOV C,P1.7</p><p> MOV 27H.1,C</p><p> mov a,27h</p>
58、<p> ANL A,#03H</p><p> MOV 17H,A</p><p> CHA: JBC TF1,JINWEI ;益處進位</p><p><b> JMP CHA</b></p><p> JINWEI:CLR TR1</p><p>
59、 mov th1,#high(65536-50000)</p><p> mov tl1,#low(65536-50000)</p><p><b> SETB TR1</b></p><p><b> INC R3</b></p><p> MOV A,R3
60、 ;JNB P3.2,$</p><p> CJNE A,#20,CHA</p><p><b> CLR TR0</b></p><p><b> CLR TR1</b></p><p> MOV R3,#00</p><
61、;p> MOV R2,TH0</p><p> MOV R6,TL0</p><p> lcall zhuan</p><p> LCALL write1</p><p> MOV TL0,#00H</p><p> MOV TH0,#00H</p><p><b>
62、 jmp cha1</b></p><p><b> ZHUAN:</b></p><p><b> MOV A,R2</b></p><p><b> CLR C</b></p><p> MOV 20H,#00H</p><p&g
63、t; MOV 21H,#00H</p><p> MOV 22H,#00H</p><p> MOV 24H,#00H</p><p> MOV 25H,#00H</p><p> MOV R3,#10H</p><p> NEXT: RLC A</p><p><b>
64、 MOV R2,A</b></p><p><b> MOV A,20H</b></p><p> ADDC A,20H</p><p><b> DA A</b></p><p><b> MOV 20H,A</b></p><p>
65、;<b> MOV A,21H</b></p><p> ADDC A,21H</p><p><b> DA A</b></p><p><b> MOV 21H,A</b></p><p><b> MOV A,22H</b></p&g
66、t;<p> ADDC A,22H</p><p><b> DA A</b></p><p><b> MOV 22H,A</b></p><p><b> MOV A,R2</b></p><p> DJNZ R3,NEXT</p>&
67、lt;p><b> MOV A,R6</b></p><p><b> clr c</b></p><p> MOV R3,#08H</p><p> NEXT1: RLC A</p><p><b> MOV R6,A</b></p><p
68、><b> MOV A,24H</b></p><p> ADDC A,24H</p><p><b> DA A</b></p><p><b> MOV 24H,A</b></p><p><b> MOV A,25H</b></
69、p><p> ADDC A,25H</p><p><b> DA A</b></p><p><b> MOV 25H,A</b></p><p><b> mov a,r6</b></p><p> DJNZ R3,NEXT1</p>
70、;<p><b> clr c</b></p><p><b> mov a,24h</b></p><p> addc a,20h</p><p><b> da a</b></p><p><b> mov 20h,a</b>&
71、lt;/p><p><b> mov a,25h</b></p><p> addc a,21h</p><p><b> da a</b></p><p><b> mov 21h,a</b></p><p><b> mov a,22
72、h</b></p><p> addc a,#00h</p><p><b> da a</b></p><p><b> mov 22h,a</b></p><p><b> mov a,22h</b></p><p> anl
73、a,#0fh</p><p><b> mov 31h,a</b></p><p><b> mov a,22h</b></p><p> anl a,#0f0h</p><p><b> swap a</b></p><p><b>
74、 mov 30h,a</b></p><p><b> mov a,21h</b></p><p> anl a,#0f0h</p><p><b> swap a</b></p><p><b> mov 32h,a</b></p><
75、;p><b> mov a,21h</b></p><p> anl a,#0fh</p><p><b> mov 33h,a</b></p><p><b> mov a,20h</b></p><p> anl a,#0f0h</p><
76、;p><b> swap a</b></p><p><b> mov 34h,a</b></p><p><b> mov a,20h</b></p><p> anl a,#0fh</p><p><b> mov 35h,a</b>&
77、lt;/p><p><b> ret</b></p><p> ;**************</p><p><b> ;LCD顯示</b></p><p> ;**************</p><p><b> ENABLE:</b><
78、;/p><p> CLR RS</p><p> CLR RW</p><p><b> CLR E</b></p><p> ACALL DELAY</p><p><b> SETB E</b></p><p&g
79、t;<b> RET</b></p><p> write1: ;寫數(shù)據(jù)</p><p> MOV 10H,#00H</p><p> MOV 11H,#00H</p><p> MOV 12H,#00H</p><p> MOV
80、 13H,#00H</p><p> MOV 14H,#00H</p><p> MOV 15H,#00H</p><p> MOV 16H,#00H </p><p> mov p0,#0ch</p><p> call enable</p><p&
81、gt; mov p0,#0c0h ;第二行的位置</p><p> call enable</p><p> MOV A,17H</p><p> XRL A,#02H</p><p> JNZ XIAN1</p><p> MOV 40H,#00H</
82、p><p> MOV 41H,#00H</p><p> MOV 42H,#00H</p><p> MOV 43H,30H</p><p> MOV 44H,31H</p><p> MOV 45H,32H</p><p> JMP XI
83、AN</p><p> XIAN1:MOV A,17H</p><p> XRL A,#01H</p><p> JNZ XIAN2</p><p> MOV 40H,#00H</p><p> MOV 41H,#00H</p><p> M
84、OV 42H,30H</p><p> MOV 43H,31H</p><p> MOV 44H,32H</p><p> MOV 45H,33H</p><p> JMP XIAN</p><p> XIAN2:MOV A,17H</p><
85、;p> XRL A,#00H</p><p> JNZ XIAN3</p><p> MOV 40H,#00H</p><p> MOV 41H,30H</p><p> MOV 42H,31H</p><p> MOV 43H,32H</p&g
86、t;<p> MOV 44H,33H</p><p> MOV 45H,34H</p><p> JMP XIAN</p><p> XIAN3:MOV A,17H</p><p> XRL A,#03H</p><p> JNZ XIAN&l
87、t;/p><p> MOV 40H,30H</p><p> MOV 41H,31H</p><p> MOV 42H,32H</p><p> MOV 43H,33H</p><p> MOV 44H,34H</p><p> MOV 4
88、5H,35H</p><p> XIAN:mov r0,#40h</p><p> mov a, @r0</p><p> JZ L20</p><p> MOV 10H,#0FFH</p><p> MOV 15H,#0FFH </p><p&
89、gt; mov dptr,#date1</p><p> movc a,@a+dptr</p><p> call write2</p><p> L20:INC R0</p><p> MOV A, 10H</p><p> CJNE A, #00H,PP<
90、/p><p> mov a, @r0 </p><p> JZ L21</p><p> PP: MOV 11H,#0FFH </p><p> MOV 15H,#0FFH</p><p> mov a, @r0 </p>&l
91、t;p> mov dptr,#date1</p><p> movc a,@a+dptr</p><p> call write2</p><p> L21:INC R0</p><p> MOV A, 11H</p><p> CJNE A, #00H,PP
92、2</p><p> mov a, @r0 </p><p> JZ L22</p><p> PP2: MOV 12H,#0FFH</p><p> MOV 15H,#0FFH</p><p> mov a, @r0</p><
93、;p> mov dptr,#date1</p><p> movc a,@a+dptr</p><p> call write2</p><p> MOV A, 15H</p><p> CJNE A,#0FFH,L22 </p><p> MOV
94、 A,#00H</p><p> mov dptr,#XIAOSHUDIAN</p><p> movc a,@a+dptr</p><p> call write2</p><p><b> L22:</b></p><p> INC R0&l
95、t;/p><p> MOV A, 12H</p><p> CJNE A, #00H,PP3</p><p> mov a, @r0 </p><p> JZ L23</p><p> PP3: MOV 13H,#0FFH</p><p&
96、gt; mov a, @r0 </p><p> mov dptr,#date1</p><p> movc a,@a+dptr </p><p> call write2</p><p> L23:INC R0</p><p> MOV
97、A, 13H</p><p> CJNE A, #00H,PP4</p><p> mov a, @r0 </p><p> JZ L24</p><p> PP4: MOV 14H,#0FFH</p><p> mov a, @r0 <
98、;/p><p> mov dptr,#date1</p><p> movc a,@a+dptr </p><p> call write2</p><p> L24:INC R0 </p><p> mov a, @r0</p>&l
99、t;p> mov dptr,#date1</p><p> movc a,@a+dptr </p><p> call write2 </p><p> MOV A,15H</p><p> CJNE A, #00H,KHZ </p>&l
100、t;p> MOV A,#00H </p><p> MOV dptr,#DANWEI1</p><p> JMP QUSHU</p><p> KHZ:MOV dptr,#DANWEI2 </p><p> QUSHU:movc a,@a+dptr <
101、;/p><p> call write3</p><p> mov r5,#4</p><p> l3:mov a,#20h</p><p> call write2</p><p> djnz r5,l3</p><p><b> ret&l
102、t;/b></p><p><b> write2:</b></p><p> mov p0, a</p><p><b> setb rs</b></p><p><b> CLR rw</b></p><p><
103、b> clr e</b></p><p> call delay</p><p><b> setb e</b></p><p><b> ret</b></p><p> write3: mov r1,#00h ;寫數(shù)據(jù)</p>
104、<p> a2: mov a, r1</p><p> movc a, @a+dptr</p><p> call write2</p><p> inc r1</p><p> cjne a,#00h,a2</p><p><b> ret
105、</b></p><p><b> delay:</b></p><p> mov r7, #255</p><p> d1: mov r6, #255</p><p> d2: djnz r6, d2</p><p> djnz r7,
106、 d1</p><p><b> ret</b></p><p> date: db "the frequency is",00h</p><p> date1: db 30h,31h,32h,33h,34h,35h,36h,37h,38h,39h</p><p> DANWEI1:
溫馨提示
- 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)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 單片機課程設(shè)計---數(shù)字頻率計
- 單片機課程設(shè)計---數(shù)字頻率計
- 單片機數(shù)字頻率計課程設(shè)計
- 單片機課程設(shè)計報告---數(shù)字頻率計
- 單片機課程設(shè)計--基于單片機數(shù)字頻率計設(shè)計
- 單片機課程設(shè)計--數(shù)字頻率計的設(shè)計
- 單片機課程設(shè)計報告---簡易數(shù)字頻率計
- 基于單片機的數(shù)字頻率計設(shè)計課程設(shè)計
- 課程設(shè)計報告基于單片機數(shù)字頻率計設(shè)計
- 數(shù)字頻率計課程設(shè)計
- 數(shù)字頻率計課程設(shè)計
- 課程設(shè)計--數(shù)字頻率計
- 課程設(shè)計——數(shù)字頻率計
- 數(shù)字頻率計課程設(shè)計
- 課程設(shè)計-數(shù)字頻率計
- 課程設(shè)計--數(shù)字頻率計
- 課程設(shè)計--數(shù)字頻率計
- 數(shù)字頻率計課程設(shè)計
- 數(shù)字頻率計課程設(shè)計
- 數(shù)字頻率計課程設(shè)計
評論
0/150
提交評論