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

下載本文檔

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

文檔簡介

1、評語:成績:簽名:日期:學(xué)院課程設(shè)計(jì)報(bào)告書 課程名稱: 單片機(jī)控制系統(tǒng)課程設(shè)計(jì) 題 目: 基于單片機(jī)的水溫控制系統(tǒng)系 (院): 學(xué) 期: 專業(yè)班級: 姓 名: 學(xué) 號: 1.引言溫度是工業(yè)對象中主要的被控參數(shù)之一,例如:在冶金工業(yè)、化工生產(chǎn)、電力工程、造紙行業(yè)、機(jī)械制造和食品加工等諸多領(lǐng)域中,人們都需要對各類加熱爐、熱處理爐、反應(yīng)爐和鍋爐中的溫度進(jìn)行檢測和控制。電阻爐爐溫控制系統(tǒng)的控制過程是:單片機(jī)定時(shí)對爐溫進(jìn)行檢測,經(jīng)A/D轉(zhuǎn)換芯片得到相應(yīng)的數(shù)字量,經(jīng)過計(jì)算機(jī)進(jìn)行數(shù)據(jù)處理,得到應(yīng)有的控制量,去控制電阻爐進(jìn)行加熱,從而實(shí)現(xiàn)對溫度的控制。進(jìn)行系統(tǒng)設(shè)計(jì)時(shí)應(yīng)考慮如下問題:爐溫變化規(guī)律的控制,即爐溫按

2、預(yù)定的溫度時(shí)間關(guān)系變化,這主要在設(shè)計(jì)控制程序時(shí)加以考慮。電阻爐的溫度控制范圍為:50200,這就涉及到測溫元件、電爐功率的選擇,控制精度、超調(diào)量等指標(biāo),涉及到A/D轉(zhuǎn)換精度、控制規(guī)律選擇等。1.1設(shè)計(jì)目的1. 在學(xué)習(xí)微機(jī)原理、單片機(jī)原理及應(yīng)用、計(jì)算機(jī)控制技術(shù)、控制理論與系統(tǒng)的基礎(chǔ)上,掌握單片機(jī)控制系統(tǒng)的設(shè)計(jì)方法與步驟;2. 了解單片機(jī)控制系統(tǒng)構(gòu)造的特點(diǎn)、組成和接口電路;3. 掌握單片機(jī)軟硬件結(jié)合設(shè)計(jì)整個(gè)系統(tǒng)的原理。2.控制系統(tǒng)的基本原理2.1設(shè)計(jì)內(nèi)容及要求電阻加熱爐用于合金鋼產(chǎn)品熱力特性實(shí)驗(yàn),電阻加熱爐用電阻絲提供熱功率,使其在預(yù)定的時(shí)間內(nèi)將爐內(nèi)溫度穩(wěn)定到給定的溫度值。本控制對象電阻加熱爐功率

3、為8KW,由220V交流電源供電,采用雙向可控硅進(jìn)行控制。電阻加熱爐系統(tǒng)模型如圖1所示。圖1 電阻加熱爐系統(tǒng)模型工藝要求:按照規(guī)定的曲線進(jìn)行升溫和降溫7,溫度控制范圍為50200,升溫和降溫階段的溫度控制精度為±5,保溫階段溫度控制精度為±2。系統(tǒng)可以實(shí)現(xiàn)的基本功能:微機(jī)自動(dòng)調(diào)節(jié)功能:正常工作狀態(tài)下,系統(tǒng)投入自動(dòng)控制。模擬手動(dòng)操作:當(dāng)系統(tǒng)發(fā)生異常時(shí),投入手動(dòng)控制。微機(jī)監(jiān)控功能:顯示當(dāng)前被控量的設(shè)定值、實(shí)際值、控制量的輸出值,參數(shù)報(bào)警時(shí)有燈光報(bào)警。2.2對象分析在本設(shè)計(jì)中,要求電阻爐爐內(nèi)的溫度,按照圖2所示的規(guī)律變化,從室溫開始到50為自由升溫階段,當(dāng)溫度一旦到達(dá)50,就進(jìn)入

4、系統(tǒng)調(diào)節(jié),當(dāng)溫度到達(dá)200時(shí)進(jìn)入保溫段,要始終在系統(tǒng)控制下,以保證所需的爐內(nèi)溫度的精度。加工結(jié)束,要進(jìn)行降溫控制。保溫段的時(shí)間為6001800s。過渡過程時(shí)間:即從開始控制到進(jìn)入保溫階段的時(shí)間要小于600s。在保溫段當(dāng)溫度高于202或低于198時(shí)要報(bào)警,在升溫和降溫階段也要進(jìn)行控制,使?fàn)t內(nèi)溫度按照曲線的斜率升或降。計(jì)算機(jī)定時(shí)對爐溫進(jìn)行測量和控制一次,爐內(nèi)溫度是由一鉑電阻溫度計(jì)來進(jìn)行測量,其信號經(jīng)放大送到模數(shù)轉(zhuǎn)換芯片,換算成相應(yīng)的數(shù)字量后,再送入計(jì)算機(jī)中進(jìn)行判別和運(yùn)算,得到應(yīng)有的電功率數(shù),經(jīng)過數(shù)模轉(zhuǎn)換芯片轉(zhuǎn)換成模擬量信號,供給可控硅功率調(diào)節(jié)器進(jìn)行調(diào)節(jié),使其達(dá)到爐溫變化曲線的要求。圖2 溫度曲線圖

5、3.系統(tǒng)硬件的設(shè)計(jì)和實(shí)現(xiàn)3.1系統(tǒng)硬件組成及工作原理采用8031單片機(jī)作為控制器,ADC0809模數(shù)轉(zhuǎn)換芯片為模擬量輸入,鉑電阻為溫度檢測元件,運(yùn)算放大器和可控硅作為功率放大,電阻爐為被控對象,組成電阻爐爐溫控制系統(tǒng),另外,系統(tǒng)還配有數(shù)字顯示,以便顯示和記錄生產(chǎn)過程中的溫度和輸出值。其工作過程為:熱電偶將爐溫變換為模擬電壓信號,經(jīng)低通濾波濾掉干擾信號后送放大器,信號放大為05V后送A/D轉(zhuǎn)換器,轉(zhuǎn)換為數(shù)字量送入計(jì)算機(jī)。系統(tǒng)的硬件結(jié)構(gòu)圖如圖3:圖3 系統(tǒng)的硬件結(jié)構(gòu)圖3.1.1單片機(jī)的選擇單片機(jī)機(jī)型:MCS51 8031(不包含ROM、EPROM)。8031內(nèi)部包括1個(gè)8位CPU,21個(gè)特殊功能寄

6、存器(SFR)4個(gè)8位并行I/O口,2個(gè)16位定時(shí)器/計(jì)數(shù)器,但片內(nèi)無程序存儲(chǔ)器,須外擴(kuò)EPROM芯片。MCS-51具有64kB程序存儲(chǔ)器尋址空間,它是用于存放用戶程序、數(shù)據(jù)和表格等信息。對于內(nèi)部無ROM的8031單片機(jī),它的程序存儲(chǔ)器必須進(jìn)行外部擴(kuò)展。在選擇程序存儲(chǔ)器芯片時(shí),首先必須滿足程序容量,其次在價(jià)格合理情況下盡量選用容量大的芯片。這樣做的話,使用的芯片少,從而接線簡單,芯片存儲(chǔ)容量大,程序調(diào)整余量也大。本設(shè)計(jì)中外部擴(kuò)展存儲(chǔ)器采用EPROM 2732,EPROM 2732的容量為4K×8位,4K表示有4×1024(22×210=212)個(gè)存儲(chǔ)單元,8位表示

7、每個(gè)單元存儲(chǔ)數(shù)據(jù)的寬度是8位。前者確定了地址線的位數(shù)是12位(A0A11),后者確定了數(shù)據(jù)線的位數(shù)是8位(O0O7)??臻g地址為64kB,此時(shí)單片機(jī)的端必須接地。強(qiáng)制CPU從外部程序存儲(chǔ)器讀取程序。對于內(nèi)部有ROM的8051等單片機(jī),正常運(yùn)行時(shí),則需接高電平,使CPU先從內(nèi)部的程序存儲(chǔ)中讀取程序,當(dāng)PC值超過內(nèi)部ROM的容量時(shí),才會(huì)轉(zhuǎn)向外部的程序存儲(chǔ)器讀取程序。首選8031的理由是:價(jià)格便宜,開發(fā)環(huán)境比較成熟。圖4 8031引腳圖8031是一個(gè)40引腳的集成電路,引腳如圖4所示,它有4個(gè)輸入輸出口(英文簡寫為IO口),每個(gè)口有8條線共占32個(gè)引腳。剩余8個(gè)引腳分別為:電源、地線、接石英晶體(兩

8、根)、復(fù)位和三個(gè)特殊功能引腳(ALE、EA、PSEN)。各引腳功能:4個(gè)IO口分別為P1、P2、P3、P4。每個(gè)引腳再加小標(biāo)號,比如P1.0P1.7等。在應(yīng)用中,PO口和P2口一般用于擴(kuò)展存儲(chǔ)器;P3口的和配合擴(kuò)展存儲(chǔ)器使用;只有P1腳可以全部獨(dú)立使用。3.1.2系統(tǒng)元器件的選擇傳感器的選擇:常用的溫度檢測元件主要有熱電偶、熱電阻、熱敏電阻等。熱電偶主要是利用兩種不同金屬的熱電效應(yīng),產(chǎn)生接觸電勢隨溫度變化而變化,從而達(dá)到測溫的目的。測量準(zhǔn)確,價(jià)格適中、測溫范圍寬,線性度較好。但其輸出電壓受冷端溫度影響,需要進(jìn)行冷端溫度補(bǔ)償。本題選用熱電偶類別鎳鉻康銅代號WRK分度號E,測量范圍0800,基本誤

9、差限±0.75%。執(zhí)行元件的選擇:電阻加熱爐采用晶閘管(SCR)來做執(zhí)行元件,結(jié)合電阻爐的具體要求,為了減少爐溫的紋波,對輸出通道采用較高的分辨率的方案,因此采用零點(diǎn)觸發(fā)的方式。變送器的選擇:因?yàn)橄到y(tǒng)要求有偏置,又需要對熱電偶進(jìn)行冷端補(bǔ)償,所以采用常規(guī)的溫度變送器包括毫伏安變送器和電流電壓變送器,毫伏安變送器將熱電偶檢測的溫度變?yōu)?10mA,電流電壓變送器將010mA的電流變?yōu)?5V的電壓送A/D轉(zhuǎn)換器??刂茊卧翰捎秒p向可控硅進(jìn)行控制,其功能相當(dāng)于兩個(gè)單向可控硅反向連接,具有雙向?qū)üδ?,其通斷狀態(tài)由控制極G決定。在控制極加上脈沖可使其正向或反向?qū)ā?.2爐溫采集為了將變化的溫度

10、值轉(zhuǎn)化為變化的電壓信號,以熱電偶作為檢測元件,根據(jù)被控溫度的測量范圍及控溫精度,選用鎳鉻康銅熱電偶,其分度號E,測量范圍0800。由于熱電偶輸出的電壓信號小而且很不穩(wěn)定,需要連接變送器,先由毫伏變送器XTR101將熱電偶輸出的毫伏電壓轉(zhuǎn)變成為010mA的電流信號。電流電壓變送器將010mA電流信號轉(zhuǎn)變成為05V的電壓信號。XTR101在電路中的作用還有對熱電偶進(jìn)行冷端溫度補(bǔ)償,并起到抑制零點(diǎn)漂移的作用。因?yàn)樗刂频膶?shí)際溫度在50200左右,即(20050150)所以選用8位A/D轉(zhuǎn)換器,其分辨率約為1.5/字,再加放大器偏置措施實(shí)現(xiàn)(通過調(diào)整放大器的零點(diǎn)來實(shí)現(xiàn)偏置)。本設(shè)計(jì)采用一般中速芯片AD

11、C0809。ADC0809是帶有8位A/D轉(zhuǎn)換器,8路多路開關(guān)以及微型計(jì)算機(jī)兼容的控制邏輯的CMOS組件,其轉(zhuǎn)換方法為逐次逼近型。8路的模擬開關(guān)由地址鎖存器和譯碼器控制,可以在8個(gè)通道中任意訪問一個(gè)通道的模擬信號。ADC0809的IN0和變送器輸出端相連,故I 輸入的0+5V范圍的模擬電壓經(jīng)A/D轉(zhuǎn)換后可有單片機(jī)通過程序從P0口輸入到它的內(nèi)部RAM單元中。圖5 8031與ADC0809的接口電路如圖5所示,當(dāng)P2.0和信號均為低電平時(shí),通過或非門,輸出一個(gè)正脈沖,使啟動(dòng)信號START及地址鎖存信號ALE有效,將地址送到地址總線。當(dāng)P2.0和RD均為低電平,經(jīng)或非門使DE出現(xiàn)高電平,這時(shí)可以從A

12、/D轉(zhuǎn)換器讀取數(shù)據(jù)。ADC0809的A、B、C分別接到單片機(jī)的P0.0、P0.1、P0.2引腳上。3.3爐溫控制電路8031對溫度的控制是通過雙向可控硅8實(shí)現(xiàn)的。如圖6所示,雙向可控硅管和加熱絲串接在交流220V、50Hz市電回路。在給定周期T內(nèi),8031只要改變可控硅管的接通時(shí)間即可改變加熱絲的功率,以達(dá)到調(diào)節(jié)溫度的目的??煽毓杞油〞r(shí)間可以通過可控硅控制極上觸發(fā)脈沖控制。該觸發(fā)脈沖由8031用軟件在P1.3引腳上產(chǎn)生,經(jīng)過零同步脈沖同步后再經(jīng)光耦和驅(qū)動(dòng)器輸出送到可控硅管的門極上。對于這樣的執(zhí)行機(jī)構(gòu),單片機(jī)只要輸出能控制可控硅通斷電時(shí)間的脈沖信號就可以了,因此可用一條I/O線與可控硅的控制端相

13、連接,并通過程序?qū)崿F(xiàn)輸出導(dǎo)通脈沖的寬度和導(dǎo)通時(shí)間9。為了達(dá)到過零觸發(fā)的目的,需要交流電過零檢測電路,此電路輸出對應(yīng)50Hz交流電壓過零時(shí)刻的脈沖,作為觸發(fā)雙向可控硅的同步脈沖,使可控硅在交流電壓過零時(shí)導(dǎo)通。從P1.3引腳輸出的控制信號和過零脈沖信號經(jīng)過與非門后控制著雙向晶閘管在一個(gè)周期內(nèi)的通斷比例(即占空比),進(jìn)而控制電阻絲的加熱功率,以達(dá)到調(diào)節(jié)溫度的目的。8031對溫度的控制沒有采用D/A輸出的直接方式,而是采用控制雙向晶閘管的間接控制方式。其優(yōu)點(diǎn)主要是為了提高功率因數(shù)和減少對電網(wǎng)的波動(dòng)影響。過零脈沖信號是由過零脈沖信號發(fā)生器得到的。從市電回路得到的220V、50Hz的正弦波電壓信號經(jīng)過圖6

14、中電壓比較器LM311將50Hz正弦交流電壓變成方波。方波的正跳沿和負(fù)跳沿分別作為兩個(gè)單穩(wěn)觸發(fā)器的觸發(fā)信號,單穩(wěn)觸發(fā)器輸出的窄脈沖經(jīng)二極管或門混合,就得到對應(yīng)于220V市電過零時(shí)刻的同步脈沖。此脈沖一路作為觸發(fā)同步脈沖加到溫控電路,一路作為計(jì)數(shù)脈沖加到單片機(jī)8031的P3.4端。圖6 電阻爐溫度控制電路3.4鍵盤顯示電路鍵盤顯示接口:8031的串行口既可作為通信用,也可以用于擴(kuò)展鍵盤、顯示器接口10,串行口采用靜態(tài)顯示方式。所謂靜態(tài)顯示,即CPU輸出顯示值后,由硬件保存輸出值,保持顯示結(jié)果。在單片機(jī)控制系統(tǒng)中,除了需要顯示單個(gè)狀態(tài)之外,往往還需要顯示一些數(shù)值12。在一般情況下,可以使用多個(gè)數(shù)碼

15、管來實(shí)現(xiàn)。目前常用的數(shù)碼管是八段的,八段LED數(shù)碼管有共陰極和共陽極之分。對多個(gè)八段LED數(shù)碼管的接口方法主要有兩種:動(dòng)態(tài)驅(qū)動(dòng)法和靜態(tài)驅(qū)動(dòng)法。動(dòng)態(tài)驅(qū)動(dòng)法使用硬件少,但顯示過程需要用軟件來維持,一旦顯示子程序不再執(zhí)行,顯示內(nèi)容亦立即消失,因此,其應(yīng)用受到一定的限制。靜態(tài)顯示法則克服這個(gè)缺陷,它能保持原顯示內(nèi)容,直到更改時(shí)才顯示新的內(nèi)容,但它所用的硬件較多。兩種方法都可使用并行口或串行口控制13。本文的LED數(shù)碼管顯示采用串行口靜態(tài)顯示,使8031的串行口可以工作于移位寄存器方式,用來驅(qū)動(dòng)LED靜態(tài)顯示器。這樣可以充分利用串行口,而將并行口用到最需要的地方去;同時(shí)軟件程序不需要對LED顯示器進(jìn)行掃

16、描,這樣8031有更多的時(shí)間處理其他事情。這種方法用于顯示位數(shù)較少,顯示亮度較高場合時(shí)效果較好。串行口靜態(tài)驅(qū)動(dòng)方式的LED顯示電路原理如圖7所示。與串行鍵盤輸入類似,可以使用74LS164串行輸入并行輸出的8位移位寄存器作為數(shù)碼管的段選通端,每一片LED數(shù)碼管用一片74LS164,LED數(shù)碼管的公共陰極連在一起并接低電平。當(dāng)用串行口擴(kuò)展鍵盤、顯示器接口時(shí),通過采用串行輸入/并行輸出移位寄存器74LS164擴(kuò)展并行輸出口,每連接一片74LS164可擴(kuò)展一個(gè)8位并行輸出口,用于連接一個(gè)LED段選口作靜態(tài)顯示或作鍵盤中的8根列線使用。圖7為串行口擴(kuò)展的鍵盤、顯示器接口電路。鍵盤中,每擴(kuò)展一根行線,可

17、增加8個(gè)按鍵,圖中P1.4通過“與”門控制74LS164的CK端,P1.5通過“與”門控制74LS164的CLR端,P1.6用于判斷鍵值信號。設(shè)定其工作在方式0下,串行口作同步移位寄存器用。串行數(shù)據(jù)由TXD端輸入或輸出。發(fā)送時(shí)串行口把8位數(shù)據(jù)從TXD端送出,接受時(shí),REN是串行口接收器允許接收控制位。REN=0,禁止接收;REN=1,允許接收,當(dāng)軟件置REN為“1”時(shí),即開始從TXD端輸入數(shù)據(jù),當(dāng)接收到8位數(shù)據(jù)時(shí),置中斷標(biāo)志R1為“1”。報(bào)警電路:正常運(yùn)行時(shí)綠燈亮,在保溫階段爐內(nèi)溫度超出系統(tǒng)允許誤差范圍,就要進(jìn)行報(bào)警。報(bào)警時(shí)報(bào)警燈亮,電笛響,同時(shí)發(fā)送中斷信號至CPU進(jìn)行處理。報(bào)警電路如圖8所示

18、。3.5溫度控制系統(tǒng)原理圖(如圖9所示)圖7 串行口擴(kuò)展的鍵盤、顯示器接口電路圖8 報(bào)警電路圖圖9 溫度控制系統(tǒng)原理圖4.溫度控制的算法及程序框圖4.1電爐的數(shù)學(xué)模型及控制算法的選擇通常,電阻爐爐溫控制都采用偏差控制法14。偏差控制的原理是先求出實(shí)測爐溫對所需爐溫的偏差值,然后對偏差值處理獲得控制信號去調(diào)節(jié)電阻爐的加熱功率,以實(shí)現(xiàn)對爐溫的控制。在工業(yè)上,偏差控制又稱PID控制,這是工業(yè)控制過程中應(yīng)用最廣泛的一種控制形式,目前工業(yè)自動(dòng)化水平已成為衡量各行各業(yè)現(xiàn)代化水平的一個(gè)重要標(biāo)志。自動(dòng)控制系統(tǒng)可分為開環(huán)控制系統(tǒng)和閉環(huán)控制系統(tǒng)。一個(gè)控制系統(tǒng)包括控制器、傳感器、變送器、執(zhí)行機(jī)構(gòu)、輸入輸出接口??刂?/p>

19、器的輸出經(jīng)過輸出接口、執(zhí)行機(jī)構(gòu),加到被控系統(tǒng)上;控制系統(tǒng)的被控量,經(jīng)過傳感器,變送器,通過輸入接口送到控制器。不同的控制系統(tǒng),其傳感器、變送器、執(zhí)行機(jī)構(gòu)是不一樣的。比如壓力控制系統(tǒng)要采用壓力傳感器。電加熱控制系統(tǒng)的傳感器是溫度傳感器。要實(shí)現(xiàn)對電阻爐的自動(dòng)控制,首先要測得電爐的數(shù)學(xué)模型15。本設(shè)計(jì)中電阻爐為一階純延時(shí)慣性環(huán)節(jié),其傳遞函數(shù)可表示為:G(S)= KeS/(s+1) (4-1)式中為純延時(shí)時(shí)間,=NT,T為采樣周期。為慣性時(shí)間,K為放大系數(shù)。利用飛升曲線法可以求出K,在本設(shè)計(jì)中取參考經(jīng)驗(yàn)值K=4,=80s,=1min??紤]到被控對象模型的不精確性和其參數(shù)隨時(shí)間的漂移以及系統(tǒng)要求超調(diào)量小

20、而允許調(diào)節(jié)過程較長,故采用Dahlin算法。電阻爐溫度控制系統(tǒng)為一個(gè)純滯后的調(diào)節(jié)系統(tǒng),他們的滯后時(shí)間比較長,對于這樣的系統(tǒng),人們更感興趣的是要求系統(tǒng)沒有超調(diào)或很少的超調(diào)量而調(diào)節(jié)時(shí)間則允許在較多的采樣周期內(nèi)完成。對于這樣的系統(tǒng)用PID算法效果欠佳。大林算法是針對工業(yè)生產(chǎn)過程中含有純滯后環(huán)節(jié)控制對象的控制算法,它具有良好的效果。4.2系統(tǒng)程序流程圖溫度控制程序的設(shè)計(jì)應(yīng)考慮如下:(1)鍵盤掃描、鍵碼識別和溫度顯示;(2)爐溫采樣、數(shù)字濾波;(3)數(shù)據(jù)處理;(4)越限報(bào)警和處理;(5)PID計(jì)算、溫度標(biāo)度轉(zhuǎn)換。系統(tǒng)的軟件設(shè)計(jì)采用模塊程序框圖,各模塊的程序框圖如下:(1) 系統(tǒng)主程序框圖及A/D轉(zhuǎn)換子程

21、序流程圖(如圖10和圖11所示)主程序開始初始化參數(shù)設(shè)置調(diào)用溫度采樣子程序調(diào)用溫度數(shù)值轉(zhuǎn)換和BCD碼轉(zhuǎn)換程序調(diào)用顯示子程序溫度大于上限設(shè)定值?溫度小于下限設(shè)定值?啟動(dòng)繼電器退出NNYY 主程序開始初始化參數(shù)設(shè)置調(diào)用溫度采樣子程序調(diào)用溫度數(shù)值轉(zhuǎn)換和BCD碼轉(zhuǎn)換程序調(diào)用顯示子程序溫度大于上限設(shè)定值?溫度小于下限設(shè)定值?啟動(dòng)繼電器退出NNYYN設(shè)置數(shù)據(jù)段數(shù)據(jù)段緩沖開始啟動(dòng)A/D轉(zhuǎn)換器讀入狀態(tài)信息轉(zhuǎn)換是否結(jié)束讀取數(shù)據(jù)并返回Y 圖11 A/D轉(zhuǎn)換子程序流程圖圖10 系統(tǒng)主程序框圖主程序:ORG 0000HAJMP MAINORG 0003HAJMP KEYSORG 000BHAJMP PIT0ORG 0

22、01BHAJMP PIT1 ;中斷入口及優(yōu)先級MAIN:CLR 5FH ;清上下限越限標(biāo)志 MOV A,#00HMOV R7,#09HMOV R0,#28HLP1:MOV R0,AINC R0 DJNZ R7,LP1MOV R7,#06HMOV R0,#39HLP2:MOV R0,AINC R0DJNZ R7,LP2MOV R7,#06HMOV RO,#50HLP3:MOV R0,AINC R0DINZ R7,LP3 ;清顯示緩沖區(qū)MOV 33H,#00HMOV 34H,#00H ;賦KP高低字節(jié)MOV 35H,#00HMOV 36H,#00H ;賦KI高低字節(jié)MOV 37H,#00H MOV

23、 38H,#00H ;賦KD高低字節(jié)MOV 42H,#00HMOV 43H,#00H ;賦K高低字節(jié)MOV TMOD,#56H ;T0方式2,T1方式1計(jì)數(shù)MOV TLO,#06HMOV THO,#06H MOV 25H,#C8H ;設(shè)定值默認(rèn)值200SETB TR0 ;鍵盤高優(yōu)先級SETB ET0SETB EX0SETB EA ;開鍵盤T0,T1中斷LOOP:MOV R0,#56H MOV R1,#55H LCALL SCACOV ;標(biāo)度轉(zhuǎn)化 MOV R0,#53H LCALL DIR NOP LCALL DLY10MS NOP LCALL DLY10MS AJMP LOOP ;等中斷鍵盤子

24、程序KEYS:CLR EX0 CLR EA PUSH PSW PUSH ACC ;關(guān)中斷 LCALL DLY10MS ;消抖CC: JB P3.2 AASETB 5DH ;置“顯示設(shè)定值溫度值標(biāo)志”MOV A,25H ;取運(yùn)算位的值MOV B,#10H ;BCD碼轉(zhuǎn)化DIV A BMOV 52H,AMOV A,BMOV 51H,AMOV R0,#50HLCALL DIR ;顯示設(shè)定溫度NOPLCALL DLY10MSNOPLCALL DLY10MSJB P1.7,BBMOV R1,#25HLCALL DAAD1NOP LCALL DLY10MS AJMP CCBB:JB P1.6 CCMOV

25、R1,#25HLCALL DEEC1NOPLCALL DLY10MSAJMP CCAA: POP ACCPOP PSWSETB EX0RETI顯示子程序DIR: MOV SCON ,#00H ;置串行口移位寄存器狀態(tài)SETB P1.4 ;開顯示JB 5DH,DL1 ;顯示設(shè)定溫度DL2: MOV DPTR,#SEGTDL0: MOV A,R0MOVC A,A+DPTRMOV SBUF ,ALOOP1:JNB TI,LOOP1 CLR TIINC R0MOV A,R0MOVC A,A+DPTRANL A,#7FH ;使數(shù)帶小數(shù)點(diǎn)MOV SBUF,ALOOP2:JNB TI,LOOP2CLR TIINC R0MOV A,R0MOVC A,A+DPTRMOV SBUF,ALOOP3:JNB TI,LOOP3CLR TICLR P1.4CLR 5DHRETDL1:MOV 50H,#0AH AJMP DL2DB:0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H,0FFH(2) LED顯示流程圖及數(shù)字控制算法子程序流程圖(如圖12和13所示)圖12 LED顯示流程圖 圖13 數(shù)字控制算法子程序流程圖五.心得體會(huì)通過分析電阻爐溫度變化規(guī)律,采用單片機(jī)來設(shè)計(jì)一個(gè)控制系統(tǒng)來實(shí)現(xiàn)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(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ǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論