畢業(yè)設(shè)計(論文)基于單片機的水溫控制系統(tǒng)設(shè)計_第1頁
畢業(yè)設(shè)計(論文)基于單片機的水溫控制系統(tǒng)設(shè)計_第2頁
畢業(yè)設(shè)計(論文)基于單片機的水溫控制系統(tǒng)設(shè)計_第3頁
畢業(yè)設(shè)計(論文)基于單片機的水溫控制系統(tǒng)設(shè)計_第4頁
畢業(yè)設(shè)計(論文)基于單片機的水溫控制系統(tǒng)設(shè)計_第5頁
已閱讀5頁,還剩19頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、河南工程學(xué)院畢業(yè)設(shè)計(論文)基于單片機的水溫控制系統(tǒng)設(shè)計學(xué)生姓名 系(部) 機電工程系 專 業(yè) 機電一體化 指導(dǎo)教師 ( 2008.5.23 )摘要本系統(tǒng)是以嵌入式單片機為技術(shù)核心,對水溫進行檢測和控制的智能控制系統(tǒng)。主體部分包括人機接口部分,溫度檢測部分和溫度驅(qū)動控制部分;而溫度控制系統(tǒng)是一個一階純滯后慣性系統(tǒng),具有明顯的滯后特性;通過研究系統(tǒng)的控制算法,并對其進行具體分析、仿真,決定采用pid控制算法,該算法結(jié)構(gòu)簡單,技術(shù)成熟并有很好的控制性能- this sysem is an embedded system regard embedded one-chip computer as th

2、e techological core.it is an intelligent system with a monitor and control to water temperature.the main parts are man-machine interface part,montor temperature part and the drive control temperature part .and the temperature control system is one steps pure to lag behind the inertia system it has a

3、n obvious lagging characteristel adope is the pid controls algorithme,this algorithm is simple,mature technology and well control funtion. 目 錄第一章 引言3第一節(jié) 水溫控制系統(tǒng)概述3第二節(jié) 設(shè)計任務(wù)和主要內(nèi)容4 第二章 系統(tǒng)設(shè)計原理與方案論證 5第一節(jié) 總體框圖5第二節(jié) 總體方案論證6第三節(jié) 各部分電路方案論證7第三章 硬件電路設(shè)計與計算7第一節(jié) 溫度采樣和轉(zhuǎn)換電路8 第二節(jié) 溫度控制電路9第三節(jié) 單片機控制部分10第四節(jié) 鍵盤及數(shù)字顯示部分10第四章

4、實驗測試12第一節(jié) 循環(huán)顯示“hello888”12第二節(jié) 鍵盤及數(shù)字顯示結(jié)合13第三節(jié) 溫度設(shè)定和傳送電路15第四節(jié) pwm 電壓輸出電路20第五章 課程設(shè)計總結(jié)21第一節(jié) 此次水溫控制系統(tǒng)設(shè)計過程中遇到的問題及其解決方法22第二節(jié) 設(shè)計體會及對該設(shè)計的建議22參考文獻23致謝24 第一章 引言 水溫控制在工業(yè)及日常生活中應(yīng)用廣泛,分類較多,不同水溫控制系統(tǒng)的控制方法也不盡相同,其中以pid控制法最為常見。單片機控制部分采用at89c51單片機為核心,采用軟件編程,實現(xiàn)用pid算法來控制pwm波的產(chǎn)生,進而控制電爐的加熱來實現(xiàn)溫度控制。然而,單純的pid算法無法適應(yīng)不同的溫度環(huán)境,在某個特定

5、場合運行性能非常良好的溫度控制器,到了新環(huán)境往往無法很好勝任,甚至使系統(tǒng)變得不穩(wěn)定,需要重新改變 pid 調(diào)節(jié)參數(shù)值以取得佳性能。本文首先用pid算法來控制pwm波的產(chǎn)生,進而控制電爐的加熱來實現(xiàn)溫度控制。然后在模型參考自適應(yīng)算法 mrac基礎(chǔ)上,用單片機實現(xiàn)了自適應(yīng)控制,彌補了傳統(tǒng) pid控制結(jié)構(gòu)在特定場合下性能下降的不足,設(shè)計了一套實用的溫度測控系統(tǒng),使它在不同時間常數(shù)下均可以達到技術(shù)指標(biāo)。此外還有效減少了輸出繼電器的開關(guān)次數(shù),適用于環(huán)境參數(shù)經(jīng)常變化的小型水溫控制系統(tǒng)。第一節(jié) 水溫控制系統(tǒng)概述溫度控制是無論是在工業(yè)生產(chǎn)過程中,還是在日常生活中都起著非常重要的作用,過低的溫度或過高的溫度都會

6、使水資源失去應(yīng)有的作用,從而造成水資源的巨大浪費。特別是在當(dāng)前全球水資源極度缺乏的情況下,我們更應(yīng)該掌握好對水溫的控制,把身邊的水資源好好地利用起來。在現(xiàn)代冶金、石油、化工及電力生產(chǎn)過程中,溫度是極為重要而又普遍的熱工參數(shù)之一。在環(huán)境惡劣或溫度較高等場合下,為了保證生產(chǎn)過程正常安全地進行,提高產(chǎn)品的質(zhì)量和數(shù)量,以及減輕工人的勞動強度、節(jié)約能源,要求對加熱爐爐溫進行測、顯示、控制,使之達到工藝標(biāo)準(zhǔn),以單片機為核心設(shè)計的爐溫控制系統(tǒng),可以同時采集多個數(shù)據(jù),并將數(shù)據(jù)通過通訊口送至上位機進行顯示和控制。那么無論是哪種控制,我們都希望水溫控制系統(tǒng)能夠有很高的精確度(起碼是在滿足我們要求的范圍內(nèi)),幫助我

7、們實現(xiàn)我們想要的控制,解決身邊的問題。在計算機沒有發(fā)明之前,這些控制都是我們難以想象的。而當(dāng)今,隨著電 子行業(yè)的迅猛發(fā)展,計算機技術(shù)和傳感器技術(shù)的不斷改進,而且計算機和傳感器的價格也日益降低,可靠性逐步提高,用信息技術(shù)來實現(xiàn)水溫控制并提高控制的精確度不僅是可以達到的而且是容易實現(xiàn)的。用高新技術(shù)來解決工業(yè)生產(chǎn)問題, 排除生活用水問題實施對水溫的控制已成為我們電子行業(yè)的任務(wù),以此來加強工業(yè)化建設(shè),提高人民的生活水平。第二節(jié) 本設(shè)計任務(wù)和主要內(nèi)容1.基本要求一升水由1kw的電爐加熱,要求水溫可以在一定范圍內(nèi)由人工設(shè)定,并能在環(huán)境溫度降低時實現(xiàn)自動調(diào)整,以保持設(shè)定的溫度基本不變。2.主要性能指標(biāo) 溫度

8、設(shè)定范圍:,最小區(qū)分度為。 控制精度:溫度控制的靜態(tài)誤差。 用十進制數(shù)碼顯示實際水溫。3.擴展功能 具有通信能力,可接收其他數(shù)據(jù)設(shè)備發(fā)來的命令,或?qū)⒔Y(jié)果傳送到其他數(shù)據(jù)設(shè)備。 采用適當(dāng)?shù)目刂品椒▽崿F(xiàn)當(dāng)設(shè)定溫度或環(huán)境溫度突變時,減小系統(tǒng)的調(diào)節(jié)時間和超調(diào)量。 溫度控制的靜態(tài)誤差。第二章 系統(tǒng)設(shè)計原理與方案論證第一節(jié) 水溫控制系統(tǒng)總體框圖傳感器電爐信號放大功率放大a / d鍵盤顯示鍵盤單片機基本系統(tǒng)微型打印機圖2-1 單片機控制系統(tǒng)原理框圖該水溫控制系統(tǒng)主要由at89c51單片機控制系統(tǒng)、前向通道(溫度采樣轉(zhuǎn)換電路)、后向通道(溫度控制電路)、鍵盤顯示電路等四部分組成,其總體設(shè)計框圖如上圖所示。第二節(jié)

9、 總體方案論證(一)、方案論證與比較本題目是設(shè)計制作一個水溫控制系統(tǒng),對象為一升凈水,加熱器為1kw的電爐。 要求能在35-95范圍內(nèi)設(shè)定控制水溫,并具有較好的快速性和較小的超調(diào),以及十進制數(shù)碼管顯示等功能。1、總體方案設(shè)計及論證根據(jù)題目的要求,我們提出了以下的兩種方案:方案1:此方案是采用傳統(tǒng)的二位模擬控制方法,選用模擬電路,用電位器設(shè)定給定值,采用上下限比較電路將反饋的溫度值與給定的溫度值比較后,決定加熱或者不加熱。由于采用模擬控制方式,系統(tǒng)受環(huán)境的影響大,不能實現(xiàn)復(fù)雜的控制算法使控制精度做得教高,而且不能用數(shù)碼顯示和鍵盤設(shè)定。方案2:采用單片機at89c51為核心。采用了溫度傳感器ad5

10、90采集溫度變化信號,a/d采樣芯片adc0804將其轉(zhuǎn)換成數(shù)字信號并通過單片機處理后去控制溫度,使其達到穩(wěn)定。使用單片機具有編程靈活,控制簡單的優(yōu)點,使系統(tǒng)能簡單的實現(xiàn)溫度的控制及顯示,并且通過軟件編程能實現(xiàn)各種控制算法使系統(tǒng)還具有控制精度高的特點。比較上述兩種方案,方案2明顯的改善了方案1的不足及缺點,并具有控制簡單、控制溫度精度高的特點,因此本設(shè)計電路采用方案2。第三節(jié) 各部分電路方案論證本電路以單片機為基礎(chǔ)核心,系統(tǒng)由前向通道模塊、后向控制模塊、系統(tǒng)主模塊及鍵盤顯示摸塊等四大模塊組成?,F(xiàn)將各部分主要元件及電路做以下的論證:(1)、溫度采樣部分 方案1:采用熱敏電阻,可滿足35-95的測

11、量范圍,但熱敏電阻精度、重復(fù)性和可靠性都比較差,對于檢測精度小于1的溫度信號是不適用的。 方案2:采用溫度傳感器ad590。:ad590具有體積小、質(zhì)量輕、線形度好、性能穩(wěn)定等優(yōu)點。其測量范圍在-50- +150,滿刻度范圍誤差為0.3,當(dāng)電源電壓在510v之間,穩(wěn)定度為1時,誤差只有0.01,其各方面特性都滿足此系統(tǒng)的設(shè)計要求。此外ad590是溫度-電流傳感器,對于提高系統(tǒng)抗干擾能力有很大的幫助。 經(jīng)上述比較,方案2明顯優(yōu)于方案1,故選用方案2。(2)、鍵盤顯示部分 控制與顯示電路是反映電路性能、外觀的最直觀部分,所以此部分電路設(shè)計的好壞直接影響到電路的好壞。 方案1:采用可編程控制器827

12、9與數(shù)碼管及地址譯碼器74ls138組成,可編程/顯示器件8279實現(xiàn)對按鍵的掃描、消除抖動、提供led的顯示信號,并對led顯示控制。用8279和鍵盤組成的人機控制平臺,能夠方便的進行控制單片機的輸出。方案2:采用單片機at2051與地址譯碼器74ls138組成控制和掃描系統(tǒng),并用2051的串口對主電路的單片機進行通信,這種方案既能很好的控制鍵盤及顯示,又為主單片機大大的減少了程序的復(fù)雜性,而且具有體積小,價格便宜的特點。 對比兩種方案可知,方案1雖然也能很好的實現(xiàn)電路的要求,但考慮到電路設(shè)計的成本和電路整體的性能,我們采用方案2。(3)、控制電路部分方案1:采用8031芯片,其內(nèi)部沒有程序

13、存儲器,需要進行外部擴展,這給電路增加了復(fù)雜度。 方案2:本方案的cpu模塊采用2051芯片,其內(nèi)部有2kb單元的程序存儲器,不需外部擴展程序存儲器。但由于系統(tǒng)用到較多的i/o口,因此此芯片資源不夠用。 方案3:采用at89c51單片機,其內(nèi)部有8kb單元的程序存儲器,不需外部擴展程序存儲器,而且它的i/o口也足夠本次設(shè)計的要求。 比較這3種方案,綜合考慮單片機的各部分資源,因此此次設(shè)計選用方案3。設(shè)計電路圖如圖2-2所示:圖2-2at89c51單片機原理圖第三章 硬件電路設(shè)計與計算 本電路總體設(shè)計包括四部分:主機控制部分(89c51)、前向通道(溫度采樣和轉(zhuǎn)換電路)、后向通道(溫度控制電路)

14、、鍵盤顯示部分。第一節(jié) 溫度采樣和轉(zhuǎn)換電路系統(tǒng)的信號采樣和轉(zhuǎn)換電路主要由溫度傳感器ad590、基準(zhǔn)電壓7812、運算放大器op-07及a/d轉(zhuǎn)換電路adc0804四部分組成。設(shè)計電路圖如圖3-1所示:圖3-1溫度采樣和轉(zhuǎn)換電路原理圖1.ad590性能描述測量范圍在-50-+150,滿刻度范圍誤差為0.3,當(dāng)電源電壓在510v之間,穩(wěn)定度為1時,誤差只有0.01。ad590為電流型傳感器溫度每變化1其電流變化1ua在35和95時輸出電流分別為308.2ua和368.2ua。2.準(zhǔn)電壓7812提供12v標(biāo)準(zhǔn)電壓,它與運算放大器op-07和電阻組成信號轉(zhuǎn)換與放大電路,將35-95的溫度轉(zhuǎn)換為05v的

15、電壓信號。3.dc0804性能描述adc0804為8位逐次逼近型a/d轉(zhuǎn)換器,其輸入電壓范圍在05v,轉(zhuǎn)換速度為100us,轉(zhuǎn)換精度為0.39,對應(yīng)誤差為0.234。滿足系統(tǒng)的要求。4.路原理及參數(shù)計算 溫度采樣電路的基本原理是采用電流型溫度傳感器ad590將溫度的變化量轉(zhuǎn)換成電流量,再通過op-07將電流量轉(zhuǎn)換成電壓量,通過a/d轉(zhuǎn)換器adc0804將其轉(zhuǎn)換成數(shù)值量交由單片機處理。圖3-1中三端穩(wěn)壓7812作為基準(zhǔn)電壓,由運放虛短虛斷可知運放op-07的反向輸入端(2腳)的電壓為零伏。當(dāng)輸出電壓為零伏時(即uo=0v),令7812的輸出電壓為=12v,op-07的2腳處為a點,ad590的轉(zhuǎn)

16、換電流為。列出a點的結(jié)點方程如下: (1)由于系統(tǒng)控制的水溫范圍為35-95,所以當(dāng)輸出電壓為零伏時ad590的輸出電流為308.2ua,因此為了使ui的電位為零就必須使電流等于電流等于308.2ua,三端穩(wěn)壓7812的輸出電壓為12v所以由方程(1)得= =38.94k (2)由(2)取電阻r1=30k,r2=20k的電位器。又由于adc0804的輸入電壓范圍為05v,為了提高精度所以令水溫為95時adc0804的輸入電壓為5v(即uo=5v)。此時列出a點的結(jié)點方程如下: (3) 當(dāng)水溫為95時ad590的輸出電流為368.2ua。由方程式(3)得+=83.33k因此取=81k, =5k的

17、電位器。第二節(jié) 溫度控制電路此部分電路主要由光電耦合器moc3041和雙向可控硅bta12組成。采用脈寬調(diào)制輸出控制電爐與電源的接通和斷開比例,以通斷控制調(diào)壓法控制電爐的輸入功率。moc3041光電耦合器的耐壓值為400v,它的輸出級由過零觸發(fā)的雙向可控硅構(gòu)成,它控制著主電路雙向可控硅的導(dǎo)通和關(guān)閉。100電阻與0.01uf電容組成雙向可控硅保護電路。控制部分電路圖如圖3-2所示:圖3-2溫度控制電路原理圖第三節(jié) 單片機控制部分 此部分是電路的核心部分,系統(tǒng)的控制采用了單片機at89c51。單片機at89c51內(nèi)部有8kb單元的程序存儲器及256字節(jié)的數(shù)據(jù)存儲器。因此系統(tǒng)不必擴展外部程序存儲器和

18、數(shù)據(jù)存儲器這樣大大的減少了系統(tǒng)硬件部分。電路原理圖如圖3-3所示:圖3-3單片機控制電路部分原理圖第四節(jié) 鍵盤及數(shù)字顯示部分 在設(shè)計鍵盤/顯示電路時,我們使用單片機2051作為電路控制的核心,單片機2051具有一個全雙工的串行口采用串口,利用此串行口能夠方便的實現(xiàn)系統(tǒng)的控制和顯示功能。鍵盤/顯示接口電路如圖3-4所示圖3-4鍵盤/顯示部分電路 圖3-4中單片機2051的p1口接數(shù)碼管的8只引腳,這樣易于對數(shù)碼管的譯碼,使數(shù)碼管能顯示設(shè)計者所需的各數(shù)值、符號等等。單片機2051的p3.3、p3.4、p3.5接3-8譯碼器74l138,譯碼器的輸出端直接接八個數(shù)碼管的控制端和鍵盤,鍵盤掃描和顯示器

19、掃描同用端口這樣能大大 的減少單片機的i/o,減少硬件的花費。鍵盤的接法的差別直接影響到硬件和軟件的設(shè)計,考慮到單片機2051的端口資源有限,所以我們在設(shè)計中將傳統(tǒng)的4*4的鍵盤接成8*2的形式(如圖3-4),鍵盤的掃描除了和顯示共用的8個端外,另外的兩個端直接和2051的p3.2和p3.7相連。圖3-5 譯碼顯示部分如圖3-5的接法已經(jīng)完全用完了單片機的15個i/o口,有效的利用了單片機的資源。第4章 實驗測試第一節(jié) 循環(huán)顯示“hello888”編一小程序,實現(xiàn)數(shù)碼管八跑馬循環(huán)顯示“hello888”。源程序如下:rg 0000hhl:mov p1,#89hmov p3,#00hacall

20、delaymov p1,#86hmov p3,#08hacall delaymov p1,#0c7hmov p3,#10hacall delaymov p1,#0c7hmov p3,#18hacall delaymov p1,#0c0hmov p3,#20hacall delaymov p1,#80hmov p3,#28hacall delaymov p1,#80hmov p3,#30hacall delaymov p1,#80hmov p3,#38hacall delayljmp hldelay: mov r0,#0dfhd1: mov r1,#0ffhdjnz r1,$djnz r0,d1

21、ret第二節(jié) 鍵盤及數(shù)字顯示結(jié)合編一小程序,實現(xiàn)鍵盤及數(shù)字顯示結(jié)合按鍵盤1數(shù)碼管顯示1,按鍵盤2數(shù)碼管顯示3,按鍵盤3數(shù)碼管顯示3,按鍵盤4數(shù)碼管顯示4,按鍵盤5數(shù)碼管顯示5,按鍵盤6數(shù)碼管顯示6,按鍵盤7數(shù)碼管顯示7,按鍵盤8數(shù)碼管顯示8,按鍵盤9數(shù)碼管顯示9,按鍵盤10數(shù)碼管顯示a,按鍵盤11數(shù)碼管顯示b,按鍵盤12數(shù)碼管顯示c,按鍵盤13數(shù)碼管顯示d,按鍵盤14數(shù)碼管顯示e,按鍵盤15數(shù)碼管顯示f。源程序如下所示:org 0000hmov p1,#8chll:acall hhacall l0acall l1acall l2acall l3acall l4acall l5acall l6a

22、call l7sjmp lll0:clr p3.5clr p3.4clr p3.3jnb p3.2,h0jnb p3.7,e0reth0:jb p3.2,y0sjmp h0y0:mov p1,#88hacall hhsjmp lle0:jb p3.7,f0sjmp e0f0:mov p1,#0f9hacall hhsjmp lll1:clr p3.5clr p3.4setb p3.3jnb p3.2,h1jnb p3.7,e1reth1:jb p3.2,y1sjmp h1y1:mov p1,#83hacall hhljmp lle1:jb p3.7,f1sjmp e1f1:mov p1,#0a

23、4hacall hhsjmp lll2:clr p3.5setb p3.4clr p3.3jnb p3.2,h2jnb p3.7,e2reth2:jb p3.2,y2sjmp h2y2:mov p1,#0c6hacall hhljmp lle2:jb p3.7,f2sjmp e2f2:mov p1,#0b0hacall hhljmp lll3:clr p3.5setb p3.4setb p3.3jnb p3.2,h3jnb p3.7,e3reth3:jb p3.2,y3sjmp h3y3:mov p1,#0a1hacall hhljmp lle3:jb p3.7,f3sjmp e3f3:mov

24、 p1,#99hacall hhljmp lll4:setb p3.5clr p3.4clr p3.3jnb p3.2,h4jnb p3.7,e4reth4:jb p3.2,y4sjmp h4y4:mov p1,#86hacall hhljmp lle4:jb p3.7,f4sjmp e4f4:mov p1,#92hacall hhljmp lll5:setb p3.5clr p3.4setb p3.3jnb p3.2,h5jnb p3.7,e5reth5:jb p3.2,y5sjmp h5y5:mov p1,#8ehacall hhljmp lle5:jb p3.7,f5sjmp e5f5:

25、mov p1,#82hacall hhljmp lll6:setb p3.5setb p3.4clr p3.3jnb p3.2,h6jnb p3.7,e6reth6:jb p3.2,y6sjmp h6y6:mov p1,#89hacall hhljmp lle6:jb p3.7,f6sjmp e6f6:mov p1,#0f8hacall hhljmp lll7:setb p3.5setb p3.4setb p3.3jnb p3.2,h7jnb p3.7,e7reth7:jb p3.2,y7sjmp h7y7:mov p1,#0c7hacall hhljmp lle7:jb p3.7,f7sjm

26、p e7f7:mov p1,#80hacall hhljmp llhh:mov p3,#0ffhacall delaymov p3,#0f7hacall delaymov p3,#0efhacall delaymov p3,#0e7hacall delaymov p3,#0dfhacall delaymov p3,#0d7hacall delaymov p3,#0cfhacall delaymov p3,#0c7hacall delayretdelay:mov r0,#01hdal: mov r1,#9fhda2: nopnopnopnopdjnz r1,da1djnz r0,da2reten

27、d第三節(jié) 溫度設(shè)定和傳送電路編一小程序,實現(xiàn)溫度設(shè)定和傳送電路以下是雙機串口通訊主程序流程圖:圖4-1 雙機串口通訊流程圖;程序1-方式2兩位設(shè)定就不可的flaga bit 2ah.0flagb bit 2ah.1flag0 bit p3.3flag1 bit p3.4flag2 bit p3.5guan1 equ 30hguan2 equ 31hguan3 equ 32hguan4 equ 33hguan5 equ 34hguan6 equ 35hguan7 equ 36hguan8 equ 37horg 00hljmp starorg 23hljmp ckt;-初始設(shè)定star: mov

28、sp,#60h mov ie,#10010000b mov scon,#10010000b anl pcon,#0111111b mov tmod, #20h mov th1, #0f2h mov tl1, #0f2h setb tr1 mov guan2,#00h mov guan3,#00h mov guan6,#00h mov guan7,#00h clr flagb clr flaga mov dptr,#table;-主要執(zhí)行總程序zongsao:lcall showacall aasjmp zongsao;- -掃描按鍵是否按下子程序aa: s1:;- -0,5鍵 jnb flag

29、b ,s2 clr flag2 clr flag1 clr flag0 jb p3.2 ,next1 acall delay jb p3.2 ,next1 jnb p3.2 ,$ jb flaga ,ww1 mov guan7,#00h setb flaga ljmp next1 ww1: mov guan6 ,#00h clr flagb next1: jb p3.7 ,one1 acall delay jb p3.7 ,one1 jnb p3.7 ,$ jb flaga, mm1 mov guan7,#05h setb flaga ljmp one1 mm1: mov guan6, #05

30、h clr flagb one1: ljmp s2s2:;- -1,6鍵 jnb flagb, s3 clr flag2 clr flag1 setb flag0 jb p3.2 ,next2 lcall delay jb p3.2 ,next2 jnb p3.2 ,$ jb flaga ,ww2 mov guan7 ,#01h setb flaga ljmp next2 ww2: mov guan6 ,#01h clr flagb next2: jb p3.7 ,one2 lcall delay jb p3.7 ,one2 jnb p3.7 ,$ jb flaga ,mm2 mov guan

31、7,#06h setb flaga ljmp one2 mm2: mov guan6 ,#06h clr flagb one2: ljmp s3s3:;- -2,7鍵 jnb flagb ,s4 clr flag2 setb flag1 clr flag0 jb p3.2 ,next3 lcall delay jb p3.2 ,next3 jnb p3.2 ,$ jb flaga ,ww3 mov guan7 ,#02h setb flaga ljmp next3 ww3: mov guan6 ,#02h clr flagb next3: jb p3.7 ,one3 lcall delay j

32、b p3.7 ,one3 jnb p3.7 ,$ jb flaga ,mm3 mov guan7,#07h setb flagb ljmp one3 mm3: mov guan6 ,#07h clr flagb one3: ljmp s4s4: ;- 3,8鍵 jnb flagb ,s5 clr flag2 setb flag1 setb flag0 jb p3.2 ,next4 lcall delay jb p3.2 ,next4 jnb p3.2 ,$ jb flaga, ww4 mov guan7 ,#03h setb flaga ljmp next4 ww4: mov guan6,#0

33、3h clr flagb next4: jb p3.7 ,one4 lcall delay jb p3.7 ,one4 jnb p3.7 ,$ jb flaga ,mm4 mov guan7,#08h setb flaga ljmp one4 mm4: mov guan6 ,#08h clr flagb one4: ljmp s5s5:;- -4,9鍵 jnb flagb ,s6 setb flag2 clr flag1 clr flag0 jb p3.2 ,next5 lcall delay jb p3.2, next5 jnb p3.2 ,$ jb flaga ,ww5 mov guan7

34、 ,#04h setb flaga ljmp next5 ww5: mov guan6 ,#04h clr flagb next5: jb p3.7, one5 lcall delay jb p3.7 ,one5 jnb p3.7 ,$ jb flaga ,mm5 mov guan7,#09h setb flaga setb flagb ljmp one5 mm5: mov guan6 ,#09h clr flagb one5: ljmp s6s6:;- -設(shè)定鍵,清除(零)鍵 setb flag2 clr flag1 setb flag0 jb p3.2 ,next6 lcall delay

35、 jb p3.2,next6 jnb p3.2 ,$ setb flagb next6: jb p3.7 ,one6 lcall delay jb p3.7 ,one6 jnb p3.7 ,$ mov guan6,#00h mov guan7,#00h clr flaga setb flagb one6: ljmp s7s7:;- -發(fā)送鍵 setb flag2 setb flag1 clr flag0 jb p3.2 ,next7 lcall delay jb p3.2,next7 jnb p3.2 ,$ clr flagb clr flaga mov b,#0ah mov a,guan6

36、mul ab add a,guan7send: clr es mov sbuf,a jnb ti,$ clr ti setb esnext7: nop ret;- -顯示掃描子程序show: ;-guan8 setb flag0 setb flag1 setb flag2 mov p1,#0ceh acall delay2 ;-guan7 clr flag0 setb flag1 setb flag2 mov a ,guan7 movc a,a+dptr mov p1,a acall delay2 ;-guan6 setb flag0 clr flag1 setb flag2 mov a ,g

37、uan6 movc a,a+dptr mov p1,a acall delay2 ;-guan5 clr flag0 clr flag1 setb flag2 mov p1,#0c6h acall delay2 ;-guan4 setb flag0 setb flag1 clr flag2 mov p1,#0ceh acall delay2 ;-guan3 clr flag0 setb flag1 clr flag2 mov a ,guan3 movc a,a+dptr mov p1,a acall delay2 ;-guan2 setb flag0 clr flag1 clr flag2 m

38、ov a ,guan2 movc a,a+dptr mov p1,a acall delay2 clr flag0;-guan1 clr flag1 clr flag2 mov p1,#0c6h acall delay2ret;- -中斷子程序ckt: push acc push psw clr ri mov a,sbuf ; jnb ri,$ mov b,#10 div ab mov guan2,a mov guan3,b pop psw pop acc retidelay: ;- -消抖延時程序6ms mov r0,#3ch dl2:mov r1,#7dh dl1:nop nop djnz

39、 r1,dl1 djnz r0,dl2 ret delay2:;- -掃描延時程序 mov r0,#01h dl4:mov r1,#0a0h dl3:nop nop djnz r1,dl3 djnz r0,dl4 ret;- -數(shù)碼管顯示表table: db 0c0h,0f9h,0a4h,0b0h,99h db 92h,82h,0f8h,80h,90第四節(jié) pwm 電壓輸出電路編一小程序,實現(xiàn)pwm 電壓自動可調(diào)寬度脈沖波輸出電路圖4-2 自動可調(diào)寬度脈沖波輸出電路pout equ p1.0outbit equ 7fh org 0000h ajmp main org 000bh ajmp ctc_int org 0030hmain: mov tmod,#01h mov th0,#3ch mov tl0,#0b0h setb tr0 setb ea setb et0wait: sjmp waitctc_int: push

溫馨提示

  • 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. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論