版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、51單片機溫度控制程序51單片機溫度控制程序(續(xù))功能說明:本裝置的功能是對溫度進(jìn)行實時監(jiān)測與控制。由 溫度傳感器DS18B20對溫度進(jìn)行采樣和轉(zhuǎn)換成數(shù)字信號送入單片機,并與設(shè)定的報警溫度 上、下限值進(jìn)行比較,信息通過LCD顯示出來。如實時溫度超過設(shè)定的上、下限值,一方 面由LC51單片機溫度控制程序(續(xù))功能說明:本裝置的功能是對溫度進(jìn)行實時監(jiān)測與控制。由溫度傳感器DS18B20對溫度進(jìn)行采樣和轉(zhuǎn) 換成數(shù)字信號送入單片機,并與設(shè)定的報警溫度上、下限值進(jìn)行比較,信息通過LCD顯示 出來。如實時溫度超過設(shè)定的上、下限值,一方面由LCD顯示信息,并發(fā)出警報聲;另一 方面自動控制繼電器(Relay)
2、開接通或斷開,從而控制加熱源的開與斷,達(dá)到對溫度進(jìn)行 實時控制的目的。程序:LCD2402.ASM01 ; 02 ;溫度值存放單元03TEMP_ZHEQU24H;實時溫度值存放單元04TEMPLEQU25H;低溫度值存放單元05TEMPHEQU26H;高溫度值存放單元06TEMP_THEQU27H;高溫報警值存放單元07TEMP_TLEQU28H;低溫報警值存放單元08TEMPHCEQU29H;存十位數(shù)BCD碼09TEMPLCEQU2AH;存?zhèn)€位數(shù)BCD碼10 ;11按鍵輸入引腳定義K1EQU P2.1K2EQU P2.2K3 EQU P2.3K4 EQU P2.4,SPK EQU P3.4;
3、蜂鳴器引腳RELAY EQU P2.0;繼電器引腳X EQU 2FH ;LCD地址變量,;LCD控制引腳RS EQU P3.5RW EQU P3.6E EQU P3.7,F(xiàn)LAG EQU 20H.0 ;DS18B20 是否存在標(biāo)記KEY_UD EQU 20H.1;設(shè)定 KEY 的 UP 與 DOWN 標(biāo)記DQ EQU P2.5;= = = = = = = = = = = = =主程序= = = = = = = = = = = = = =MAIN:ACALL SET_LCD;LCD初始化設(shè)置子程序14151617181920212223242526272829303132333435ACALL
4、WR_THL;將報警上下線寫入暫存寄存器子程序36 JNB FLAGTOOP1 ;DS1820 不存在轉(zhuǎn)移 TOOP1 處ACALLMEU_OK;調(diào)用顯示OK信息子程序ACALLRE_THL;把EEROM里溫度報警值拷貝回暫存器ACALLTEMP_BJ;顯示溫度標(biāo)記C”JMP TOOP2TOOP1: ACALL MEU_ERROR ;顯示ERROR信息ACALL TEMP_BJ;顯示溫度標(biāo)記JMP $;等待;TOOP2:ACALL RE_TEMP;調(diào)用讀取溫度數(shù)據(jù)子程序ACALL SET_DATA ;調(diào)用處理顯示溫度數(shù)據(jù)子程序ACALL TEMP_COMP ;實際溫度值與標(biāo)記溫度值比較子程序A
5、CALL P_KEY;調(diào)用按鍵掃描子程序SJMP TOOP2;循環(huán)51;讀取溫度數(shù)據(jù)子程序一RE_TEMP:ACALL RESET_1820 ;18B20 復(fù)位子程序JNB FLAGTOOP1 ;DS1820 不存在MOV A,#0CCH;跳過 ROM 匹配ACALL WRITE_1820 ;寫入子程序MOV A,#44H;發(fā)出溫度轉(zhuǎn)換命令A(yù)CALL WRITE_1820 ;調(diào)寫入子程序ACALL RESET_1820 ;調(diào)復(fù)位子程序MOV A,#0CCH;跳過 ROM 匹配ACALL WRITE_1820 ;寫入子程序MOV A,#0BEH;發(fā)出讀溫度命令A(yù)CALL WRITE_1820 ;
6、寫入子程序ACALL READ_1820;調(diào)用讀取子程序RET溫度數(shù)據(jù)處理顯示子程序SET_DATA:ACALL CONV_TEMP ;處理溫度BCD碼子程序ACALL DISP_BCD;顯示區(qū)BCD碼溫度值刷新子程序ACALL CONV ;LCD顯示子程序RET按鍵鍵掃描子程序P_KEY:;按鍵K1處理JB K1, PK1 ;K1鍵未按,轉(zhuǎn)到PK1處ACALL SPK_BZ ;K1鍵按下,一聲鳴響JNB K1,$;等按鍵放開59606162636465666768 ;69707172737475;7677787980MOV DPTR,#M_ALAX1 ;存 M_ALAX1 表81MOV A,
7、#182ACALL LCD_PRINT ;顯示字符83ACALL LOOK_ALARM ;顯示信息區(qū)子程序84JB K3,$;等待K3按下85ACALL SPK_BZ;一聲鳴響86JMP PK2;轉(zhuǎn)到標(biāo)號PK2處87PK1:;按鍵K2處理88JB K2, PK3;K2鍵未按,轉(zhuǎn)到PK3處89ACALL SPKBZ;K2鍵按下,一聲鳴響9091JNBMOVK2,$;等按鍵放開DPTR, #TA1 ;存#TA1 表92MOVA,#193ACALLLCD PRINT;顯示字符94ACALLSET ALARM;設(shè)定報警值TH、TL95ACALLWR THL;將設(shè)定的TH,TL值寫入DS18B20內(nèi)96
8、ACALLWRITE E2;調(diào)用報警值拷貝EEROM子程序97PK2:98ACALLMEU OK;顯示”O(jiān)K”信息子程序99ACALLTEMP BJ;顯示溫度標(biāo)記子程序100 PK3:101 RET102103104105106107108109110111112113114115116117118119120121122123124;菜單表TA1:DB RESET ALERT CODE設(shè)定報警值TH、TL子程序SET_ALARM:ACALL LOOK_ALARM ;調(diào)用顯示信息區(qū)子程序A0: JBK1,A2;按下K1(查看鍵),程序向下運行ACALL SPK_BZ;蜂鳴器響一聲JNBK1,$
9、;等放開CPL20H.1;UP/DOWN標(biāo)記反向A2: JB20H.1,A3;20H.1=1,UP轉(zhuǎn)移到 A3。JMPA8;20H.1=0,DOWN,轉(zhuǎn)移到 A8;TH值調(diào)整(增加)A3: JB K2, A5;按下K2(設(shè)定鍵),程序向下運行ACALL SPK_BZ;蜂鳴器響一聲INC TEMP_TH;TH值調(diào)整(增加)MOV A,TEMP_TH ;TH 值送入 ACJNE A,#120,A4 ;TH值增到120,程序向下運行MOV TEMP_TH,#0 ;TH 值清 0126ACALL DELAY;調(diào)用延時程序127JMPA3;循環(huán)128;129 ;TL值調(diào)整(增加)130A5: JBK3,
10、A7;按下K3(TL值設(shè)定鍵)程序向下運行131ACALL SPK_BZ;蜂鳴器響一聲132INCTEMP_TL ;TL 值增加 1133MOVA, TEMP_TL ;TL 值送入 A134CJNEA,#99,A6;比較,若A=99,程序向下運行135MOVTEMP_TL,#00H ;TL 值清 0136A6: ACALL LOOK_ALARM ;調(diào)用顯示信息區(qū)子程序137MOVR5, #10138ACALL DELAY;調(diào)用延時程序139JMPA5;程序轉(zhuǎn)移到A5,循環(huán);確定調(diào)整OKA7: JB K4, A0 ;按下K4(調(diào)整確定鍵),程序向下運行ACALL SPK_BZ;蜂鳴器響一聲144
11、JNB K4, $;等放開145RET;程序返回146 ;147 ;TH值調(diào)整(減少)148 A8: JB K2, A10;按下K2(設(shè)定鍵),程序向下運行149150151152153154155156157158159160161162163164165166167168169ACALL SPK_BZ;蜂鳴器響一聲DEC TEMP_TH;TH 值減 1MOV A,TEMP_TH;TH 值送入 ACJNE A,#0FFH,A9 ;比較,若A=0FF程序向下運行JMP A12;轉(zhuǎn)移到 A12A9: ACALL LOOK_ALARM ;調(diào)用顯示信息區(qū)子程序MOV R5, #10ACALL DEL
12、AY;調(diào)用延時子程序JMP A0;轉(zhuǎn)移到A12;TL值調(diào)整(減少)A10: JB K3, A13ACALL SPK BZDECMOVCJNEJMPTEMPTLA,TEMP_TL;按K3(TL值設(shè)定鍵),程序向下運行;蜂鳴器響一聲;TL值減1;TH值送入AA,#0FFH,A11A12;比較,若A=0FF程序向下運行;轉(zhuǎn)移到A12A11: ACALL LOOK_ALARM ;調(diào)用顯示信息區(qū)子程序MOV R5, #10ACALL DELAY ;調(diào)用延時子程序JMP A0;轉(zhuǎn)移到A0170171172173174175176177178179180181182183184185186187188189
13、190191JMP A3;轉(zhuǎn)移到A3 , TH值調(diào)整(增加)A13: JMP A7 ;轉(zhuǎn)移到A7,確定調(diào)整OKRET;子程序返回顯示信息區(qū)子程序LOOK_ALARM:MOV DPTR,#M_ALAX2 ;存表MOV A,#2;顯示在第二行ACALL LCD_PRINT ;調(diào)用顯示字符子程序MOV A,#0C6H;顯示起始地址為第二行第7位ACALL TEMP_BJ1;調(diào)用顯示溫度標(biāo)記子程序MOV A,TEMP_TH ;加載 TH 數(shù)據(jù)MOV X,#3;設(shè)置位置ACALL SHOW_LINE2H ;顯示數(shù)據(jù);MOV A,#0CEH;設(shè)定顯示起始地址為第二行第15位ACALL TEMP_BJ1;調(diào)
14、用顯示溫度標(biāo)記子程序MOV A,TEMP_TL ;加載 TL 數(shù)據(jù)MOV X,#12;設(shè)置位置ACALL SHOW_LINE2L ;顯示數(shù)據(jù)RET192193194195196197198199200201202203205206207208209210211212213214M_ALAX1:DB LOOK ALERT CODE,0M_ALAX2:DB TH: TL: ,0,;顯示溫度標(biāo)記子程序TEMP_BJ1:ACALL WR_COMM ;調(diào)用寫指令子程序MOVDPTR,#BJ2;存代碼表MOVR1,#0;使指針指到表中第一個碼MOVR0,#2;取碼次數(shù)B0: MOVA,R1;A為0MOVC
15、 A,A+DPTR ;讀取碼ACALL WR_DATA ;調(diào)用寫數(shù)據(jù)子程序INC R1 ;R1 值加 1DJNZ R0,B0;判斷是否將代碼讀取完?RETBJ2:;代碼表DB 00H,C”在LCD的第二行顯示高溫數(shù)字SHOW_LINE2H:MOV B,#100;設(shè)置被除數(shù),B為百位數(shù)DIV AB;除法運算,結(jié)果A存商數(shù),B存余數(shù)ADD A,#30H;低半字節(jié)加30得到ASCII碼(轉(zhuǎn)換為字符)PUSH B;B放入堆棧暫存起來MOV B,X;設(shè)置LCD顯示的位置ACALL LCDP2;由LCD顯示出來POP B ;B由堆棧取出來MOV A,#0AH ;A 賦值 10XCH A,B;A、B數(shù)據(jù)互換,B為十位數(shù)DIV AB;除法運算,結(jié)果A存商數(shù),B存余數(shù)ADD A,#30H;轉(zhuǎn)換為字符INC X;LCD顯示位位置
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 汽車行業(yè)市場前景及投資研究報告:海外零部件法雷奧聚焦未來出行研發(fā)、協(xié)同、全球化
- 項目部專職安全員工作總結(jié)
- 四年級下冊語文教案
- 語文A版第十冊語文全冊教案
- 《中式烹調(diào)工藝》-烹飪基礎(chǔ)技能 課件 03鮮活原料的初加工、04原料剔骨分檔出肉技術(shù)
- 2024屆山西省朔州市中考英語考前最后一卷含答案
- 2024屆山東省日照市田家炳實驗中學(xué)中考英語模擬預(yù)測題含答案
- 國電系統(tǒng)-安徽省-2024年《信息安規(guī)》科目 單選題+多選題+判斷題+簡答題真題沖刺卷9月份B卷
- 2024年水楊酸鋅改性樹脂(無碳復(fù)寫紙顯色劑)相關(guān)公司行業(yè)營銷方案
- 高中化學(xué)選修4知識點總結(jié)+期末考卷及答案
- 下肢靜脈血栓查房課件(PPT 21頁)
- 小流域設(shè)計洪水的計算(29頁清楚明了)
- T∕CAWA 002-2021 中國疼痛科專業(yè)團(tuán)體標(biāo)準(zhǔn)
- 蘇教版四年級上冊第六單元《親愛的回聲》
- 用友手袋箱包皮具行業(yè)ERP解決方案
- 【精品】小學(xué)生心理健康測試卷(含答案)
- 武陟大氣污染防治專家團(tuán)隊技術(shù)服務(wù)內(nèi)容及要求
- 小學(xué)語文課堂教學(xué)藝術(shù)(課堂PPT)
- 空調(diào)凈化系統(tǒng)自凈時間驗證方案20161121
- 固體礦產(chǎn)勘查階段劃分及要求 資源儲量分類及估算
- 電鍍工藝鋁陽極氧化染黑色工作經(jīng)驗介紹圖
評論
0/150
提交評論