溫度傳感器18b20做的溫度計_第1頁
溫度傳感器18b20做的溫度計_第2頁
溫度傳感器18b20做的溫度計_第3頁
溫度傳感器18b20做的溫度計_第4頁
溫度傳感器18b20做的溫度計_第5頁
已閱讀5頁,還剩3頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、本電路采用用DS18B20做溫度傳感器,3位共陽數(shù)碼管做顯示,AT89C2051單片機做處理控制,電路簡單,無需調(diào)試,安裝好后就可以使用了。從X1接入5V0.5V直流電源(注意正負極),按一下S1進入溫度設(shè)定狀態(tài),這時可以按S2或S3調(diào)整設(shè)定溫度值,再按一下S1電路顯示當前的溫度值,長按S1為關(guān)閉顯示和溫控,再次S2和S3任意一鍵再次打開。電路中還設(shè)計了一路控制輸出,當當前溫度超出設(shè)定溫度時LED1被點亮,同時從X2輸出5V電壓,可驅(qū)動5V繼電器等。;*;數(shù)據(jù)變量定義;*TEMPLEQU34H;DS18B20溫度采集低八位TEMPHEQU35H;DS18B20溫度采集高八位L0EQU30H;實

2、時溫度L1EQU31H;個位顯示緩存L2EQU32H;十位顯示緩存L3EQU33H;百位顯示緩存HWEQU3FH;最高溫度T1_SEQU3EH;-;-數(shù)碼管-段選-P_ABITP1.0P_BBITP1.1P_CBITP1.2P_DBITP1.3P_EBITP1.4P_FBITP1.5P_GBITP1.6;-位選-BAI_WBITP3.2SHI_WBITP3.3GE_WBITP3.4;-LED-JDQBITP3.5;-按鍵-S1BITP1.7S2BITP3.0S3BITP3.1;-DS18B20-DS18B20BITP3.7 ;DS18B20數(shù)據(jù)腳定義S1_1BIT20H.0XS_NOBIT20

3、H.1;*;程序存儲空間分配;*ORG0000HAJMPSTARTORG000BHAJMPINT_T0ORG0030H;*;程序初始化;*START:MOVSP,#60HMOVR0,#30HMOVR1,#20ST1:MOVR0,#0INCR0DJNZR1,ST1CLRS1_1MOVHW,#16MOV TMOD,#B;定時器T0設(shè)定為工作方式1MOV TH0,#4CH;定時器T0計數(shù)初值高位MOV TL0,#00H;定時器T0計數(shù)初值低位SETB EA ;開總中斷SETB ET0 ;允許定時器T0中斷SETBTR0;啟動定時器T0;*;主程序開始;*LOOP:JBXS_NO,NO_XSCALLD

4、ISPLAYCALLBCD;將2進制轉(zhuǎn)成BCD碼CALLDISPLAYJMPLOOP;*;t0中斷服務(wù)子程序;*INT_T0:PUSHACCPUSHPSWMOV TH0,#4CH;定時器T0計數(shù)初值高位MOV TL0,#00H;定時器T0計數(shù)初值低位CALLWENDUZH;調(diào)用溫度轉(zhuǎn)換子程序;CALLDISPLAY INCT1_SMOVA,T1_SCJNEA,#3,EXIT1MOVT1_S,#00CALLAJEXIT1:POPPSWPOPACCRETI;-;-NO_XS:MOVL1,#10MOVL2,#10MOVL3,#10SETBJDQCLRS1_1CALLDPLPJMPLOOP;*;按鍵處

5、理;*AJ:JBS1,A1JBXS_NO,A1MOVR4,#255A0:CALLDISPLAYJBS1,A0_0DJNZR4,A0SETBXS_NORETA0_0:CPLS1_1A1:JBS2,A2CLRXS_NOJNBS1_1,A4MOVA,HWCJNEA,#125,A3RETA3:INCHWA2:JBS3,A4CLRXS_NOJNBS1_1,A4MOVA,HWCJNEA,#00,A5RETA5:DECHWA4:RET;*;DS18B20初始化子程序;*CHUSHI18B20:CLRDS18B20;總線拉低MOVR7,#250;保持480US以上,(保持500US)DJNZR7,$SETBD

6、S18B20JBDS18B20,$MOVR7,#120;保持60US240US,(保持240US)DJNZR7,$JNBDS18B20,$MOVR7,#120DJNZR7,$RET;*;DS18B20讀的子程序;*RD18B20:MOVR6,#8;設(shè)置讀,8位數(shù)據(jù)CLRAK2:CLRDS18B20;總線拉低NOPNOPNOPNOPSETBDS18B20;MOVR7,#5;DJNZR7,$MOVC,DS18B20;RRCAMOVR7,#23DJNZR7,$SETBDS18B20;DJNZR6,K2RET;*;DS18B20寫的子程序;*WR18B20:MOVR6,#8K1:CLRDS18B20M

7、OVR7,#5;DJNZR7,$RRCAMOVDS18B20,CMOVR7,#50DJNZR7,$SETBDS18B20DJNZR6,K1RET;*;DS18B20溫度轉(zhuǎn)換子程序;*WENDUZH:CALLCHUSHI18B20;調(diào)用DS18B20初始化子程序MOVA,#0CCHCALLWR18B20MOVA,#44HCALLWR18B20CALLCHUSHI18B20MOVA,#0CCHCALLWR18B20MOVA,#0BEHCALLWR18B20CALLRD18B20MOVTEMPL,ACALLRD18B20MOVTEMPH,A;讀取轉(zhuǎn)換結(jié)果高字節(jié)存入TEMPH單元RET;*;BCD碼轉(zhuǎn)

8、換子程序;*BCD:MOVA,TEMPLK3:ANLA,#0F0HMOV3DH,AMOVA,TEMPHANLA,#0FHORLA,3DHSWAPAMOVL0,ACJNEA,HW,CL;判斷A中值,相等正常執(zhí)行,不等則處理D1:RET;*;恒溫處理子程序;*CL:JCSW;當?shù)谝晃徊僮鲾?shù)小于第二操作數(shù)時C=1JMPJW;當?shù)谝晃徊僮鲾?shù)大于第二操作數(shù)時C=0SW:SETBJDQ;JMPD1JW:CLRJDQ;JMPD1;*;顯示子程序;*DISPLAY: CALLWDXSMOV DPTR,#TAB0 ; 指定查表啟始地址DPLP: MOVA,L1MOVCA,A+DPTRCALLCHULICLRGE

9、_WCALLDELAY_1msSETBGE_WMOVA,L3CJNEA,#00,DP1MOV DPTR,#TAB1DP1:MOVA,L2MOVCA,A+DPTRCALLCHULICLRSHI_WCALLDELAY_1msSETBSHI_WMOVA,L3MOVCA,A+DPTRCALLCHULICLRBAI_WCALLDELAY_1msSETBBAI_W RET;-;以下是段選處理;-CHULI:JBACC.0,C0CLRP_AJMPCL0C0:SETBP_A CL0: JBACC.1,C1CLRP_BJMPCL1C1:SETBP_B CL1: JBACC.2,C2CLRP_CJMPCL2C2:

10、SETBP_CCL2: JBACC.3,C3CLRP_DJMPCL3C3:SETBP_D CL3: JBACC.4,C4CLRP_EJMPCL4C4:SETBP_ECL4: JBACC.5,C5CLRP_FJMPCL5C5:SETBP_F CL5: JBACC.6,C6CLRP_GJMPCL6C6:SETBP_G CL6: RET ;*;判斷顯示實時溫度還是最高溫度;*WDXS:JBS1_1,W2MOVA,L0JMPW1W2:MOVA,HWW1:MOVB,#100DIVABMOVL3,AMOVA,BMOVB,#10DIVABMOVL2,AMOVL1,BRET;-;*;顯示延時子程序;*DELAY_1ms:MOVR3,#255DJNZR3,$RET;*;數(shù)碼管七段碼表;*T

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論