課程設(shè)計(jì)(論文)單片機(jī)水溫控制系統(tǒng)設(shè)計(jì)_第1頁
課程設(shè)計(jì)(論文)單片機(jī)水溫控制系統(tǒng)設(shè)計(jì)_第2頁
課程設(shè)計(jì)(論文)單片機(jī)水溫控制系統(tǒng)設(shè)計(jì)_第3頁
課程設(shè)計(jì)(論文)單片機(jī)水溫控制系統(tǒng)設(shè)計(jì)_第4頁
課程設(shè)計(jì)(論文)單片機(jī)水溫控制系統(tǒng)設(shè)計(jì)_第5頁
已閱讀5頁,還剩34頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、 數(shù)理與信息工程學(xué)院課 程 設(shè) 計(jì) 題 目: 水溫控制系統(tǒng) 專 業(yè): 計(jì)算機(jī)科學(xué)與技術(shù)(專升本) 班 級(jí): 計(jì)本 056 姓 名: 學(xué)號(hào): 實(shí)驗(yàn)地點(diǎn):數(shù)理與信息工程學(xué)院 電子系統(tǒng)設(shè)計(jì)室指導(dǎo)老師: 成 績(jī): ( 2006.6 )目 錄第1節(jié) 引 言 1 1.1 水溫控制系統(tǒng)概述 11.2 設(shè)計(jì)任務(wù)與要求 11.3 系統(tǒng)組成 2第2節(jié) 系統(tǒng)硬件設(shè)計(jì) 22.1 系統(tǒng)總體設(shè)計(jì)框圖 22.2 溫度采樣電路 32.3 溫度控制電路 42.4 主機(jī)控制部分 42.5 鍵盤及數(shù)字顯示部分 52.6 微機(jī)控制及圖形顯示部分 6第3節(jié) 系統(tǒng)軟件設(shè)計(jì) 7 3.1 系統(tǒng)主程序設(shè)計(jì) 73.2 鍵盤顯示程序 8第4節(jié) 實(shí)

2、際測(cè)試 9 4.1 系統(tǒng)測(cè)試儀器 94.2 測(cè)試方法 94.3 測(cè)試結(jié)果 9第5節(jié) 結(jié)束語11參考文獻(xiàn) 12附錄 13單片機(jī)水溫控制系統(tǒng)數(shù)理與信息工程學(xué)院 05計(jì)算機(jī)專升本 章一娜指導(dǎo)教師:余水寶 張 勝第1節(jié) 引 言在現(xiàn)代冶金、石油、化工及電力生產(chǎn)過程中,溫度是極為重要而又普遍的熱工參數(shù)之一,在環(huán)境惡劣或溫度較高等場(chǎng)合,為了保證生產(chǎn)過程正常安全地進(jìn)行,提高產(chǎn)品的質(zhì)量和數(shù)量,以及減輕工人的勞動(dòng)強(qiáng)度、節(jié)約能源,要求對(duì)加熱爐爐溫進(jìn)行測(cè)、顯示、控制,使之達(dá)到工藝標(biāo)準(zhǔn)。如何更快、更準(zhǔn)確的控制所需的溫度是溫度控制技術(shù)的關(guān)鍵。1.1 水溫控制系統(tǒng)概述本文介紹的是一個(gè)以51單片機(jī)為控制核心的水溫控制系統(tǒng),此

3、系統(tǒng)通過人機(jī)交互設(shè)定控制溫度,采用增量型pid算法,通過脈寬調(diào)制控制電爐加熱,最終實(shí)現(xiàn)水溫的恒定。該系統(tǒng)具有溫度超調(diào)量小、調(diào)節(jié)時(shí)間短、靜態(tài)誤差小、測(cè)量精確、恒定溫度與設(shè)定溫度偏差小等優(yōu)點(diǎn),且控制方便、顯示直觀、性能穩(wěn)定、可靠性高。1.2 設(shè)計(jì)任務(wù)與要求系統(tǒng)的基本任務(wù)與要求:(1)系統(tǒng)的基本要求:一定量水由電爐加熱,要求水溫可以在一定范圍內(nèi)由人工設(shè)頂,并能在環(huán)境溫度降低時(shí)自動(dòng)實(shí)現(xiàn)調(diào)整,以保持設(shè)定的溫度基本不變。(2)主要性能指標(biāo)a.溫度設(shè)定范圍:溫度設(shè)定為4090最小區(qū)分度為1;b.控制精度:溫度控制的靜態(tài)誤差名1;c.用十進(jìn)制數(shù)碼顯示實(shí)際水溫;(3)擴(kuò)展功能a.具有通信能力,可接收其他數(shù)據(jù)設(shè)備

4、發(fā)朱的命令,或?qū)⒔Y(jié)果傳送到其他數(shù)據(jù)設(shè)備;b.采用適當(dāng)?shù)目刂品椒ǎ划?dāng)沒定溫度或環(huán)境溫度突變時(shí)減小系統(tǒng)的調(diào)節(jié)時(shí)間和超調(diào)號(hào)c.溫度控制的靜態(tài)誤差0.2;d.能自動(dòng)顯示水溫隨時(shí)間變化的曲線。1.3 系統(tǒng)組成本系統(tǒng)是一個(gè)典型的檢測(cè)、控制型應(yīng)用系統(tǒng),它要求系統(tǒng)完成從水溫檢測(cè)、信號(hào)處理、輸入、運(yùn)算到輸出控制電爐加熱功率以實(shí)現(xiàn)水溫控制的全過程。因此,以單片機(jī)為核心組成一個(gè)專用計(jì)算機(jī)應(yīng)用系統(tǒng),以滿足檢測(cè)、控制應(yīng)用類型的功能要求。另外,單片機(jī)的使用特為實(shí)現(xiàn)水溫的智能化控制以及提供完善的人機(jī)界面及多機(jī)通訊接口提供了可能,而這些功能在常規(guī)數(shù)字邏輯電路中往往是難以或無法實(shí)現(xiàn)的。根據(jù)設(shè)計(jì)任務(wù)基本要求,本系統(tǒng)應(yīng)具有以下基本

5、功能:(1)可以進(jìn)行溫度設(shè)定,并自動(dòng)調(diào)節(jié)水溫給定的溫度值。(2)可以調(diào)整pid控制參數(shù),滿足不同控制對(duì)象與控制品質(zhì)要求。(3)可以實(shí)時(shí)顯示給定溫度與水溫實(shí)測(cè)值。第2節(jié) 系統(tǒng)硬件設(shè)計(jì)本電路總體設(shè)計(jì)包括五部分:主機(jī)控制部分(89c52)、前向通道(溫度采樣電路)、后向通道(溫度控制電路)、鍵盤和數(shù)字顯示部分、微機(jī)控制及圖形顯示。2.1 系統(tǒng)總體設(shè)計(jì)框圖本系統(tǒng)以89c52單片機(jī)為核心,采用了溫度傳感器ad590,a/d采樣芯片adc0804,可控硅moc3041及pid算法實(shí)現(xiàn)對(duì)溫度的精確控制。系統(tǒng)框圖如圖2-1圖2-1 系統(tǒng)框圖2.2 溫度采樣電路系統(tǒng)的信號(hào)采集電路主要由溫度傳感器(ad590)、

6、基準(zhǔn)電壓(7812)及a/d轉(zhuǎn)換電路(adc0804)三部分組成。電路圖如圖2-2-1 圖2-2-1 溫度采樣電路原理圖(1)ad590性能描述 測(cè)量范圍在-50-+150,滿刻度范圍誤差為0.3,當(dāng)電源電壓在510v之間,穩(wěn)定度為1時(shí),誤差只有0.01 。ad590為電流型傳感器溫度每變化1其電流變化1ua在35和95時(shí)輸出電流分別為308.2ua 和368.2ua 。(2)adc0804性能描述 adc0804為8bit的一路a/d轉(zhuǎn)換器,其輸入電壓范圍在05v,轉(zhuǎn)換速度小于100us,轉(zhuǎn)換精度0.39。滿足系統(tǒng)的要求。(3)電路原理及參數(shù)計(jì)算 溫度采樣電路的基本原理是采用電流型溫度傳感器

7、ad590將溫度的變化量轉(zhuǎn)換成電流量,再將電流量轉(zhuǎn)換成電壓量通過a/d轉(zhuǎn)換器adc0804將其轉(zhuǎn)換成數(shù)值量交由單片機(jī)處理。如圖2-2-2 ubuca圖2-2-2圖中三端穩(wěn)壓7812作為基準(zhǔn)電壓,由運(yùn)放虛短虛斷可知運(yùn)放的反向輸入端ui的電壓為零伏。當(dāng)輸出電壓為零伏時(shí)(即uo=0v) 列出a點(diǎn)的結(jié)點(diǎn)方程如下:. (1) 由于系統(tǒng)控制的水溫范圍為35-95,所以當(dāng)輸出電壓為零伏時(shí)ad590的輸出電流為308.2ua,因此為了使ui的電位為零就必須使電流等于電流等于308.2ua, 三端穩(wěn)壓7812的輸出電壓為12v所以由方程(1)得 . . (2)由方程(2)的取電阻r2=30k , r1=10k的

8、電位器。由方程(2)的取電阻r2=30k , r1=10k的電位器。又由于adc0804的輸入電壓范圍為05v ,為了提高精度所以令水溫為95時(shí)adc0804的輸入電壓為5v(即uo=5v)。此時(shí)列出a點(diǎn)的結(jié)點(diǎn)方程如下: (3)當(dāng)水溫為95時(shí)ad590的輸出電流為368.2ua。由方程式(3)得r4+r5=83.33k因此取r5=81k , r5=5k的電位器。 2.3 溫度控制電路此部分電路主要由光電耦合器moc3041和雙向可控硅bta12組成。moc3041光電耦合器的耐壓值為400v,它的輸出級(jí)由過零觸發(fā)的雙向可控硅構(gòu)成,它控制著主電路雙向可控硅的導(dǎo)通和關(guān)閉。100電阻與0.01uf電

9、容組成雙向可控硅保護(hù)電路。控制部分電路圖如圖(2-3)。圖2-32.4 主機(jī)控制部分此部分是電路的核心部分,系統(tǒng)的控制采用了單片機(jī)89c52。單片機(jī)89c52內(nèi)部有8kb單元的程序存儲(chǔ)器及256字節(jié)的數(shù)據(jù)存儲(chǔ)器。因此系統(tǒng)不必?cái)U(kuò)展外部程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器這樣大大的減少了系統(tǒng)硬件部分。2.5 鍵盤及數(shù)字顯示部分在設(shè)計(jì)鍵盤/顯示電路時(shí),我們使用單片機(jī)2051做為電路控制的核心,單片機(jī)2051具有一個(gè)全雙工的串行口采用串口,利用此串行口能夠方便的實(shí)現(xiàn)系統(tǒng)的控制和顯示功能。鍵盤/顯示接口電路如圖2-5-1。 圖2-5-1 鍵盤/顯示部分電路圖2-5-1中單片機(jī)2051的p1口接數(shù)碼管的8只引腳,這樣易

10、于對(duì)數(shù)碼管的譯碼,使數(shù)碼管能顯示設(shè)計(jì)者所需的各數(shù)值、小數(shù)點(diǎn)、符號(hào)等等。單片機(jī)2051的p3.3、p3.4、p3.5接3-8譯碼器74l138,譯碼器的輸出端直接接八個(gè)數(shù)碼管的控制端和鍵盤,鍵盤掃描和顯示器掃描同用端口這樣能大大的減少單片機(jī)的i/o,減少硬件的花費(fèi)。鍵盤的接法的差別直接影響到硬件和軟件的設(shè)計(jì),考慮到單片機(jī)2051的端口資源有限,所以我們?cè)谠O(shè)計(jì)中將傳統(tǒng)的4*4的鍵盤接成8*2的形式(如圖2-5-2),鍵盤的掃描除了和顯示共用的8個(gè)端外,另外的兩個(gè)端直接和2051的p3.2和p3.7相連。圖2-5-2鍵盤接線如圖2-5-2的接法已經(jīng)完全用完了單片機(jī)的15個(gè)i/o口,有效的利用了單片機(jī)

11、的資源。2.6 微機(jī)控制及圖形顯示部分為了使系統(tǒng)具有更好的人機(jī)交換界面,在系統(tǒng)設(shè)計(jì)中我們通過visual basic 語言設(shè)計(jì)了微機(jī)控制界面。通過系統(tǒng)與微機(jī)的通信大大的提高了系統(tǒng)的各方面性能。其控制界面見圖2-6-1圖2-6-2由于單片機(jī)89c52串行口為ttl電平,而pc機(jī)為rs232電平,因此系統(tǒng)采用了max232電平轉(zhuǎn)換芯片。由于系統(tǒng)設(shè)計(jì)了多機(jī)通信的功能,即主系統(tǒng)(89c52)和鍵盤及數(shù)字顯示部分的通信、主系統(tǒng)(89c52)和pc機(jī) 的通信,所以在設(shè)計(jì)電路時(shí)要特別注意多機(jī)通信的時(shí)序及競(jìng)爭(zhēng)問題,針對(duì)此類問題在設(shè)計(jì)中我們特地的在兩根串行通信線上增加了如圖2-6-2的電路:如圖2-7由于主機(jī)部

12、分發(fā)送兩個(gè)從機(jī)都可以接受,因此主機(jī)的發(fā)送部分(及主機(jī) txd)不存在競(jìng)爭(zhēng)問題。而兩個(gè)從機(jī)可能同時(shí)向主機(jī)發(fā)送各類控制信息,因此會(huì)存在競(jìng)爭(zhēng)問題。其實(shí)圖2-6-2為一個(gè)與門電路,圖中r1為提升電阻,d1、d2為開關(guān)二極管,當(dāng)pc txd(或2051 txd)中有一個(gè)為低電平時(shí)主機(jī)rxd為低電平,同時(shí)另一個(gè)分機(jī)無效,當(dāng)pc txd(或2051 txd)中有一個(gè)為高電平時(shí)主機(jī)rxd為高低電平。圖2-6-1微機(jī)控制界面如圖2-6-1的微機(jī)控制界面,具有溫度控制及顯示的功能。圖中左半部分為水溫的實(shí)測(cè)溫度和給定溫度的數(shù)值顯示及對(duì)主系統(tǒng)(89c52部分)的控制界面,右半部分為水溫的實(shí)測(cè)溫度的逐點(diǎn)采樣及圖形顯示,

13、通過此界面可以更直觀的顯示溫度的變化,并且通過對(duì)圖形的保存能方便的打印出水溫的變化曲線。第3節(jié) 系統(tǒng)的軟件設(shè)計(jì)本系統(tǒng)的軟件系統(tǒng)主要可分為主程序、定時(shí)計(jì)數(shù)中斷程序、時(shí)間調(diào)整或定鬧設(shè)置程序三大模塊。在程序設(shè)計(jì)過程中,加強(qiáng)了部分軟件抗干擾措施,下面對(duì)部分模塊作介紹。3.1 主程序流程圖開機(jī) 機(jī)系統(tǒng)初始化顯示清零,各記數(shù)指針清零,設(shè)定定時(shí)器及中斷否是調(diào)用相映的中斷程序判斷是否有中斷?pid算法pwm波產(chǎn)生接收及發(fā)射串顯示數(shù)據(jù)pc機(jī)通信子程序 圖3-1主程序流程圖各類數(shù)值轉(zhuǎn)換子程序主程序流程圖如圖4-2-1所示,程序主要完成以下的幾部分任務(wù):(1)初始化 設(shè)定各參數(shù)的初始值,設(shè)定各中斷及定時(shí)器。(2)接

14、收/發(fā)射 此部分程序主要完成數(shù)據(jù)的控制及顯示,其主要通過89c52單片機(jī)的全雙工串行口完成和鍵盤部分的雙向通信。(3)pc機(jī)通信 此部分完成與微機(jī)控制接口rs232的聯(lián)接及通信的控制。(4)數(shù)值轉(zhuǎn)換子程序 由于主程序中用到了很多的數(shù)值轉(zhuǎn)換及數(shù)值的運(yùn)算(如十進(jìn)制轉(zhuǎn)換成十六進(jìn)制、雙字節(jié)與單字節(jié)的除法運(yùn)算等等),為了程序調(diào)用的方便,特地將其編寫成子程序的形式。3.2 鍵盤顯示程序圖3-2定水溫、顯示溫度、確定、取消、清零、輸出,均為各種子程序,1、2、3、4、5、6代表個(gè)子程序的應(yīng)用程序。開機(jī) 機(jī)系統(tǒng)初始化顯示清零,各記數(shù)指針清零否判斷是否有鍵按下?是消除顫抖設(shè)定水溫顯示溫度確定單步清零取消輸出輸出

15、654321 圖3-2程序第4節(jié) 系統(tǒng)調(diào)試與測(cè)試結(jié)果分析4.1 系統(tǒng)測(cè)試儀器:雙路跟蹤穩(wěn)壓穩(wěn)流電源dh1718e-5直流穩(wěn)壓電源數(shù)字示波器tektronix tds1002偉福e6000/l 仿真器多功能數(shù)字表gdm-8145數(shù)字萬用表p4 cpu2.4 內(nèi)存261.616ram haier機(jī)。0100溫度計(jì)、調(diào)溫電熱杯、秒表4.2 測(cè)試方法(1)在調(diào)溫電熱杯中放入1升清水,電熱杯和控制系統(tǒng)相連,給系統(tǒng)上電,系統(tǒng)進(jìn)入準(zhǔn)備工作狀態(tài)。(2)用溫度計(jì)測(cè)量及調(diào)節(jié)水杯中清水,水穩(wěn)為35,給系統(tǒng)調(diào)零。分別設(shè)定溫度為40、45、50、60、70、75、80、90,觀察設(shè)定溫度和實(shí)際溫度,并記錄數(shù)據(jù)。填寫表4

16、-1。觀察水溫變化的動(dòng)態(tài)情況,并記溫度穩(wěn)定的時(shí)間。填寫表4-2。4.3 測(cè)試結(jié)果(1)給定溫度與實(shí)測(cè)溫度的數(shù)據(jù)對(duì)比如表4-1表4-1 誤差分析表設(shè)定溫度()實(shí)測(cè)溫度()絕對(duì)誤差()相對(duì)誤差()設(shè)定溫度()實(shí)測(cè)溫度()絕對(duì)誤差()相對(duì)誤差()13535004606111.642404112.435747511.3334544-1-2.276818211.22從表4-1中的數(shù)據(jù)可知,系統(tǒng)的誤差基本穩(wěn)定在正負(fù)1基本滿足系統(tǒng)的設(shè)計(jì)要求。(2)溫度穩(wěn)定和時(shí)間的關(guān)系設(shè)定溫度為50,每隔30s記錄實(shí)測(cè)溫度如表4-2表4-2 溫度穩(wěn)定速度關(guān)系表(設(shè)定溫度50)測(cè)量時(shí)間(分)0.5分1分1.5分2.0分2.5分

17、3.5分4.0分實(shí)測(cè)溫度35374043485255測(cè)量時(shí)間(分)4.5分5.0分5.5分6.0分6.5分實(shí)測(cè)溫度5249515051從表4-2中的數(shù)據(jù)可知,系統(tǒng)運(yùn)行5分鐘時(shí)系統(tǒng)基本達(dá)到穩(wěn)定。由微機(jī)逐點(diǎn)采樣所的曲線圖如圖4-1所示50 圖4-1 溫度變化圖結(jié)束語本系統(tǒng)結(jié)構(gòu)簡(jiǎn)單,溫度控制靈活、檢測(cè)準(zhǔn)確。增量型pid算法使得溫度控制靈活,控制精確,存在的缺點(diǎn)是此系統(tǒng)中的pid的算法只實(shí)現(xiàn)了i的積分部分,控制不是非常準(zhǔn)確,如果把p,d兩部分都加進(jìn)去,浮點(diǎn)運(yùn)算也包含進(jìn)去,就更加完美了,但是這樣復(fù)雜的程序在單片機(jī)中無法實(shí)現(xiàn),需要借助計(jì)算機(jī)的軟件功能,如:c語言等。參考文獻(xiàn)1 電子系統(tǒng)設(shè)計(jì)(第三版)何小艇

18、.浙江大學(xué)出版社.2004 2 8051單片機(jī)實(shí)踐與應(yīng)用 吳金戎.清華大學(xué)出版社.20013 模擬電子技術(shù)基礎(chǔ)簡(jiǎn)明教程 楊素行.高等教育出版社.19974 電路設(shè)計(jì)與制版protel99高級(jí)應(yīng)用 趙晶.人民郵電出版社.20005 visual basic串行通信工程開發(fā)實(shí)例導(dǎo)航 許浩. 人民郵電出版社.20037 電子線路設(shè)計(jì)、實(shí)驗(yàn)、測(cè)試 謝自美.華中科技大學(xué)出版社.2000附 錄源程序1 人機(jī)鍵盤顯示-flag bit 2ah.0flag10 bit p3.2flag11 bit p3.3flag12 bit p3.4flag13 bit p3.5flag14 bit p3.7guan8 e

19、qu 20hguan7 equ 21hguan6 equ 22hguan5 equ 23hguan4 equ 24hguan3 equ 25hguan2 equ 26hguan1 equ 27hshftn equ 28hcount equ 29h- org 00h jmp start org 0bh jmp timer0 org 23h jmp sint- 主程序 -start : mov sp,#50h mov tmod,#00100001b mov ie,#10010010b mov ip,#00010000b mov scon,#01010000b anl pcon,#01111111b

20、 mov tl1,#0f4h mov th1,#0f4h mov th0,#high(65536-50000) mov tl0,#low(65536-50000) mov guan8,#11h ;數(shù)碼管8 從左向右數(shù) mov guan7,#11h ;數(shù)碼管7 mov guan6,#11h ;數(shù)碼管6 mov guan5,#11h ;數(shù)碼管5 mov guan4,#11h ;數(shù)碼管4 mov guan3,#11h ;數(shù)碼管3 mov guan2,#11h ;數(shù)碼管2 mov guan1,#11h ;數(shù)碼管1 mov shftn,#00h mov count,#0 clr flag mov r5,

21、#4 mov r6,#0 mov 2bh,#10 mov 40h,#3 mov 30h,#0ffh mov 31h,#0ffh mov 32h,#0ffh mov dptr,#table setb tr1- 顯示掃描按鍵掃描 - began: setb flag14 setb flag13 clr flag12 jnb flag11,looppf call display jmp began looppf: jb flag11,shao ;容許按鍵 call display setb flag14 setb flag13 clr flag12 jmp looppf shao: setb tr0

22、 inc shftn mov count,#1shaomiao: mov p1,#0ffh clr flag14 ; 8 setb flag13 setb flag12 jnb flag10,loop jmp nextloop: jb flag10,loop1 ;數(shù)字7 call display clr flag14 setb flag13 setb flag12 jmp looploop1: mov r7,#11h inc shftn mov r0,#shftn jmp panduan-next: clr flag14 ; 7 clr flag13 setb flag12 jnb flag1

23、0,loopa jmp next1loopa: jb flag10,loop2 ;數(shù)字3 call display clr flag14 clr flag13 setb flag12 jmp loopaloop2: mov r7,#29h inc shftn mov r0,#shftn jmp panduan-next1: setb flag14 ; 6 setb flag13 setb flag12 jnb flag10,loopb jnb flag11,looppb jmp next2loopb: jb flag10,loop3 ;數(shù)字鍵2 call display setb flag14

24、 setb flag13 setb flag12 jmp loopblooppb: jb flag11,clear ;清零鍵 call display setb flag14 setb flag13 setb flag12 jmp looppbloop3: mov r7,#7dh inc shftn mov r0,#shftn jmp panduan- 清零 -clear: mov guan8,#11h mov guan7,#11h mov guan6,#11h mov guan5,#11h mov guan4,#11h mov guan3,#11h mov guan2,#11h mov gu

25、an1,#11h mov shftn,#0 clr tr0 mov 30h,#0ffh mov 31h,#0ffh mov 32h,#0ffh jmp began-next2: setb flag14 ; 5 clr flag13 setb flag12 jnb flag10,loopc jmp next3loopc: jb flag10,loop4 ;數(shù)字鍵6 call display setb flag14 clr flag13 setb flag12 jmp loopcloop4: mov r7,#23h inc shftn mov r0,#shftn jmp panduannext3:

26、 setb flag14 - setb flag13 clr flag12 jnb flag10,loopd jnb flag11,looppd jmp next4loopd: jb flag10,loop5 ;數(shù)字鍵1 call display setb flag14 setb flag13 clr flag12 jmp loopdlooppd: jb flag11,loopp5 ;負(fù)鍵 call display setb flag14 setb flag13 clr flag12 jmp looppdloop5: mov r7,#1dh inc shftn mov r0,#shftn jm

27、p panduanloopp5: mov guan5,#0fdh jmp xianshinext4: clr flag14 - setb flag13 clr flag12 jnb flag10,loope jnb flag11,looppe jmp next5loope: jb flag10,loop6 ;數(shù)字鍵5 call display clr flag14 setb flag13 clr flag12 jmp loopelooppe: jb flag11,loopp6 ;數(shù)字鍵9 call display clr flag14 setb flag13 clr flag12 jmp lo

28、oppeloop6: mov r7,#81h inc shftn mov r0,#shftn jmp panduanloopp6: mov r7,#09h inc shftn mov r0,#shftn jmp panduannext5: setb flag14 ;2 clr flag13 clr flag12 jnb flag10,loopf jmp next6loopf: jb flag10,loop7 ;數(shù)字鍵0 call display setb flag14 clr flag13 clr flag12 jmp loopfloop7: mov r7,#89h inc shftn mov

29、 r0,#shftn jmp panduannext6: clr flag14 ; 1 clr flag13 clr flag12 jnb flag10,loopg jnb flag11,looppg jmp xianshiloopg: jb flag10,loop8 ;數(shù)字鍵4 call display clr flag14 clr flag13 clr flag12 jmp loopglooppg: jb flag11,loopp8 ;數(shù)字鍵8 call display clr flag14 clr flag13 clr flag12 jmp looppgloop8: mov r7,#4d

30、h inc shftn mov r0,#shftn jmp panduanloopp8: mov r7,#01h inc shftn mov r0,#shftn jmp panduan jmp xianshi;panduan:n0: cjne r0,#2,n1 mov count,r0 jmp q1n1: cjne r0,#3,n2 mov count,r0 jmp q2n2: cjne r0,#4,n3 mov count,r0 jmp q3n3: nop nop jmp start- 超位按鍵無效 -n4: nop nop jmp startq1: mov guan1,r7 jmp xia

31、nshiq2: mov guan2,r7 jmp xianshiq3: mov guan3,r7 nop nop jmp q4q4: nop nop- 步進(jìn)減 - call display clr flag14 setb flag13 setb flag12 loopp00: jnb flag11,loopp nop nop call display jmp looppc01 loopp: jb flag11,decr ;步進(jìn)減 call display clr flag14 setb flag13 setb flag12 jmp loopp decr : mov r1,#guan3 call

32、 numberj mov a,r1 cjne a,#0,ww0 mov guan3,#09h mov r1,#guan2 call numberj mov a,r1 cjne a,#0,ww10 mov guan2,#09h mov r1,#guan1 call numberj mov a,r1 cjne a,#0,ww11 mov guan1,#09h mov guan2,#09h mov guan3,#09h jmp looppc0ww11: dec a movc a,a+dptr mov guan1,a jmp looppc0-ww10: dec a movc a,a+dptr mov guan2,a call display jmp looppc0ww0: dec a movc a,a+dptr mov guan3,a call display jmp looppc0- 步進(jìn)加 -looppc01: setb flag14 ; 5 clr flag13 setb flag12looppc0: jnb flag11,looppc nop nop call display jmp dead01looppc: jb flag11,incr ;步進(jìn)加 call display setb f

溫馨提示

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