亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? ds18b20-smg.asm

?? DS18B02是溫度測量片
?? ASM
?? 第 1 頁 / 共 2 頁
字號:
;          DS18B20溫度控制數(shù)碼管顯示                                           *
;*        1、P1.6= → 進入設(shè)定溫度報警值 TL 狀態(tài):                                   *
;*           L--20                                                            *
;*        2、P1.6 → 進入設(shè)定溫度報警值 TH 狀態(tài):                                   *
;*           H--28                                                            *
;*        3、P1.6 → 返回                                                          *
;*        4、設(shè)定過程: P1.4 →加鍵 (UP), P1.5 →減鍵 (DOWN),可快速調(diào)。         *
;*                                                                              **


          TIMER_L     DATA  23H
          TIMER_H     DATA  24H
          TIMER_COUN  DATA  25H

          TEMPL       DATA  26H
          TEMPH       DATA  27H
          TEMP_TH     DATA  28H
          TEMP_TL     DATA  29H

          TEMPHC      DATA  2AH
          TEMPLC      DATA  2BH
          TEMP_ZH     DATA  2CH

          BEEP        EQU   P3.7
          DATA_LINE   EQU   P3.3
          RELAY       EQU   P1.3

          FLAG1       EQU   20H.0
          FLAG2       EQU   20H.1

;-------------------------------------------------
          K1   EQU  P1.4
          K2   EQU  P1.5
          K3   EQU  P1.6
          K4   EQU  P1.7
;=================================================
          ORG 0000H
          JMP  MAIN

          ORG  000BH
          AJMP  INT_T0
;--------------------------------------------------
MAIN:     MOV SP,#30H
          MOV  TMOD,#01H        ;T0,方式1
          MOV  TIMER_L,#00H     ;50ms定時值
          MOV  TIMER_H,#4CH
          MOV  TIMER_COUN,#00H  ;中斷計數(shù)
          MOV  IE,#82H          ;EA=1,ET0=1
          LCALL  READ_E2
          ;LCALL  RE_18B20
          MOV  20H,#00H
          SETB   BEEP
          SETB   RELAY
          MOV  7FH,#0AH         ;熄滅符

          CALL RESET            ;復(fù)位與檢測DS18B20
          JNB FLAG1,MAIN1       ;FLAG1=0,DS18B20不存在
          JMP  START

MAIN1:    CALL RESET
          JB FLAG1,START
          LCALL  BEEP_BL        ;DS18B20錯誤,報警
          JMP  MAIN1
START:
          MOV A,#0CCH         ; 跳過ROM匹配
          CALL WRITE
          MOV A,#044H         ; 發(fā)出溫度轉(zhuǎn)換命令
          CALL WRITE

          CALL RESET
          MOV A,#0CCH         ; 跳過ROM匹配
          CALL WRITE
          MOV A,#0BEH         ; 發(fā)出讀溫度命令
          CALL WRITE

          CALL  READ           ;讀溫度數(shù)據(jù)
          CALL  CONVTEMP
          CALL  DISPBCD
          CALL  DISP1
          CALL  SCANKEY
          LCALL  TEMP_COMP
          JMP   MAIN1

;=====================================================
;DS18B20 復(fù)位與檢測子程序
;FLAG1=1 OK, FLAG1=0 ERROR
;======================================================
RESET:
          SETB DATA_LINE
          NOP
          CLR DATA_LINE
          MOV R0,#64H            ;主機發(fā)出延時600微秒的復(fù)位低脈沖
          MOV R1,#03H
RESET1:   DJNZ R0,$
          MOV R0,#64H
          DJNZ R1,RESET1
          SETB DATA_LINE        ;然后拉高數(shù)據(jù)線
          NOP
          MOV R0,#25H
RESET2:   JNB DATA_LINE,RESET3  ;等待DS18B20回應(yīng)
          DJNZ R0,RESET2
          JMP RESET4            ; 延時
RESET3:   SETB FLAG1            ; 置標(biāo)志位,表示DS1820存在
          JMP RESET5
RESET4:   CLR FLAG1             ; 清標(biāo)志位,表示DS1820不存在
          JMP RESET6
RESET5:   MOV R0,#064H
          DJNZ R0,$             ; 時序要求延時一段時間
RESET6:   SETB DATA_LINE
          RET
;===========================================================
;
;===========================================================
WRITE:  MOV R2,#8            ;一共8位數(shù)據(jù)
        CLR CY
WR1:
        CLR DATA_LINE        ;開始寫入DS18B20總線要處于復(fù)位(低)狀態(tài)
        MOV R3,#09
        DJNZ R3,$            ;總線復(fù)位保持18微妙以上
        RRC A                ;把一個字節(jié)DATA 分成8個BIT環(huán)移給C
        MOV DATA_LINE,C      ;寫入一個BIT
        MOV R3,#23
        DJNZ R3,$            ;等待46微妙
        SETB DATA_LINE       ;重新釋放總線
        NOP
        DJNZ R2,WR1          ;寫入下一個BIT
        SETB DATA_LINE
        RET
;============================================================
;從DS18B20中讀出溫度低位、高位和報警值TH、TL
;存入26H、27H、28H、29H
;============================================================
READ:    MOV R4,#4            ; 將溫度高位和低位從DS18B20中讀出
         MOV R1,#26H          ; 存入26H、27H、28H、29H
RE00:    MOV R2,#8
RE01:    CLR C
         SETB DATA_LINE
         NOP
         NOP
         CLR DATA_LINE        ;讀前總線保持為低
         NOP
         NOP
         NOP
         SETB DATA_LINE       ;開始讀總線釋放
         MOV R3,#09           ;延時18微妙
         DJNZ R3,$
         MOV C,DATA_LINE      ;從DS18B20總線讀得一個BIT
         MOV R3,#23
         DJNZ R3,$            ;等待46微妙
         RRC A                ;把讀得的位值環(huán)移給A
         DJNZ R2,RE01         ;讀下一個BIT
         MOV @R1,A
         INC R1
         DJNZ R4,RE00
         RET        
;--------------------------------------------
;200ms對閃動標(biāo)記取反一次
;--------------------------------------------
INT_T0:
          PUSH  ACC
          PUSH  PSW
          MOV  TL0,TIMER_L
          MOV  TH0,TIMER_H
          INC  TIMER_COUN
          MOV  A,TIMER_COUN
          CJNE  A,#04H,INT_END
          MOV  TIMER_COUN,#00H
          CPL  FLAG2
INT_END:
          POP  PSW
          POP  ACC
          RETI
;==========================================================
;重新對 DS18B20 初始化
;將設(shè)定的溫度報警值寫入 DS18B20
;==========================================================
RE_18B20:
        JB  FLAG1,RE_18B20A
        RET
RE_18B20A:
        CALL  RESET
        MOV  A,#0CCH       ;跳過ROM匹配
        LCALL  WRITE
        MOV  A,#4EH        ;寫暫存寄存器
        LCALL  WRITE
        MOV  A,TEMP_TH     ;TH(報警上限)
        LCALL  WRITE
        MOV  A,TEMP_TL     ;TL(報警下限)
        LCALL  WRITE
        MOV  A,#7FH        ;12位精確度
        LCALL  WRITE
        RET

;====================================================
;功能鍵掃描子程序
;====================================================
SCANKEY:
              MOV  P1,#0F0H
              JB  K1,SCAN_K2
              CALL  BEEP_BL
SCAN_K1:      CALL  ALERT_TL
              CALL  ALERT_PLAY
              JB   K1,SCAN_K1
              CALL  BEEP_BL
SCAN_K11:     CALL  ALERT_TH
              CALL  ALERT_PLAY
              JB    K1,SCAN_K11
              CALL  BEEP_BL
SCAN_K2:      JB  K2,SCAN_K3
              CALL  BEEP_BL
SCAN_K3:      JB  K3,SCAN_K4
              CALL  BEEP_BL
              LCALL  RESET_ALERT
              LCALL  RE_18B20
              LCALL  WRITE_E2
SCAN_K4:      JB  K4,SCAN_END
              CALL  BEEP_BL
SCAN_END:     RET

;================================================
;設(shè)置溫度報警值
;================================================
RESET_ALERT:
          CALL  ALERT_TL
          CALL  ALERT_PLAY
          JNB K3,$              ;K3為位移鍵
          SETB  TR0
RESET_TL:
          CALL  ALERT_PLAY
          JNB  FLAG2,R_TL01
          mov  75H,7fh          ;送入熄滅符
          mov  76H,7fh
          CALL  ALERT_PLAY
          JMP   R_TL02
R_TL01:   CALL  ALERT_TL
          mov  75h,7Eh          ;送設(shè)定值
          mov  76h,7Dh
          CALL  ALERT_PLAY      ;顯示設(shè)定值
R_TL02:   JNB  K1,K011A
          JNB  K2,K011B
          JNB  K3,RESET_TH
          JMP  RESET_TL
K011A:
          INC  TEMP_TL
          MOV  A,TEMP_TL
          CJNE  A,#120,K012A    ;沒有到設(shè)定上限值,轉(zhuǎn)
          MOV  TEMP_TL,#0
K012A:    CALL  TL_DEL
          JMP   RESET_TL
K011B:
          DEC  TEMP_TL
          MOV  A,TEMP_TL
          CJNE  A,#00H,K012B   ;沒有到設(shè)定下限值,轉(zhuǎn)
          MOV  TEMP_TL,#119
K012B:    CALL  TL_DEL
          JMP   RESET_TL
;-------------------------------------------------------
RESET_TH:
           CALL  BEEP_BL
           JNB  K3,$
RESET_TH1:
          CALL  ALERT_PLAY
          JNB  FLAG2,R_TH01
          mov  75H,7fh          ;送入熄滅符
          mov  76H,7fh
          CALL  ALERT_PLAY
          JMP   R_TH02
R_TH01:   CALL  ALERT_TH
          mov  75h,7Eh          ;
          mov  76h,7Dh
          CALL  ALERT_PLAY
R_TH02:   JNB  K1,K021A
          JNB  K2,K021B
          JNB  K3,K002
          JMP  RESET_TH1
K021A:
          INC  TEMP_TH
          MOV  A,TEMP_TH
          CJNE  A,#120,K022A   ;沒有到設(shè)定上限值,轉(zhuǎn)
          MOV  TEMP_TH,#0
K022A:     CALL  TH_DEL
          JMP   RESET_TH1

K021B:
          DEC  TEMP_TH         ;減1
          MOV  A,TEMP_TH
          CJNE  A,#00H,K022B   ;沒有到設(shè)定下限值,轉(zhuǎn)
          MOV  TEMP_TH,#119
K022B:    CALL  TH_DEL
          JMP   RESET_TH1

K002:     CALL  BEEP_BL
          CLR  TR0             ;關(guān)閉中斷
          RET
;-----------------------------------------------------
;鍵延時子程序
;多次調(diào)用報警值顯示程序來延時
;-----------------------------------------------------
TL_DEL:                        ;報警低值延時
          MOV  R2,#0AH
TL_DEL1:  CALL  ALERT_TL
          CALL  ALERT_PLAY
          DJNZ  R2,TL_DEL1
          RET
TH_DEL:                        ;報警高值延時
          MOV  R2,#0AH
TH_DEL1:  CALL  ALERT_TH
          CALL  ALERT_PLAY
          DJNZ  R2,TH_DEL1
          RET
;====================================================
;實時溫度值與設(shè)定報警溫度值 TH、TL 比較子程序
;當(dāng)實際溫度大于 TH 的設(shè)定值時,顯示“H”,繼電器關(guān)閉。
;當(dāng)實際溫度小于 TH 的設(shè)定值時,顯示“O”,繼電器吸合。
;當(dāng)實際溫度小于 TL 的設(shè)定值時,顯示“L”。
;閃動顯示標(biāo)記符 H、L、O
;====================================================
TEMP_COMP:
          SETB  TR0             ;啟動中斷
          MOV  A,TEMP_TH
          SUBB  A,TEMP_ZH       ;減數(shù)>被減數(shù),則

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
玉米视频成人免费看| 国产亲近乱来精品视频 | 欧美大片一区二区三区| 亚洲成人午夜影院| 欧美日韩国产三级| 日本特黄久久久高潮| 欧美成人三级在线| 国产成人精品影视| 日本一区二区三区国色天香 | 欧美四级电影在线观看| 亚洲成人午夜电影| 久久综合一区二区| 不卡一区中文字幕| 亚洲成av人片| 久久精品视频在线免费观看| 9i看片成人免费高清| 亚洲国产美国国产综合一区二区| 欧美高清视频一二三区| 理论片日本一区| 国产精品素人视频| 欧美日韩不卡在线| 国产乱码一区二区三区| 一区二区三区av电影| 精品国产网站在线观看| 91在线视频18| 麻豆精品视频在线观看视频| 中文字幕视频一区| 日韩欧美一区二区视频| 99国产欧美久久久精品| 日本不卡一二三区黄网| 亚洲欧洲日产国码二区| 日韩精品一区二区三区视频| 成人久久久精品乱码一区二区三区| 亚洲图片欧美综合| 国产欧美日韩中文久久| 欧美色成人综合| 国产成+人+日韩+欧美+亚洲| 亚洲午夜激情网站| 中文字幕亚洲在| 久久一日本道色综合| 欧美日韩在线免费视频| 成人夜色视频网站在线观看| 秋霞午夜av一区二区三区| 亚洲精品国产成人久久av盗摄 | 久久久国产精品午夜一区ai换脸| 色域天天综合网| 国产麻豆91精品| 日韩成人一区二区三区在线观看| 国产精品二区一区二区aⅴ污介绍| 欧美高清一级片在线| 色婷婷精品大视频在线蜜桃视频| 精彩视频一区二区| 日韩精品高清不卡| 一区二区三区四区高清精品免费观看 | 欧美日韩免费视频| 99亚偷拍自图区亚洲| 国产精品一色哟哟哟| 久久99精品久久久久久久久久久久| 亚洲精品第一国产综合野| 国产精品久久久久桃色tv| xfplay精品久久| 日韩女优电影在线观看| 欧美美女一区二区| 欧美色中文字幕| 日本高清视频一区二区| 99精品热视频| 99久久99久久精品免费观看| 国产成人精品亚洲777人妖| 蜜臀99久久精品久久久久久软件| 亚洲一级不卡视频| 亚洲一区二区三区四区中文字幕| 亚洲色图欧洲色图婷婷| 136国产福利精品导航| 国产日产欧美一区| 中文字幕av一区二区三区高| 久久毛片高清国产| 国产日韩欧美在线一区| 欧美国产日本视频| 亚洲图片你懂的| 亚洲欧美日韩一区二区三区在线观看| 欧美国产日韩亚洲一区| 国产精品天天看| 中文字幕日韩一区| 一区二区三区精品视频| 亚洲一区二区三区美女| 亚洲国产精品一区二区久久| 亚洲综合久久久| 午夜精品国产更新| 奇米色一区二区| 久久国产精品区| 国产一区二区免费看| 国产成人在线色| 成人久久视频在线观看| 色www精品视频在线观看| 欧美日韩在线三区| 欧美电视剧在线观看完整版| 国产日产欧产精品推荐色| 综合网在线视频| 亚洲国产成人高清精品| 日韩中文字幕区一区有砖一区| 日本 国产 欧美色综合| 国产一区二区不卡| 9久草视频在线视频精品| 欧美在线制服丝袜| 91精品国产综合久久福利软件 | 国产99久久久国产精品潘金网站| 国产福利视频一区二区三区| 91视频在线观看| 5月丁香婷婷综合| 久久久国际精品| 亚洲黄色在线视频| 蜜桃精品视频在线| 成人午夜视频免费看| 欧美在线影院一区二区| 日韩三级伦理片妻子的秘密按摩| 日本一区免费视频| 亚洲亚洲人成综合网络| 精品系列免费在线观看| 91日韩一区二区三区| 欧美一区午夜精品| 国产精品成人网| 蜜桃视频一区二区三区| 一本到高清视频免费精品| 日韩欧美视频一区| 亚洲美女免费在线| 国产乱人伦偷精品视频免下载| 色哟哟国产精品| 久久蜜臀精品av| 天天综合天天做天天综合| 丁香一区二区三区| 91麻豆精品国产91久久久| 中文字幕一区二区三区在线观看 | 极品美女销魂一区二区三区免费| eeuss鲁一区二区三区| 欧美一级国产精品| 亚洲精品成人在线| 东方aⅴ免费观看久久av| 日韩欧美亚洲另类制服综合在线| 一区二区国产盗摄色噜噜| 国产不卡视频一区二区三区| 666欧美在线视频| 亚洲一二三四区不卡| 成人免费视频一区| 久久午夜国产精品| 欧美aaa在线| 欧美午夜精品理论片a级按摩| 国产精品麻豆99久久久久久| 国模套图日韩精品一区二区| 91精品婷婷国产综合久久 | 国产嫩草影院久久久久| 视频一区二区欧美| 91久久国产最好的精华液| 中文字幕不卡在线| 成人免费黄色在线| 国产欧美精品在线观看| 久久精品久久99精品久久| 欧美日韩国产综合一区二区 | 精品999在线播放| 秋霞电影一区二区| 正在播放一区二区| 午夜激情久久久| 欧美日韩在线观看一区二区| 亚洲午夜激情网站| 欧美日韩国产中文| 日韩电影一区二区三区四区| 欧美高清视频一二三区| 日韩精彩视频在线观看| 制服丝袜中文字幕亚洲| 日本色综合中文字幕| 日韩一区二区三区四区| 精品一区在线看| 精品国产乱码久久久久久闺蜜 | 亚洲成人一区在线| 欧美精品日韩综合在线| 奇米影视在线99精品| 欧美一级日韩一级| 久久机这里只有精品| 欧美大胆一级视频| 国产精品18久久久久久久久| 久久久久久久一区| av亚洲精华国产精华| 亚洲黄色性网站| 在线不卡a资源高清| 久草精品在线观看| 国产三级一区二区三区| 成人午夜看片网址| 一区二区三区在线观看视频| 欧美视频一区二区三区四区| 美洲天堂一区二卡三卡四卡视频| 欧美sm美女调教| 懂色av一区二区三区蜜臀| 亚洲美女屁股眼交3| 91麻豆精品国产自产在线观看一区| 久久国产婷婷国产香蕉| 亚洲国产成人在线| 在线亚洲精品福利网址导航| 人妖欧美一区二区| 1000精品久久久久久久久| 欧美浪妇xxxx高跟鞋交| 国产伦精品一区二区三区视频青涩|