![基于PID電加熱爐溫度控制系統(tǒng)設(shè)計(jì)(共23頁)_第1頁](http://file3.renrendoc.com/fileroot_temp3/2022-2/23/69cfe59e-d5e5-466d-aa79-709e4d22cfe7/69cfe59e-d5e5-466d-aa79-709e4d22cfe71.gif)
![基于PID電加熱爐溫度控制系統(tǒng)設(shè)計(jì)(共23頁)_第2頁](http://file3.renrendoc.com/fileroot_temp3/2022-2/23/69cfe59e-d5e5-466d-aa79-709e4d22cfe7/69cfe59e-d5e5-466d-aa79-709e4d22cfe72.gif)
![基于PID電加熱爐溫度控制系統(tǒng)設(shè)計(jì)(共23頁)_第3頁](http://file3.renrendoc.com/fileroot_temp3/2022-2/23/69cfe59e-d5e5-466d-aa79-709e4d22cfe7/69cfe59e-d5e5-466d-aa79-709e4d22cfe73.gif)
![基于PID電加熱爐溫度控制系統(tǒng)設(shè)計(jì)(共23頁)_第4頁](http://file3.renrendoc.com/fileroot_temp3/2022-2/23/69cfe59e-d5e5-466d-aa79-709e4d22cfe7/69cfe59e-d5e5-466d-aa79-709e4d22cfe74.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、精選優(yōu)質(zhì)文檔-傾情為你奉上基于PID電加熱爐溫度控制系統(tǒng)設(shè)計(jì)摘要 電加熱爐隨著科學(xué)技術(shù)的發(fā)展和工業(yè)生產(chǎn)水平的提高,已經(jīng)在冶金、化工、機(jī)械等各類工業(yè)控制中得到了廣泛應(yīng)用,并且在國(guó)民經(jīng)濟(jì)中占有舉足輕重的地位。對(duì)于這樣一個(gè)具有非線性、大滯后、大慣性、時(shí)變性、升溫單向性等特點(diǎn)的控制對(duì)象,很難用數(shù)學(xué)方法建立精確的數(shù)學(xué)模型,因此用傳統(tǒng)的控制理論和方法很難達(dá)到好的控制效果。單片機(jī)以其高可靠性、高性能價(jià)格比、控制方便簡(jiǎn)單和靈活性大等優(yōu)點(diǎn),在工業(yè)控制系統(tǒng)、智能化儀器儀表等諸多領(lǐng)域得到廣泛應(yīng)用。采用單片機(jī)進(jìn)行爐溫控制,可以提高控制質(zhì)量和自動(dòng)化水平。一、 緒論在本控制對(duì)象電阻加熱爐功率為8可W,由220V交流電供電
2、,采用雙向可控硅進(jìn)行控制。本設(shè)計(jì)針對(duì)一個(gè)溫度區(qū)進(jìn)行溫度控制,要求控制溫度范圍50350C,保溫階段溫度控制精度為正負(fù)1度。選擇合適的傳感器,計(jì)算機(jī)輸出信號(hào)經(jīng)轉(zhuǎn)換后通過雙向可控硅控制器控制加熱電阻兩端的電壓。其對(duì)象問溫控?cái)?shù)學(xué)模型為: 其中:時(shí)間常數(shù)Td=350秒,放大系數(shù)Kd=50,滯后時(shí)間=10秒,控制算法選用改PID控制實(shí)時(shí)溫度采樣顯示設(shè)定值單片機(jī)設(shè)定溫度電源控制電阻加熱爐圖1.1系統(tǒng)總體結(jié)構(gòu)圖二、 控制系統(tǒng)的建模和數(shù)字控制器設(shè)計(jì)輸入并采樣r(K)、c(K)開始計(jì)算偏差e(K)=r(K)-c(K)計(jì)算 u(k)=qe(k)+qe(k-1)+qe(k-2)存u(k)以備輸出參數(shù)序號(hào)e(k-1)
3、e(k-2)調(diào)整 e(k)e(k-1)返回 圖2 PID算法流程圖數(shù)字PID控制算法 PID控制器是通過計(jì)算機(jī)PID控制算法程序?qū)崿F(xiàn)的。計(jì)算機(jī)直接數(shù)字控制系統(tǒng)大多數(shù)是采樣-數(shù)據(jù)控制系統(tǒng)。進(jìn)入計(jì)算機(jī)的連續(xù)-時(shí)間信號(hào),必須經(jīng)過采樣和整量化后,變成數(shù)字量,方能進(jìn)入計(jì)算機(jī)的存貯器和寄存器,而在數(shù)字
4、計(jì)算機(jī)中的計(jì)算和處理,不論是積分還是微分,只能用數(shù)值計(jì)算去逼近。受控對(duì)象PID位置算法reuy+-圖2.1位置PID控制算法簡(jiǎn)化示意圖 在數(shù)字計(jì)算機(jī)中,PID控制規(guī)律的實(shí)現(xiàn),也必須用數(shù)值逼近的方法。當(dāng)采樣周期相當(dāng)短時(shí),用求和代替積分,用差商代替微商,使PID算法離散化,將描述連續(xù)時(shí)間PID算法的微分方程,變?yōu)槊枋鲭x散-時(shí)間PID算法的差分方程。 用矩形積分時(shí),有 (1) 用差分代替微分 (2) 由上式得 (3) 式中 u0控制量的基值,即k=0時(shí)的控制;u(k)第k個(gè)采樣時(shí)刻的控制;KP比例放大系數(shù);KI積分放大系數(shù); KD微分放大系數(shù);TS采樣周期。 式(3)是數(shù)字PID算法的非遞推形式,稱
5、全量算法。算法中,為了求和,必須將系統(tǒng)偏差的全部過去值e(j)(j=1,2,3,. ,k)都存儲(chǔ)起來。這種算法得出控制量的全量輸出u(k),是控制量的絕對(duì)數(shù)值。在控制系統(tǒng)中,這種控制量確定了執(zhí)行機(jī)構(gòu)的位置。當(dāng)執(zhí)行機(jī)構(gòu)需要的不是控制量的絕對(duì)值,而是控制量的增量(例如去驅(qū)動(dòng)步進(jìn)電動(dòng)機(jī))時(shí),需要用PID的“增量算法”。yuerPID增量算法受控對(duì)象-+步進(jìn)電機(jī)u 由位置算法求出 再求出 兩式相減,得出控制量的增量算法 (4) 式(4)稱為增量式PID算法。對(duì)增量式PID算法(4)歸并后,得 (5) 從式(5)看出,數(shù)字增量式PID算法,只要貯存最近的三個(gè)誤差采樣值e(k),e(k-1),e(k-2)
6、就足夠了。如果計(jì)算機(jī)系統(tǒng)采用恒定的采樣周期T,一旦確定q,q,q只要使用前后測(cè)量三次的偏差值,就可以由上式求出控制量。typedef struct PID Int SetPoint;/設(shè)定目標(biāo)Desired ValueLong SumError;/誤差累計(jì) double propotion;/比例常數(shù) Propotion ConstDouble integral;/積分常數(shù) Integral ConstDouble derivative;/微分
7、常數(shù) Derivative Constint LastError;/ Error-1 Int PrevError;/ Error-2 PID; ststic PIDsPID; /*Initialize PID Structure PID參數(shù)初始化*/ void IncPIDInit(void) sptr->SumError=0; sptr->LastError=0;/ E
8、rror-1 sptr->PrevError=0;/ Error-2 sptr->Propotion=0;/比例常數(shù) Propotional Const sptr->integral=0;/積分常數(shù)Integral Const sptr->derivative=0;/微分常數(shù)Derivative Const sptr->SetPoint=0; /*增量式PID計(jì)算部分*/ int IncPIDCalc
9、(int NextPoint) register int ierror,iIncpid;/當(dāng)前誤差 ierror=sptr->SetPoint-NextPoint;/增量計(jì)算三 硬件的設(shè)計(jì)和實(shí)現(xiàn)3.1 AT89C51系列基本組成及特性AT89C51是一種帶4K字節(jié)FLASH(FPEROMFlash Programmable and Erasable Read Only Memory)的低電壓、高性能CMOS 8位微處理器,俗稱。AT89C2051是一種帶2K字節(jié)閃存可編程可擦除的單片機(jī)。圖3.1AT89C51管腳管腳說明:VCC:供電電壓
10、。 GND:接地。 P0口:P0口為一個(gè)8位漏級(jí)開路雙向I/O口,每腳可吸收8TTL門電流。當(dāng)P0口的管腳第一次寫1時(shí),被定義為輸入。P0能夠用于外部程序數(shù)據(jù)存儲(chǔ)器,它可以被定義為數(shù)據(jù)/地址的低八位。在FIASH編程時(shí),P0 口作為原碼輸入口,當(dāng)FIASH進(jìn)行校驗(yàn)時(shí),P0輸出原碼,此時(shí)P0外部必須接上拉電阻。 P1口:P1口是一個(gè)內(nèi)部提供上拉電阻的8位雙向I/O口,P1口緩沖器能接收輸出4TTL門電流。P1口管腳寫入1后,被內(nèi)部上拉為高,可用作輸入,P1口被外部下拉為低電平時(shí),將輸出電流,這是由于內(nèi)部上拉的緣故。在FLASH編程和校驗(yàn)時(shí),P1口作為低八位地址接收。 P2口:P2口為一個(gè)內(nèi)部上拉
11、電阻的8位雙向I/O口,P2口緩沖器可接收,輸出4個(gè)TTL門電流,當(dāng)P2口被寫“1”時(shí),其管腳被內(nèi)部上拉電阻拉高,且作為輸入。并因此作為輸入時(shí),P2口的管腳被外部拉低,將輸出電流。這是由于內(nèi)部上拉的緣故。P2口當(dāng)用于外部程序存儲(chǔ)器或16位地址外部數(shù)據(jù)存儲(chǔ)器進(jìn)行存取時(shí),P2口輸出地址的高八位。在給出地址“1”時(shí),它利用內(nèi)部上拉優(yōu)勢(shì),當(dāng)對(duì)外部八位地址數(shù)據(jù)存儲(chǔ)器進(jìn)行讀寫時(shí),P2口輸出其特殊功能寄存器的內(nèi)容。P2口在FLASH編程和校驗(yàn)時(shí)接收高八位地址信號(hào)和控制信號(hào)。 P3口:P3口管腳是8個(gè)帶內(nèi)部上拉電阻的雙向I/O口,可接收輸出4個(gè)TTL門電流。當(dāng)P3口寫入“1”后,它們被內(nèi)部上拉為高電平,并用作
12、輸入。作為輸入,由于外部下拉為低電平,P3口將輸出電流(ILL)這是由于上拉的緣故。 P3口也可作為AT89C51的一些特殊功能口,如下表所示: 口管腳備選功能:P3.0 RXD(串行輸入口) P3.1 TXD(串行輸出口) P3.2 /INT0(外部中斷0) P3.3 /INT1(外部中斷1) P3.4 T0(記時(shí)器0外部輸入) P3.5 T1(記時(shí)器1外部輸入) P3.6 /WR(外部數(shù)據(jù)存儲(chǔ)器寫選通) P3.7 /RD(外部數(shù)據(jù)存儲(chǔ)器讀選通) P3口同時(shí)為閃爍編程和編程校驗(yàn)接收一些控制信號(hào)。 RST:復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時(shí),要保持RST腳兩個(gè)機(jī)器周期的高電平時(shí)間。 ALE/PROG
13、:當(dāng)訪問外部存儲(chǔ)器時(shí),地址鎖存允許的輸出電平用于鎖存地址的低位字節(jié)。在FLASH編程期間,此引腳用于輸入編程脈沖。在平時(shí),ALE端以不變的頻率周期輸出正脈沖信號(hào),此頻率為振蕩器頻率的1/6。因此它可用作對(duì)外部輸出的脈沖或用于定時(shí)目的。然而要注意的是:每當(dāng)用作外部數(shù)據(jù)存儲(chǔ)器時(shí),將跳過一個(gè)ALE脈沖。如想禁止ALE的輸出可在SFR8EH地址上置0。此時(shí), ALE只有在執(zhí)行MOVX,MOVC指令是ALE才起作用。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀態(tài)ALE禁止,置位無效。 /PSEN:外部程序存儲(chǔ)器的選通信號(hào)。在由外部程序存儲(chǔ)器取指期間,每個(gè)機(jī)器周期兩次/PSEN有效。但在訪問外部數(shù)據(jù)存
14、儲(chǔ)器時(shí),這兩次有效的/PSEN信號(hào)將不出現(xiàn)。 /EA/VPP:當(dāng)/EA保持低電平時(shí),則在此期間外部程序(0000H-FFFFH),不管是否有內(nèi)部程序存儲(chǔ)器。注意加密方式1時(shí),/EA將內(nèi)部鎖定為RESET;當(dāng)/EA端保持高電平時(shí),此間內(nèi)部程序存儲(chǔ)器。在FLASH編程期間,此引腳也用于施加12V編程電源(VPP)。 3.2鍵盤模塊在本次設(shè)計(jì)當(dāng)中,輸入設(shè)備采用4*4矩陣鍵盤。當(dāng)“設(shè)定”鍵按下時(shí)觸發(fā)鍵盤中斷服務(wù)程序,由程序程控掃描法確定那個(gè)鍵按下并執(zhí)行相應(yīng)的動(dòng)作。程控掃描的任務(wù)是:(1)首先判斷是否有鍵按下。方法:使所有的行輸出均為低電平,然后從端口A讀入列值。如果沒有鍵按下,則讀人值為FFH如果有鏈
15、按下則不為FFH。(2)去除鍵抖動(dòng)。方法:延時(shí)1020 ms,再一次判斷有無鍵按下,如果此時(shí)仍有鍵按下,則認(rèn)為鍵盤上確實(shí)有鍵處于穩(wěn)定閉合期。(3)若有鍵閉合,則求出閉合鍵的鍵值。方法:對(duì)鍵盤逐行掃描。程序中需等閉合鍵釋放后才對(duì)其進(jìn)行處理。3.3設(shè)計(jì)輸入輸出通道輸入通道:因?yàn)樗氐膶?shí)際溫度在50 350,即(35050)300所以選用8位A/D轉(zhuǎn)換器,其分辨率約為1.5/字,再加放大器偏置措施實(shí)現(xiàn)。(通過調(diào)整放大器的零點(diǎn)來實(shí)現(xiàn)偏置)這里采用一般中速芯片ADC0809。ADC0809是帶有8位A/D轉(zhuǎn)換器,8路多路開關(guān)以及微型計(jì)算機(jī)兼容的控制邏輯的CMOS組件,其轉(zhuǎn)換方法為逐次逼近型。8路的模擬開
16、關(guān)由地址鎖存器和譯碼器控制,可以在8個(gè)通道中任意訪問一個(gè)通道的模擬信號(hào)。這種器件無需進(jìn)行零位和滿量程調(diào)整。由于多路開關(guān)的地址輸入部分能夠進(jìn)行鎖存和譯碼,而且其三態(tài)TTL輸出也可以鎖存,所以它易于與微型計(jì)算機(jī)接口。其具有較高的轉(zhuǎn)換速度和精度,受溫度影響較小,能較長(zhǎng)時(shí)間保證精度,重現(xiàn)性好,功耗較低,故用于過程控制是比較理想的器件。ADC0809應(yīng)用接線圖輸出通道:據(jù)其實(shí)際情況,D/A轉(zhuǎn)換器的位數(shù)可低于A/D轉(zhuǎn)換器的位數(shù),因?yàn)橐话憧刂葡到y(tǒng)對(duì)輸出通道分辨率的要求比輸入通道的低,所以這里采用常用的DAC0832芯片。DAC0832是8位D/A轉(zhuǎn)換器,與微處理器完全兼容。期間采用先進(jìn)的CMOS工藝,因此功
17、耗低,輸出漏電流誤差較小。它的內(nèi)部具有兩級(jí)輸入數(shù)據(jù)緩沖器和一個(gè)R-2RT型電阻網(wǎng)絡(luò),因DAC0832電流輸出型D/A轉(zhuǎn)換芯片,為了取得電壓輸出,需在電流輸出端接運(yùn)算放大器,Rf為為運(yùn)算放大器的反饋電阻端。雙極性電壓輸出的D/A轉(zhuǎn)換電路通常采用偏移二進(jìn)制碼、補(bǔ)碼二進(jìn)制碼和符號(hào)一數(shù)值編碼。只要在單極性電壓輸出的基礎(chǔ)上再加一級(jí)電壓放大器,并配以相關(guān)電阻網(wǎng)絡(luò)就可以構(gòu)成雙極性電壓輸出。在上圖中,運(yùn)算放大器A2的作用是把運(yùn)算放大器A1的單向輸出電壓轉(zhuǎn)變?yōu)殡p向輸出。3.4電源部分本系統(tǒng)所需電源有220V交流市電、直流5V電壓和低壓交流電,故需要變壓器、整流裝置和穩(wěn)壓芯片等組成電源電路。電源變壓器是將交流電網(wǎng)
18、220V的電壓變?yōu)樗枰碾妷褐?,然后通過整流電路將交流電壓變?yōu)槊}動(dòng)的直流電壓。由于此脈動(dòng)的直流電壓還含有較大的紋波,必須通過濾波電路加以濾除,從而得到平滑的直流電壓。但這樣的電壓還隨電網(wǎng)電壓波動(dòng)(一般有+-10%左右的波動(dòng))、負(fù)載和溫度的變化而變化。因而在整流、濾波電路之后,還需要接穩(wěn)壓電路。穩(wěn)壓電路的作用是當(dāng)電網(wǎng)電壓波動(dòng)、負(fù)載和溫度變化時(shí),維持輸出直流電壓穩(wěn)定。整流裝置采用二極管橋式整流,穩(wěn)壓芯片采用78L05,配合電容將電壓穩(wěn)定在5V,供控制電路、測(cè)量電路和驅(qū)動(dòng)執(zhí)行電路中弱電部分使用。除此之外,220V交流市電還是加熱電阻兩端的電壓,通過控制雙向可控硅的導(dǎo)通與截止來控制加熱電阻的功率。低
19、壓交流電即變壓器二次側(cè)的電壓,通過過零檢測(cè)電路檢測(cè)交流電的過零點(diǎn),送入單片機(jī)后,由控制程序決定雙向可控硅的導(dǎo)通角,以達(dá)到控制加熱電阻功率的目的。四、軟件設(shè)計(jì)4.1系統(tǒng)主程序 本系統(tǒng)的應(yīng)用程序主要由主程序、中斷服務(wù)程序和子程序組成。主程序的任務(wù)是對(duì)系統(tǒng)進(jìn)行初始化,實(shí)現(xiàn)參數(shù)輸入,并控制電加熱爐的正常運(yùn)行。主程序主要由系統(tǒng)初始化、數(shù)據(jù)采集及處理、智能推理等部分組成。系統(tǒng)初始化包括設(shè)置棧底、工作寄存器組、控制量的初始值、采樣周期、中斷方式和狀態(tài)、定時(shí)器的工作方式以及8255的初始化、MAX1232的初始化等。數(shù)據(jù)采集及處理主要包括實(shí)時(shí)采集電加熱爐的爐溫信號(hào),計(jì)算出實(shí)際爐溫與理想值的差值以及溫差的變化率
20、,并對(duì)爐溫信號(hào)進(jìn)行濾波和限幅處理。開始系統(tǒng)的初始化溫度數(shù)據(jù)采集及處理溫度值顯示計(jì)算溫差e(k)和溫差變化率智能控制算法程序控制輸出求出輸出控制量結(jié)束NY圖4.1系統(tǒng)主程序 4.2模數(shù)轉(zhuǎn)換模塊ADC0809是一個(gè)典型的逐次逼近型8位A/D轉(zhuǎn)換器。它由8路模擬開關(guān)、8位A/D轉(zhuǎn)換器、三態(tài)輸出鎖存器及地址鎖存譯碼器等組成。它允許8路模擬量分時(shí)輸入,轉(zhuǎn)換后的數(shù)字量輸出是三態(tài)的(總線型輸出),可以直接與單片機(jī)數(shù)據(jù)總線連接。ADC0809采用+5V電源供電,外接工作時(shí)鐘。當(dāng)?shù)湫凸ぷ鲿r(shí)鐘為500KHz時(shí),轉(zhuǎn)換時(shí)間約為128us.(1) 時(shí)鐘信號(hào):由于ADC0809無片選端,因此電路增加了或非門74LS02,
21、以便對(duì)ADC0809進(jìn)行讀/寫控制。單片機(jī)采用6MHz/s的晶振,ALE輸出66MHz/s時(shí)鐘信號(hào),經(jīng)74LS74觸發(fā)器2分頻,得到500KHz的時(shí)鐘信號(hào),與ADC0809的時(shí)鐘端CLK相連。(2) 通道選擇:三位通道選擇端ADDA、ADDB、ADDC與數(shù)據(jù)線P1口的低三位P1.0、P1.1、P1.2相連,用數(shù)據(jù)線進(jìn)行通道選擇,由P1.0、P1.1、P1.2三位決定選擇那一通道。(3) ADC0809啟動(dòng):ADC0809的啟動(dòng)端START、地址所存端ALE均為高電平有效。將START和ALE連在一起,與74LS02的輸出端相連?;蚍情T74LS02的兩個(gè)輸入端/WR和P3.5均為低電平時(shí),其輸出
22、為高電平,執(zhí)行外部I/O口的寫操。開始將PSW壓棧調(diào)顯示程序讀A/D結(jié)果置位狀態(tài)位F0關(guān)閉報(bào)警F0是否等于零調(diào)PID控制算法程序報(bào)警子程序PSW出棧并返回輸出控制量啟動(dòng)定時(shí)器T1溢出標(biāo)志TF1是否為零設(shè)定值與AD結(jié)果比較交流電是否過零結(jié)果=0結(jié)果>or<設(shè)定值的20%-20%<結(jié)果<20%F0=0F0=0NYNY 圖4.2.1A/D轉(zhuǎn)換結(jié)束中斷服務(wù)程序流程圖 按鍵檢測(cè)與處理流程圖如圖4.2.2所示是否有按鍵NY延時(shí)10-20ms是否有按鍵N按鍵已釋放YNY獲得鍵值,鍵處結(jié)束圖4.2.2按鍵檢測(cè)與處理流程圖 編寫D/A轉(zhuǎn)換控制程序: DAC
23、0832實(shí)現(xiàn)D/A轉(zhuǎn)換,可以采用下面程序段。設(shè)定要轉(zhuǎn)換的數(shù)據(jù)放在1000H單元中。 MOV BX,1000H MOV AL,BX 取轉(zhuǎn)換資料 MOV DX,PORTA PORTA為D/A轉(zhuǎn)換端口地址 OUT DX,AL 4.3 LED顯示模塊圖4.3顯示子程序4.4數(shù)字控制算法子程序流程圖4.5報(bào)警模塊根據(jù)設(shè)計(jì)要求,在保溫階段,溫度控制精度為正負(fù)1度,故當(dāng)溫度下降或上升2度時(shí)為故障狀態(tài),需要報(bào)警提醒。所以在電路設(shè)計(jì)
24、上應(yīng)用了蜂鳴器和發(fā)光二極管,系統(tǒng)正常運(yùn)行時(shí)綠色發(fā)光二極管點(diǎn)亮,當(dāng)出現(xiàn)故障時(shí)紅色發(fā)光二極管點(diǎn)亮并且蜂鳴器鳴叫,提醒操作人員注意。報(bào)警狀態(tài)可通過按鍵復(fù)位和系統(tǒng)恢復(fù)正常后自動(dòng)復(fù)位開始置報(bào)警位P3.4子程序返回清除報(bào)警狀態(tài)位F0圖4.4報(bào)警子程序4.6程序清單4.5.1 主程序ORG 0000HAJMP MAINORG 0003HAJMP KEYSORG 000BHAJMP PIT0ORG 001BHAJMP PIT1 ;中斷入口及優(yōu)先級(jí)MAIN: MOV SP,#00H CLR 5FH :清上下限越限標(biāo)志 MOV A,#00HMOV R7,#09HMOV R0,#28HLP1:MOV R0,AINC
25、 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 38H,#00H ; 賦KD高低字節(jié)MOV 42H,#00HMOV 43H,#00H ;賦K高低字節(jié)MOV TMOD,#56H ;T0方式2,T1方式1計(jì)數(shù)MOV TLO,#06HM
26、OV THO,#06H MOV 25H,#163H ;設(shè)定值默認(rèn)值350SETB TR0 ;鍵盤高優(yōu)先級(jí)SETB ET0SETBEX0SETB EA ;開鍵盤T0。T1中斷LOOP:MOV R0,#56H MOV R1,#55H LCALLSCACOV ;標(biāo)度轉(zhuǎn)化 MOV R0,#53H LCALLDIR NOP LCALLDLY10MS NOP LCALLDLY10MS AJMP LOOP;等中斷4.5.2 鍵盤子程序KEYS:CLR EX0 CLR EA PUSH PSW PUSH ACC ;關(guān)中斷 LCALLDLY10MS ;消抖CC: JB P3.2 AASETB 5DH ;置“顯示設(shè)
27、定值溫度值標(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è)定溫度NOPLCALLDLY10MSNOPLCALL DLY10MSJB P1.7 ,BBMOV R1,#25HLCALL DAAD1NOP LCALL DLY10MS AJMP CCBB: JB P1.6 CCMOV R1,#25HLCALL DEEC1NOPLCALL DLY10MSAJMP CCAA: POP ACCPOP PSWSETB EX0SETB EA ;出棧RETI4.5.3
28、顯示子程序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
29、P1.4CLR 5DHRETDL1: MOV 50H,#0AH ;小數(shù)位黑屏 AJMP DL2SEGT: DB 0C0H ,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H,0FFH4.5.4 T0中斷子程序PTT0: CLR EAPUSH ACCPUSH PSWPUAH DPLPUSH DPHSETB EA ;壓棧后開中斷響應(yīng)鍵盤PPP: LCALLSMAP ;采樣數(shù)據(jù)LCALL FILTER ;數(shù)字濾波MOV A,2AH ;取采樣值CJNE A,#07H,AAA ;下限48比較AJMP BBBAAA: JC CCC ;小于48度轉(zhuǎn)CJNEA,#0FEH ,DD
30、D ;上限355比較AJMP BBB ;轉(zhuǎn)至48355正常范圍處理DDD: JC BBCLR P1.2 ;大于355黃燈亮SETB 5EHCLR P1.1 ;置標(biāo)志 啟動(dòng)風(fēng)扇AJMP PPPCCC: CLR P1.3 ;小于48紅燈亮SETB 5FHBBB: CLR P1.0 ;置標(biāo)志啟動(dòng)電爐AJMPPPPSETB P1.0SETB P1.1SETB P1.2SETB P1.3CLR 5EHCLR 5FH ;50350之間正常LCALL PIDJNB 20H,EEF ;設(shè)定溫度小于實(shí)際值轉(zhuǎn)到風(fēng)扇MOV A,29HLCALLFFFCLR P1.0LOOP10: MOV R0,#56H ;存放相乘
31、結(jié)果的首址MOV R1,#55H ;賦顯示緩沖區(qū)最高位地址LCALL SCACOV ;標(biāo)度轉(zhuǎn)化 MOV R0,#53H;;賦顯示首址 CLR DIR JB D5H,LOOP10 ;等待T1中斷 CLR EA POP DPH POP DPL POP PSWSETB EAPOP ACCRETIEEE: MOV A,28H ;風(fēng)扇處理 LCALL FFF CLR P1.1AJMP LOOP10FFF: CRL A ;根據(jù)PID結(jié)果計(jì)算T1初值 INC A MOV TL1,A MOV TH1,#0FFH SETB PI1 SETB TR1 SETB ET1 RET4.5.5采樣子程序SWAP: MOV R0,#20H MOV R1,
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 用電設(shè)備智能化檢測(cè)技術(shù)在企業(yè)中的實(shí)施效果
- 2025年度講師培訓(xùn)品牌合作推廣合同
- 電商平臺(tái)用戶體驗(yàn)的持續(xù)優(yōu)化策略
- 生產(chǎn)線效率提升與資源調(diào)度分析
- 生產(chǎn)現(xiàn)場(chǎng)5S管理提升員工素質(zhì)的途徑
- 現(xiàn)代城市雕塑與夜間光影藝術(shù)的結(jié)合
- 現(xiàn)代商業(yè)環(huán)境下的心理調(diào)適與中醫(yī)養(yǎng)生法
- 現(xiàn)代農(nóng)業(yè)裝備技術(shù)教育與創(chuàng)新培訓(xùn)案例
- 2025年度建筑泥工工程勞務(wù)及綠色建筑認(rèn)證服務(wù)合同
- 湘教版數(shù)學(xué)九年級(jí)下冊(cè)《2.2.3圓周角定理的推論》聽評(píng)課記錄
- 2023年上海青浦區(qū)區(qū)管企業(yè)統(tǒng)一招考聘用筆試題庫含答案解析
- 2023年高一物理期末考試卷(人教版)
- 2023版押品考試題庫必考點(diǎn)含答案
- 植物之歌觀后感
- 空氣能熱泵安裝示意圖
- 建筑工程施工質(zhì)量驗(yàn)收規(guī)范檢驗(yàn)批填寫全套表格示范填寫與說明
- 2020年中秋國(guó)慶假日文化旅游市場(chǎng)安全生產(chǎn)檢查表
- 辦公家具項(xiàng)目實(shí)施方案、供貨方案
- 七年級(jí)英語下冊(cè)閱讀理解10篇
- 節(jié)后開工收心會(huì)
- 設(shè)計(jì)質(zhì)量、進(jìn)度保證措施
評(píng)論
0/150
提交評(píng)論