版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、<p> 微型計算機(jī)技術(shù)專業(yè)方向設(shè)計</p><p><b> 任務(wù)書</b></p><p> 題目名稱:基于MCS-51單片機(jī)的頻率計的設(shè)計</p><p> 專業(yè) 自動化 班級 </p><p> 姓名 學(xué)號
2、</p><p><b> 學(xué)校:</b></p><p><b> 指導(dǎo)教師:</b></p><p><b> 課程設(shè)計任務(wù)書</b></p><p> 課程名稱:微型計算機(jī)技術(shù)</p><p> 設(shè)計題目:基于MCS-51單片機(jī)的頻率計的
3、設(shè)計</p><p><b> 系統(tǒng)硬件要求:</b></p><p> 1、最小系統(tǒng)設(shè)計:AT89C51單片機(jī)為本設(shè)計的控制器,包括外擴(kuò)ROM,RAM各32KB (其大小由設(shè)計者自己設(shè)計),系統(tǒng)時鐘電路、復(fù)位電路等構(gòu)成的最小系統(tǒng);</p><p> 2、頻率計使用定時器的計數(shù)方式,記錄頻率的個數(shù)并顯示;顯示部分為LED動態(tài)顯示設(shè)計;并有
4、鍵盤設(shè)計;</p><p> 3、接口電路的設(shè)計:設(shè)計者擴(kuò)展一個并行接口〔8155或8255〕,鍵盤設(shè)計由設(shè)計者根據(jù)需要設(shè)計鍵盤的數(shù)量,顯示采用LED顯示,顯示電路也根據(jù)顯示的內(nèi)容設(shè)計;</p><p> 4、有開機(jī)顯示狀態(tài)(如顯示88....);</p><p><b> 軟件設(shè)計:</b></p><p>
5、1)主程序設(shè)計(包括初始化芯片,定時器,中斷以及SP指針等);</p><p> 2)各功能子程序設(shè)計,鍵盤子程序、\顯示子程序設(shè)計,定時,中斷程序等;</p><p><b> 其他要求:</b></p><p> 每位同學(xué)獨立完成本設(shè)計。</p><p> 2、依據(jù)題目要求,提出系統(tǒng)設(shè)計方案。</p&
6、gt;<p> 3、設(shè)計系統(tǒng)電路原理圖。</p><p> 調(diào)試系統(tǒng)硬件電路、功能程序。</p><p> 編制課程設(shè)計報告書并裝訂成冊,報告書內(nèi)容(按順序)</p><p><b> ?。?)報告書封面</b></p><p> ?。?)課程設(shè)計任務(wù)書</p><p> ?。?/p>
7、3)系統(tǒng)設(shè)計方案的提出、分析</p><p> ?。?)系統(tǒng)中典型電路的分析</p><p> ?。?)系統(tǒng)軟件結(jié)構(gòu)框圖</p><p> ?。?)系統(tǒng)電路原理圖</p><p><b> (7)源程序</b></p><p> ?。?)課設(shè)字?jǐn)?shù)不少于2000字</p><p
8、><b> 目錄</b></p><p> 第一章 引言.............................................................................................-4-</p><p> 第二章 方案論證.....................................
9、................................................-5-</p><p> 2.1 采波選擇方案..........................................................................-5-</p><p> 2.2 擴(kuò)展I/O口芯片選擇......................
10、.........................................-5-</p><p> 2.3 理論分析與計算......................................................................-5-</p><p> 第三章 系統(tǒng)硬件設(shè)計....................................
11、.........................................-5-</p><p> 3.1 頻率發(fā)生器的設(shè)計原理..........................................................-5-</p><p> 3.2 整體結(jié)構(gòu)設(shè)計.............................................
12、.............................-5-</p><p> 3.3 頻率發(fā)生器的主機(jī)電路設(shè)計..................................................-6-</p><p> 3.4 系統(tǒng)整體原理圖..............................................................
13、......-11-</p><p> 第四章 系統(tǒng)軟件設(shè)計...........................................................................-11-</p><p> 4.1 測頻軟件實現(xiàn)原理...............................................................
14、.-11-</p><p> 4.2程序清單.................................................................................-11-</p><p> 總結(jié)...........................................................................
15、..............................-12-</p><p> 參考文獻(xiàn).................................................................................................-12-</p><p> 附錄.................................
16、........................................................................-13-</p><p> 附錄一:電路原理圖...................................................................-13-</p><p> 附錄二:軟件流程圖.........
17、..........................................................-13-</p><p> 附錄三:程序設(shè)計.......................................................................-14-</p><p><b> 引言</b></p&g
18、t;<p> 隨著電子信息產(chǎn)業(yè)的發(fā)展,信號作為其最基礎(chǔ)的元素,其頻率的測量在科技研究和實際應(yīng)用中的作用日益重要,而且需要測頻的范圍也越來越寬。傳統(tǒng)的頻率計通常采用組合電路和時序電路等大量的硬件電路構(gòu)成,產(chǎn)品不但體積較大,運(yùn)行速度慢,而且測量范圍低,精度低。因此我們需要尋找一種新的測頻的方法。隨著單片機(jī)技術(shù)的發(fā)展和成熟,用單片機(jī)來做為一個電路系統(tǒng)的控制電路逐漸顯示出其無與倫比的優(yōu)越性。因此本論文采用單片機(jī)來做為電路的控制系
19、統(tǒng),設(shè)計一個能測量高頻率的數(shù)字頻率計。用單片機(jī)來做控制電路的數(shù)字頻率計測量頻率精度高,測量頻率的范圍得到很大的提高。</p><p> 頻率儀器是數(shù)字電路中一個典型應(yīng)用,實際的硬件設(shè)計用到的器件較多,聯(lián)機(jī)比較復(fù)雜,而且會產(chǎn)生比較大的延遲。隨著復(fù)雜可編程邏輯器件的廣泛應(yīng)用,將使整個系統(tǒng)大大簡化。提高整體性能,它是直接用十進(jìn)制數(shù)字來顯示被測信號頻率的一種測量裝置。它不僅可以測量正弦波,方波,三角波,尖脈沖信號和其他
20、具有周期的信號的頻率,而且還可以測量他們的周期。經(jīng)過改裝,可以測量脈沖寬度,做成數(shù)字式脈寬測量儀:可以測量電容做成數(shù)字電容測量儀;在電路中增加傳感器,還</p><p> 可以做成數(shù)字脈搏儀,計價器等。因此數(shù)字頻率儀在測量物理量方面的廣泛應(yīng)用。</p><p> 頻率計的設(shè)計原理實際上是測量單位時間內(nèi)的周期數(shù)。這種方法免去了實測以前的預(yù)測,同時節(jié)省了劃分頻率的時間,克服了原來高頻率采用
21、測頻模式而低頻段采用測周期模式的測量方法存在換擋速度慢的缺點。通常情況下計算每秒內(nèi)待測信號的脈沖個數(shù),此時我們稱閘門時間為1秒。閘門時間也可以大于或小于1秒。閘門時間越長,得到的頻率值就越準(zhǔn)確,但閘門時間越長則每測一次頻率的時間隔就越長。閘門時間越短,測得頻率值刷新?lián)娇欤珳y得的頻率精度就受影響。本論文的任務(wù)是設(shè)計一個基于單片機(jī)技術(shù)的數(shù)字頻率計。主要介紹了整形電路、控制電路和顯示電路的構(gòu)成原理,以及其測頻的基本方法。進(jìn)行了相應(yīng)<
22、/p><p><b> 的軟硬件設(shè)計。</b></p><p> 本論文的任務(wù)是設(shè)計一個基于單片機(jī)技術(shù)的數(shù)字頻率計。主要介紹了整形電路、控制電路和顯示電路的構(gòu)成原理,以及其測頻的基本方法。進(jìn)行了相應(yīng)的硬軟件設(shè)計。</p><p><b> 第二章 方案論證</b></p><p> 2.1采波選
23、擇方案 </p><p> 方案一:用定時器定時1s,用計數(shù)器記錄1s內(nèi)經(jīng)過的波的周期。</p><p> 方案二:用計數(shù)器記錄10次波峰,用定時器定時中間經(jīng)歷的時間。</p><p> 第一種方案波的周期接近一秒時,無法準(zhǔn)確計數(shù),進(jìn)而無法得到波的頻率,第二種方法免除了這個弊端因此選擇方案二。
24、 </p><p> 2.2外擴(kuò)I/O口芯片選擇</p><p> 方案一: 8255A。操作方便,外擴(kuò)I/O接口簡單、實用。但所需控制端口太多。</p><p> 方案二:8155。操作方便,外擴(kuò)I/O接口簡單、實用,所需控制端口少。故選此方案。
25、</p><p> 2.3理論分析與計算 </p><p><b> 定時器部分:</b></p><p> AT89C51本身帶16位定時計數(shù)器,可以很方便的采用它來完成定時與計數(shù)功能,本設(shè)計需要一個可以自動裝初值的計數(shù)器和一個可以定時盡量長的
26、定時器。因此選用計數(shù)器T0和定時器T1。T0選用工作方式2可以自動重裝初值,T1選用工作方式1可以定時盡量長的時間,保證計時時間的充足。</p><p> 第三章 系統(tǒng)硬件設(shè)計</p><p> 3.1 頻率發(fā)生器的設(shè)計原理</p><p> 頻率發(fā)生器系統(tǒng)由采樣電路、控制芯片、顯示組成。該系統(tǒng)采用AT89C51為主控芯片,用以控制采樣、計算和控制顯示。以81
27、55作為擴(kuò)展電路,用來完成開機(jī)顯示和采樣計算完成后的頻率顯示。在系統(tǒng)中運(yùn)用定時中斷和計數(shù)中斷,來完成一定時間波的周期的采集,隨后通過運(yùn)算,計算出波的頻率,進(jìn)而經(jīng)過處理后用數(shù)碼管顯示。</p><p> 頻率計數(shù)開始用按鍵來控制,開始后完成一次計數(shù)并作處理顯示檢測波的頻率。</p><p> 3.2 整體結(jié)構(gòu)設(shè)計</p><p> 3.3 頻率發(fā)生器的主機(jī)電路設(shè)
28、計</p><p> ATC89C51[可以完成ISP在線編程功能,ATC89C51內(nèi)部有EEPROM,可以在程序中修改,斷電不丟失。還增加了兩級中斷優(yōu)先級,STC推出的系列51單片機(jī)芯片是全面兼容其它51單片機(jī)的,而且51單片機(jī)是主流大軍。</p><p> 1.89C51芯片介紹</p><p> 許多由關(guān)硬件設(shè)計中都使用到單片機(jī)89C51,其功能[7]比
29、以往的單片機(jī)強(qiáng)大的多。89C51引腳圖如圖3-1所示。</p><p> 圖3-1 89C51引腳圖</p><p><b> 芯片引腳功能:</b></p><p> 主電源引腳Vcc和Vss</p><p> ?Vcc(40腳):接+5V電壓;</p><p> ?Vss(20腳):
30、接地。</p><p> 89C51晶振接法如圖3-2。</p><p> 圖3-2 89C51晶振接法圖</p><p> 選用6MHz頻率的晶體,允許輸入的脈沖頻率為250kHz。電容的大小范圍為20pF~40pF,本設(shè)計選用30pF電容。</p><p><b> 2.單片機(jī)復(fù)位狀態(tài)</b></p&g
31、t;<p> 單片機(jī)的復(fù)位都是靠外部電路實現(xiàn)的,在時鐘電路工作后,只要在單片機(jī)的RST引腳上出現(xiàn)24個時鐘震蕩脈沖(2個機(jī)器周期)以上的高電平,單片機(jī)便實現(xiàn)初始化狀態(tài)復(fù)位。為了保證應(yīng)用系統(tǒng)可靠地復(fù)位,在設(shè)計復(fù)位電路時,通常使RST引腳保持10ms以上的高電平。只要保持高電平,則MCS-51單片機(jī)就循環(huán)復(fù)位;當(dāng)RST從高電平變?yōu)榈碗娖揭院?,MCS-51單片機(jī)從0000H地址開始執(zhí)行程序。在復(fù)位有效期間,ALE、 引腳輸出高
32、電平。</p><p> 89C51上電復(fù)位電路圖。</p><p> 圖3-3 89C51上電復(fù)位電路圖</p><p><b> 單片機(jī)復(fù)位狀態(tài)表。</b></p><p> 表 3-4 單片機(jī)復(fù)位狀態(tài)表</p><p><b> 注:XXX不定</b><
33、;/p><p> 復(fù)位后,P0口~P3口輸出高電平,且使這些準(zhǔn)雙向口皆處于輸入狀態(tài),并且將07H寫入棧指針SP(即設(shè)定堆棧底為07H),同時,將程序計數(shù)器PC和其余的特殊功能寄存器清為0(不定的位除外)。但復(fù)位不影響單片機(jī)內(nèi)部的RAM狀態(tài)</p><p><b> 3. 顯示器</b></p><p> 在單片機(jī)系統(tǒng)中,常用的顯示器有:發(fā)光二
34、極管顯示器,簡稱LED;液晶顯示器,簡稱LCD;熒光管顯示器。而發(fā)光二極管顯示又分為固定段顯示和可以拼裝的大型字段顯示,此外還有共陽極和共陰極之分等。</p><p> LED段顯示器結(jié)構(gòu)與原理</p><p> LED顯示器是由發(fā)光二極管顯示字段組成的顯示塊,有7段和“米”字段之分。這種顯示塊有共陽極和共陰極兩種。此外,顯示塊中還有一個圓點型發(fā)光二極管(在圖中以dP表示)用于顯示小數(shù)
35、點。通過發(fā)光二極管亮、暗的不同組,可以顯示多中數(shù)字、字母以及其他符號。</p><p> LED顯示塊中的發(fā)光二極管共有兩種連接方法:</p><p><b> (1)共陽極接法</b></p><p> 發(fā)光二極管的陽極連在一起構(gòu)成公共陽極。使用時公共陽極接+5V,這樣,陰極端輸入低電平的段的發(fā)光二極管被點亮,相應(yīng)的段被顯示;而輸入高電
36、平的段則不點亮。</p><p><b> (2)共陰極接法</b></p><p> 發(fā)光二極管的陰極連在一起構(gòu)成公共陰極。使用時公共陰極接地,這樣,陽極端輸入高電平的段的發(fā)光二極管被點亮,相應(yīng)的段被顯示;而輸入低電平的段則不點亮。</p><p> 數(shù)碼管引腳如圖3-5。</p><p> 圖3-5 數(shù)碼管引
37、腳圖</p><p> 共陰和共陽結(jié)構(gòu)的LED顯示器各筆劃段名和安排位置是相同的。當(dāng)二極管導(dǎo)通時,相應(yīng)的筆劃段發(fā)亮,由發(fā)亮的筆劃段組合而顯示的各種字符。8個筆劃段dP、g、f、e、d、c、b、a對應(yīng)于一個字節(jié)(8位)的D7、D6、D5、D4、D3、D2、D1、D0,于是用8位二進(jìn)制碼就可以表示欲顯示字符的字形代碼。例如,對于共陰LED顯示器,當(dāng)公共陰極接地(為零電平),而陽極dP、g、f、e、d、c、b、a各段
38、為0111011時,顯示器顯示"P"字符,即對于共陰極LED顯示器,“P”字符的字形碼是73H。如果是共陽LED顯示器,公共陽極接高電平,顯示“P”字符的字形代碼應(yīng)為10001100(8CH)。用LED顯示器顯示十進(jìn)制轉(zhuǎn)換成十六進(jìn)制數(shù)的字形代碼在表3-6中列出。</p><p> 表3-6 LED十六進(jìn)制的數(shù)字代碼表</p><p><b> 4. 定時器
39、部分:</b></p><p> AT89C51本身帶16位定時計數(shù)器,可以很方便的采用它來完成定時與計數(shù)功能,本設(shè)計需要一個可以自動裝初值的計數(shù)器和一個可以定時盡量長的定時器。因此選用計數(shù)器T0和定時器T1。T0選用工作方式2可以自動重裝初值,T1選用工作方式1可以定時盡量長的時間,保證計時時間的充足。</p><p> 3.4 系統(tǒng)整體原理圖</p>&l
40、t;p> 第四章 系統(tǒng)軟件設(shè)計</p><p> 4.1 測頻軟件實現(xiàn)原理</p><p> 測頻軟件的實現(xiàn)是基于電路系統(tǒng)來進(jìn)行設(shè)計的。本次設(shè)計采用的是脈沖定時測頻法,所以在軟件實現(xiàn)上基本遵照系統(tǒng)的設(shè)計原理,進(jìn)行測頻。本次軟件設(shè)計語言采用匯編語言,在電腦上編譯通過后即可下載到電路上的實際電路中,即可實現(xiàn)頻率的測量。</p><p><b>
41、4.2 程序清單</b></p><p> 單片機(jī)主要完成的工作是:開機(jī)顯示,設(shè)定定時器計數(shù)器初值,波頻率采集并計算,控制數(shù)碼管顯示處理后的數(shù)據(jù)。</p><p> 程序見附件。 </p><p><b> 總結(jié)</b></p><p> 通過此次設(shè)計,我們小組的成員都受到了極大的鍛煉,對團(tuán)隊合
42、作的重要性有了深刻認(rèn)識,雖然我們面對的是一個相對簡單的課題,但由于初次進(jìn)行基于單片機(jī)的課題設(shè)計,所以在設(shè)計過程中,我們遇到了一些困難,也經(jīng)歷一次又一次的困惑,最終我們嘗試著美化我們的設(shè)計,以實現(xiàn)更多的功能和提高可操縱性。經(jīng)過一周不斷研究與嘗試,最終成功的完成了對頻率計的設(shè)計。這不僅增強(qiáng)了我們對單片機(jī)課程設(shè)計與實踐的興趣,更掌握了程序設(shè)計各個模塊的設(shè)計方法與連接。具備了這些基本知識,為今后的自主學(xué)習(xí)奠定了良好的基礎(chǔ)。</p>
43、<p> 本設(shè)計綜合性較高,設(shè)計的時候一開始找不到頭緒,不知道應(yīng)該從哪下手,</p><p> 直到小組討論后,才弄清楚頻率計設(shè)計中應(yīng)該包括哪些部分,然后一起討論寫出了基本程序。然而遇到的挫折這不僅僅在于編程,再后來的調(diào)試過程中先后出現(xiàn)了各種問題,比如程序跳轉(zhuǎn)出現(xiàn)問題,按鍵沒有反應(yīng),調(diào)試沒有反應(yīng)等等。經(jīng)過一次次的失敗,一次次的編譯執(zhí)行,最終能夠正確的測量和顯示頻率。</p><
44、p> 本次設(shè)計是以AT89C51為控制核心的頻率計。系統(tǒng)由采樣電路、控制芯片、顯示組成。通過單片機(jī)控制定時與采樣,采集外部波的周期進(jìn)而計算出頻率。通過單片機(jī)程控使最終處理結(jié)果顯示在數(shù)碼管上。此頻率計可以完成中頻波的頻率采集顯示。但是本設(shè)計還存在很多不足,對于高頻和低頻信號采集不準(zhǔn)確,采集范圍不太廣。希望在以后的學(xué)習(xí)中能逐步改善。</p><p> 課程設(shè)計過程是一個不斷追求成功與完美的過程,然而這個過程
45、確實給我們教育最深刻,我們小組一起討論,在加深了我們友誼的同時教會了我們對待科學(xué)工作要有謹(jǐn)慎的態(tài)度,也為我們將來走向工作崗位奠定了基礎(chǔ)。</p><p><b> 參考文獻(xiàn)</b></p><p> 【1】胡漢才 單片機(jī)原理及其接口技術(shù)(第三版)清華大學(xué)出版社</p><p> 【2】黃慶華,張永格.單片機(jī)開發(fā)技術(shù)和實訓(xùn)【M】. <
46、/p><p> 【3】電子技術(shù)基礎(chǔ)模擬部分(第四版)【M】.高等教育出版社.1996(2004重?。?</p><p> 【4】全國大學(xué)生電子設(shè)計競賽訓(xùn)練教程【M】.電子工業(yè)出版社.2005-1.</p><p> 【5】數(shù)字電子技術(shù)基礎(chǔ)【M】高等教育出版社.1998-12.</p><p> 【6】儀器儀表學(xué)報【J】第33卷第六期.20
47、12</p><p><b> 附錄</b></p><p><b> 附錄一:電路原理圖</b></p><p><b> 附錄二:軟件流程圖</b></p><p><b> 主程序流程圖</b></p><p><
48、;b> 子程序流程圖</b></p><p><b> 附錄三:程序設(shè)計</b></p><p> OVT EQU 30H ;計數(shù)器T0溢出次數(shù)</p><p> BCHU_1 EQU 40H ;多字節(jié)除法寄存器</p><p> BCHU_2
49、 EQU 41H</p><p> BCHU_3 EQU 42H</p><p> CHU_1 EQU 44H</p><p> CHU_2 EQU 45H</p><p> CHU_3 EQU 46H</p><p> M EQU 47H<
50、/p><p> N EQU 48H</p><p> ORG 0000H</p><p> LJMP MAIN</p><p> ORG 0000BH</p><p> LJMP BRT0</p><p> ORG 001BH</p>
51、<p> LJMP BRT1</p><p> ORG 0050H</p><p> MAIN: MOV A,#03H ;8155工作方式; </p><p> MOV DPTR,#8000H</p><p> MOV X @DPTR,A</p>&l
52、t;p> MOV A,#7FH </p><p> MOV DPTR,#8001H</p><p> MOV X @DPTR,A</p><p> MOV A,#0C0H </p><p> MOV DPTR,#8002H</p>
53、<p> MOV @DPTR,A</p><p> MOV TMOD,#16H ;計數(shù)器0工作于方式2,定時器1工作于</p><p> 方式1 </p><p> SETB EA
54、 ;開總中斷開關(guān) IE=10H</p><p> CLR ET0 ;關(guān)閉定時計數(shù)器開關(guān)</p><p> CLR ET1 ;關(guān)閉定時計數(shù)器開關(guān)</p><p> CLR TF0 ;清定時器0中斷申請標(biāo)志位</p><
55、p> CLR TF1 ;清定時器1中斷申請標(biāo)志位</p><p> LOOP: MOV P1,#0FFH</p><p> MOV A,P1</p><p> JB ACC.0,$</p><p> LCALL LOOP1 ;測試頻率</p
56、><p> LCALL LOOP2 ;數(shù)碼管顯示</p><p> LCALL DELAY</p><p> AJMP LOOP</p><p> BRT0: INC OVT</p><p><b> RETI</b></p><p
57、> BRT1: INC R2</p><p><b> RETI</b></p><p> LOOP1: MOV OVT,#00H 計數(shù)器溢出次數(shù)為0</p><p> MOV R2,#00H ;清零計數(shù)</p><p> MOV TH0,#0F6H<
58、/p><p> MOV TL0,#0FFH ;測10個脈沖</p><p> MOV TH1,#00H</p><p> MOV TL1,#00H ;定時器</p><p><b> CLR TF0</b></p><p><b&
59、gt; CLR ET0</b></p><p> SETB TR0 ;開計數(shù)器T0開關(guān)</p><p> JNB TF0,$ ;判斷脈沖是否到,到了開始計時 </p><p><b> CLR TF0</b></p>&l
60、t;p> SETB TR1 ;開定時器1</p><p> CLR TF1 ;清中斷標(biāo)志位</p><p> SETB ET1 ;開定時器1中斷 </p><p> JNB TF0,$ ;10個周期脈沖到
61、否,到了關(guān)閉定時器 </p><p><b> CLR TR0</b></p><p> CLR TR1 ;關(guān)閉定時計數(shù)器</p><p><b> CLR TF0</b></p><p> CLR TF1
62、 ;清中斷標(biāo)志位</p><p><b> CLR ET0</b></p><p> CLR ET1 ;關(guān)閉定時計數(shù)器中斷</p><p> MOV BCHU_1,#80H</p><p> MOV BCHU_2,#96H</p><p>
63、MOV BCHU_3,#98H</p><p> MOV BCHU_4,#00H ;公式F=10000000/T(1MS--50US)</p><p> MOV A,TL1</p><p> MOV CHU_1,A</p><p> MOV A,TH1</p><p> M
64、OV CHU_2,A</p><p> MOV A,R2</p><p> MOV CHU_3,A</p><p> MOV R0,#BCHU_1</p><p> MOV R1,#CHU_1</p><p> MOV M,#4</p><p> MOV
65、N,#3</p><p> LCALL LOOP3</p><p> MOV R7,BCHU_1</p><p> MOV R6,BCHU_2</p><p> MOV R5,BCHU_3</p><p><b> RET</b></p><p>&
66、lt;b> 除法程序</b></p><p> LOOP3 : MOV A,M</p><p><b> CLR C</b></p><p> SUBB A,N ;M-N字節(jié)差存到B</p><p><b> MOV B,A</b><
67、/p><p> ADD A,R0 ;取被除數(shù)第N字節(jié)</p><p> MOV R4,A ;保存到R4</p><p> XCH A,R0 ;R0指向被除數(shù)第N字節(jié),并把R0中的值放到A</p><p> MOV R3,A ;把R0中的值保存至R3&l
68、t;/p><p> MOV A,R1 ;除數(shù)頭字節(jié)地址送至A</p><p> MOV R5,A ;除數(shù)頭字節(jié)地址存至R5</p><p> MOV R2,#00H ;</p><p> CHU1 : MOV R7,N</p><p><b&
69、gt; CLR C</b></p><p> CHU2 : MOV A,@R0</p><p> SUBB A,@R1</p><p> MOV @R0,A</p><p><b> INC R0 </b></p><p><b> INC R1
70、</b></p><p> DJNZ R7,CHU2</p><p><b> MOV A,R4</b></p><p><b> MOV R0,A</b></p><p><b> MOV A,R5</b></p><p>
71、<b> MOV R1,A</b></p><p> JC NDVMN3 ;有錯位被除數(shù)比除數(shù)小</p><p><b> INC R2</b></p><p> SJMP CHU1</p><p> CHU3 : MOV R7,N</p><
72、p><b> CLR C</b></p><p> CHU4 : MOV A,@R0 ;恢復(fù)余數(shù)</p><p> ADDC A,@R1</p><p> MOV @R0,A</p><p><b> INC R0</b></p><
73、p><b> INC R1</b></p><p> DJNZ R7,CHU4</p><p> MOV A,#08H</p><p><b> MUL AB</b></p><p><b> MOV B,A</b></p>&
74、lt;p> CHU5 : MOV A,R3</p><p> MOV R0,A</p><p> MOV R7,M</p><p><b> CLR C</b></p><p> CHU6 : MOV A,@R0</p><p><b> RLC
75、 A</b></p><p> MOV @R0,A</p><p><b> INC R0</b></p><p> DJNZ R7,CHU6</p><p> MOV F0,C</p><p> MOV A,R4</p><p&g
76、t; MOV R0,A</p><p> MOV A,R5</p><p><b> MOV R1,A</b></p><p><b> MOV R7,N</b></p><p><b> CLR C</b></p><p>&l
77、t;b> RET</b></p><p><b> 顯示程序</b></p><p> LOOP2: MOV A,R5</p><p> PUSH A </p><p> ANL A ,#0FH</p><p> ADD
78、 A , #57 地址調(diào)整</p><p> MOVC A, @A+PC</p><p> MOV DPTR, #8001H</p><p> MOVX @DPTR, A</p><p> MOV DPTR, #8002H</p>
79、<p> MOV A , #0FEH</p><p> MOVX @DPTR, A</p><p><b> POP A</b></p><p><b> SWAP A</b></p><p> ANL A , #0FH</p&g
80、t;<p> ADD A , #45</p><p> MOVC A , @A+PC</p><p> MOV DPTR, #8001H</p><p> MOVX @DPTR , A</p><p> MOVDPTR , #8002H</p><p> MOV
81、 A , #0FDH</p><p> MOVX @DPTR, A</p><p><b> MOV A,R6</b></p><p> PUSH A </p><p> ANL A ,#0FH</p><p> ADD A
82、 , #33 地址調(diào)整</p><p> MOVC A , @A+PC</p><p> MOV DPTR , #8001H</p><p> MOVX @DPTR , A</p><p> MOVDPTR, #8002H</p><
83、p> MOV A , #0FBH</p><p> MOVX @DPTR A</p><p><b> POP A</b></p><p><b> SWAP A</b></p><p> ANL A , #0FH</p><p&
84、gt; ADD A , #21</p><p> MOVC A , @A+PC</p><p> MOV DPTR, #8001H</p><p> MOVX @DPTR , A</p><p> MOVDPTR, #8002H</p><p> MOV A ,
85、 #0F7H</p><p> MOVX @DPTR , A</p><p> MOV A,R7</p><p> PUSH A </p><p> ANL A ,#0FH</p><p> ADD A , #19
86、 地址調(diào)整</p><p> MOVC A, @A+PC</p><p> MOV DPTR, #8001H</p><p> MOVX @DPTR, A</p><p> MOVDPTR, #8002H</p><p> MOV A , #0EFH&
87、lt;/p><p> MOVX @DPTR , A</p><p><b> POP A</b></p><p><b> SWAP A</b></p><p> ANL A , #0FH</p><p> ADD A , #0
88、8H</p><p> MOVC A , @A+PC</p><p> MOV DPTR, #8001H</p><p> MOVX @DPTR, A</p><p> MOVDPTR , #8002H</p><p> MOV A , #0DFH</p>
89、<p> MOVX @DPTR, A</p><p><b> RET</b></p><p> TABLE: DB 3FH, 06H, 5BH, 4FH, 66H,</p><p> DB 6DH 7DH 07H 7FH 6FH </p><p> ;---
90、--------------------------------------------</p><p><b> ;延時子程序</b></p><p> DELAY: MOV R6,#0FH</p><p> DELAY1:MOV R7,#0FH</p><p> DELAY2:NOP</p>
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 單片機(jī)課程設(shè)計報告--- 基于單片機(jī)的頻率計設(shè)計
- 單片機(jī)課程設(shè)計--基于mcs-51單片機(jī)的溫度采集系統(tǒng)
- mcs-51系列單片機(jī)課程設(shè)計
- 課程設(shè)計----基于51系列單片機(jī)的頻率計
- 單片機(jī)頻率計課程設(shè)計
- 單片機(jī)頻率計課程設(shè)計
- 基于_mcs-51單片機(jī)的洗衣機(jī)課程設(shè)計
- 課程設(shè)計--基于單片機(jī)的頻率計
- 單片機(jī)課程設(shè)計--基于單片機(jī)數(shù)字頻率計設(shè)計
- 單片機(jī)課程設(shè)計--頻率計的設(shè)計
- 簡易頻率計單片機(jī)課程設(shè)計
- 單片機(jī)簡易頻率計課程設(shè)計
- 單片機(jī)課程設(shè)計報告---頻率計
- 基于單片機(jī)的頻率計設(shè)計
- 基于-單片機(jī)頻率計的設(shè)計
- 單片機(jī)課程設(shè)計報告-簡易頻率計
- 單片機(jī)簡易頻率計課程設(shè)計報告
- 基于單片機(jī)的頻率計設(shè)計設(shè)計
- 單片機(jī)課程設(shè)計--利用mcs-51單片機(jī)及相關(guān)芯片構(gòu)成收銀機(jī)
- 基于mcs-51單片機(jī)的可調(diào)頻率方波發(fā)生器課程設(shè)計
評論
0/150
提交評論