freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

課程設(shè)計(jì)論文-基于ds18b20的溫度控制系統(tǒng)設(shè)計(jì)-資料下載頁

2024-10-23 09:04本頁面
  

【正文】 TB NOP DJNZ R2,WR1 SETB RET 。*************************************************** 。 讀 DS18B20 的程序 ,從 DS18B20 中讀出一個(gè)字節(jié)的溫度數(shù)據(jù) 。*************************************************** READ_1820: MOV R4,2 。將溫度高位和低位從 DS18B20中讀出 MOV R1,TEMPER_L 。低位存入 29H(TEMPER_L),高位存入28H(TEMPER_H) RE00: MOV R2,8 。數(shù)據(jù)一共有 8位 RE01: CLR C SETB NOP NOP CLR NOP NOP NOP SETB MOV R3,4 RE10: DJNZ R3,RE10 MOV C, RRC A MOV R3,20 RE20: DJNZ R3,RE20 DJNZ R2,RE01 MOV @R1,A DEC R1 DJNZ R4,RE00 RET 。***************************************************** 。 寫數(shù)碼管兩位顯示子程序 ,74HC164 的 data 端口接 , 。 時(shí)鐘 CLK 端口接 。****************************************************** WRITER_SMG: 。 MOV A,TEMPER_L MOV B, 0AH DIV AB 。取出十位和個(gè)位,十位放在 A 中,個(gè)位在 B 中 MOV R0,A 。將十位暫存在寄存器 R6 中 27 MOV R3,2 。數(shù)碼管兩位顯示 MOV DPTR,SMG_NUM 。數(shù)碼管段碼表地址 MOV A,B 。個(gè)位給 A WRS2:MOVC A ,@A+DPTR 。 查表 MOV R2,8 。單口串行輸出 8 個(gè)二進(jìn)制數(shù)至 74HC164 數(shù)據(jù)端口 CLR C WRS1:RLC A 。帶進(jìn)位左循環(huán) CLR MOV ,C NOP SETB 。上升沿 74HC164 輸出下移 DJNZ R2,WRS1 MOV A,R0 。將十位移入 A 中 ,進(jìn)行十位輸出至數(shù)碼管 DJNZ R3,WRS2 RET 。***************************************************** 。 獲取 18b20 測(cè)量的溫度,并進(jìn)行轉(zhuǎn)換,判斷報(bào)警 。****************************************************** GET_TEMPER: SETB LCALL INIT_1820 。先復(fù)位 DS18B20 JB FLAG1,TSS2 。DS18B20 已經(jīng)被檢測(cè)到 ,跳到 TSS2 子程序 RET 。若 DS18B20 不存在則返回 TSS2: MOV A,0CCH 。跳過 ROM 匹配 LCALL WRITER_1820 MOV A,44H 。發(fā)出溫度轉(zhuǎn)換命令 LCALL WRITER_1820 LCALL INIT_1820 。準(zhǔn)備讀溫度前先復(fù)位 MOV A,0CCH 。跳過 ROM 匹配 LCALL WRITER_1820 MOV A,0BEH 。發(fā)出讀溫度命令 LCALL WRITER_1820 LCALL READ_1820 。將讀出的溫度數(shù)據(jù)保存到 29H/28H SETB LCALL SWAPW 。 調(diào)用轉(zhuǎn)換溫度程序 LCALL CMP_TEM_ALARM 。 調(diào)用比較報(bào)警子程序 RET 。***************************************************** 。溫度轉(zhuǎn)換子程序: 。將 TEMPER_H 中的低 4 位移入 TEMPER_L 中的高 4 位 , 。TEMPER_L 中的高 4 位移入 TEMPER_L 中的低 4 位 , 。這樣獲得一個(gè)不帶小數(shù)的實(shí)際測(cè)量溫度值 。******************************************************** SWAPW: 28 MOV A,TEMPER_L ANL A,0F0H MOV R0,TEMPER_H XCHD A,@R0。(A0~3) ←→((Ri)0~3) ,各自的高 4位不變 SWAP A 。(A0~3) ←→(A4~7) 。40H,41H,42H,43H分別為 TEMPER_H( 28H)的低四位 位 地址 MOV TEMPER_L,A RET 。************************************************************* 。 溫度上下限比較報(bào)警子程序: 。 溫度上下限可以根據(jù)實(shí)驗(yàn)具體要求設(shè)定,本程序暫時(shí)設(shè)置上限為 70 度 。 下限為 30 度。當(dāng)超過上限溫度時(shí),紅燈亮,蜂鳴器響;當(dāng)?shù)陀谙孪逌囟葧r(shí) 。 綠燈亮,蜂鳴器響。紅燈與 連接,綠燈與 連接,蜂鳴器與 連接 。************************************************************** CMP_TEM_ALARM: CLR C CJNE A,46H,DEAL1。設(shè)置高溫上限 70 度 SJMP HAIGH DEAL1: JNC HAIGH CJNE A,1EH,DEAL2。設(shè)置低溫下限 30 度 SJMP SETLOW DEAL2: JC SETLOW SETB 。 清除報(bào)警 SETB 。 SETB JMP BACK HAIGH: CLR 。 高溫報(bào)警 , CLR 。 蜂鳴器響 SETB 。 清除低溫 , JMP BACK SETLOW:CLR 。低溫報(bào)警 CLR 。 蜂鳴器響 SETB 。 清除高溫 BACK: NOP RET 。************************************************************* 。中斷子程序: 。 現(xiàn)場(chǎng)保護(hù)功能、按鍵處理功能、用戶輸入設(shè)定值顯示功能 。************************************************************** INTERRUPT: CLR EA 。 關(guān)中斷 PUSH TEMPER_L 。 現(xiàn)場(chǎng)保護(hù) 29 PUSH ACC PUSH B PUSH PSW 。 現(xiàn)場(chǎng)保護(hù) SETB RS1 。 換到 Rn 寄存器工作區(qū) 1 SETB EA CLR 。拉底 端口 MOV P1,0FH NOP NOP MOV A,P1 CPL A ANL A ,0FH JZ FINISH LCALL DELAY1。延時(shí) 10ms 去抖 MOV A,P1 CPL A ANL A ,0FH JZ FINISH SS: JNB ,S0 。按鍵 S0 比較處理 JNB ,S1 。按鍵 S1 比較處理 JNB ,S2 。按鍵 S2 比較處理 JNB ,S3 。按鍵 S3 比較處理 SJMP FINISH S0: MOV TEMPER_L,40 。 若按下 S0,溫度設(shè)定值為 40 度 LCALL WRITER_SMG LCALL DELAY LCALL DELAY LCALL DELAY LCALL DELAY SJMP FINISH S1:MOV TEMPER_L,50 。 若按下 S1,溫度設(shè)定值為 50 度 LCALL WRITER_SMG LCALL DELAY LCALL DELAY LCALL DELAY LCALL DELAY SJMP FINISH S2: MOV TEMPER_L,60 。 若按下 S2,溫度設(shè)定值為 60 度 LCALL WRITER_SMG LCALL DELAY LCALL DELAY LCALL DELAY LCALL DELAY SJMP FINISH 30 S3: MOV TEMPER_L,70 。 若按下 S3,溫度設(shè)定值為 70 度 LCALL WRITER_SMG LCALL DELAY LCALL DELAY LCALL DELAY LCALL DELAY FINISH:SETB 。拉高 開啟第二功能計(jì)數(shù)器 T1 MOV P1,0F0H 。拉底端口 CLR EA CLR RS1 。恢復(fù)到 Rn 寄存器工作區(qū) 0 POP PSW POP B POP ACC POP TEMPER_L SETB EA RETI 。************************************ 。 延時(shí)子程序,延時(shí)約為 。************************************* DELAY: MOV R5,250 LOOP2: MOV R4,250 LOOP1:NOP NOP DJNZ R4,LOOP1 DJNZ R5,LOOP2 RET 。************************************ 。 延時(shí)子程序 1,延時(shí)約為 10ms 。************************************* DELAY1:MOV R5,10 LOOP4: MOV R4,250 LOOP3:NOP NOP DJNZ R4,LOOP3 DJNZ R5,LOOP4 RET 。********************************** 。 數(shù)碼管段碼表 09 。*********************************** SMG_NUM: DB 0c0H,0fcH,92H,98H,0acH,89H,81H,0dcH DB 80H,88H END 31 附錄二:總體硬件電路圖
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1