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

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

?? ds18b20-lcd.asm

?? wl022_ds18b20+1602lcd顯示溫度控制,在8051上運行
?? ASM
?? 第 1 頁 / 共 2 頁
字號:
         setb date_line
         nop
         nop
         clr date_line        ;讀前總線保持為低
         nop
         nop
         nop
         setb date_line       ;開始讀總線釋放
         mov r3,#09           ;延時18微妙
         djnz r3,$
         mov c,date_line      ;從DS18B20總線讀得一個BIT
         mov r3,#3CH
         djnz r3,$            ;等待100微妙
         rrc a                ;把讀得的位值環(huán)移給A
         djnz r2,re01         ;讀下一個BIT
         mov @r1,a
         inc r1
         djnz r4,re00
         ret


;*****************************************************
;  處理溫度 BCD 碼子程序
;****************************************************
CONVTEMP:      MOV  A,TEMPH       ;判溫度是否零下
               ANL  A,#80H
               JZ  TEMPC1         ;溫度零上轉(zhuǎn)
               CLR  C
               MOV  A,TEMPL       ;二進(jìn)制數(shù)求補(bǔ)(雙字節(jié))
               CPL  A             ;取反加1
               ADD  A,#01H
               MOV  TEMPL,A
               MOV  A,TEMPH
               CPL  A
               ADDC  A,#00H
               MOV  TEMPH,A
               SJMP  TEMPC11

TEMPC1:        MOV  TEMPHC,#0AH     ;+
TEMPC11:       MOV  A,TEMPHC
               SWAP  A
               MOV  TEMPHC,A
               MOV  A,TEMPL
               ANL  A,#0FH              ;乘0.0625
               MOV  DPTR,#TEMPDOTTAB
               MOVC  A,@A+DPTR
               MOV  TEMPLC,A            ;TEMPLC LOW=小數(shù)部分 BCD

               MOV  A,TEMPL             ;整數(shù)部分
               ANL  A,#0F0H             ;取出高四位
               SWAP  A
               MOV  TEMPL,A
               MOV  A,TEMPH             ;取出低四位
               ANL  A,#0FH
               SWAP  A
               ORL  A,TEMPL             ;重新組合
               MOV  TEMP_ZH,A
               LCALL  HEX2BCD1
               MOV  TEMPL,A
               ANL  A,#0F0H
               SWAP  A
               ORL  A,TEMPHC            ;TEMPHC LOW = 十位數(shù) BCD
               MOV  TEMPHC,A
               MOV  A,TEMPL
               ANL  A,#0FH
               SWAP  A                  ;TEMPLC HI = 個位數(shù) BCD
               ORL  A,TEMPLC
               MOV  TEMPLC,A
               MOV  A,R4
               JZ  TEMPC12
               ANL  A,#0FH
               SWAP  A
               MOV  R4,A
               MOV  A,TEMPHC            ;TEMPHC HI = 百位數(shù) BCD
               ANL  A,#0FH
               ORL  A,R4
               MOV  TEMPHC,A
TEMPC12:       RET
;---------------------------------------------------------------
HEX2BCD1:
              MOV  B,#064H          ;十六進(jìn)制-> BCD
              DIV  AB               ;B= A % 100
              MOV  R4,A             ;R7 = 百位數(shù)
              MOV  A,#0AH
              XCH  A,B
              DIV  AB               ;B = A % B
              SWAP  A
              ORL  A,B
              RET
;-------------------------------------------------------------
;  小數(shù)部分碼表
;-------------------------------------------------------------
TEMPDOTTAB:
         DB   00H,00H,01H,01H,02H,03H,03H,04H
         DB   05H,05H,06H,06H,07H,08H,08H,09H
;=====================================================
LOOK_ALARM:

          MOV  DPTR,#M_ALAX2   ;指針指到顯示信息區(qū)
          MOV  A,#2            ;顯示在第二行
          CALL  LCD_PRINT

          MOV  A,#0C6H
          CALL  TEMP_BJ1
          MOV  A,TEMP_TH       ;加載TH數(shù)據(jù)
          MOV  LCD_X,#3        ;設(shè)置位置
          CALL  SHOW_DIG2H     ;顯示數(shù)據(jù)

          MOV  A,#0CEH
          CALL  TEMP_BJ1
          MOV  A,TEMP_TL       ;加載TL數(shù)據(jù)
          MOV  LCD_X,#12       ;設(shè)置位置
          CALL  SHOW_DIG2L     ;顯示數(shù)據(jù)
          RET
;--------------------------------------------
M_ALAX1:
     DB   " LOOK ALERT CODE",0
M_ALAX2:
     DB   "TH:      TL:    ",0
;--------------------------------------------
TEMP_BJ1:
          CALL WCOM
          MOV  DPTR,#BJ2      ;指針指到顯示信息區(qū)
          MOV  R1,#0
          MOV  R0,#2

BBJJ2:    MOV  A,R1
          MOVC A,@A+DPTR
          CALL  WDATA
          INC R1
          DJNZ  R0,BBJJ2
          RET
BJ2:
      DB  00H,"C"

;---------------------------------------------------
SHOW_DIG2H:                ;在 LCD 的第二行顯示數(shù)字
          MOV  B,#100
          DIV  AB
          ADD  A,#30H
          PUSH  B
          MOV  B,LCD_X
          CALL  LCDP2
          POP  B
          MOV  A,#0AH
          XCH  A,B
          DIV  AB
          ADD  A,#30H
          INC  LCD_X
          PUSH  B
          MOV  B,LCD_X
          CALL  LCDP2
          POP  B
          INC  LCD_X
          MOV  A,B
          MOV  B,LCD_X
          ADD  A,#30H
          CALL  LCDP2
          RET

SHOW_DIG2L:                ;在 LCD 的第二行顯示數(shù)字
          MOV  B,#100
          DIV  AB
          MOV  A,#0AH
          XCH  A,B
          DIV  AB
          ADD  A,#30H
          PUSH  B
          MOV  B,LCD_X
          CALL  LCDP2
          POP  B
          INC  LCD_X
          MOV  A,B
          MOV  B,LCD_X
          ADD  A,#30H
          CALL  LCDP2
          RET
;-------------------------------------------------------------
;顯示區(qū) BCD 碼溫度值刷新子程序
;-------------------------------------------------------------
DISPBCD:
              MOV  A,TEMPLC
              ANL  A,#0FH
              MOV  70H,A                 ;小數(shù)位
              MOV  A,TEMPLC
              SWAP  A
              ANL  A,#0FH
              MOV  71H,A                 ;個位
              MOV  A,TEMPHC
              ANL  A,#0FH
              MOV  72H,A                 ;十位
              MOV  A,TEMPHC
              SWAP  A
              ANL  A,#0FH
              MOV  73H,A                 ;百位
              MOV  A,TEMPHC
              ANL  A,#0F0H
              CJNE  A,#010H,DISPBCD0
              SJMP  DISPBCD2

DISPBCD0:     MOV  A,TEMPHC
              ANL  A,#0FH
              JNZ  DISPBCD2               ;十位數(shù)是0
              MOV  A,TEMPHC
              SWAP  A
              ANL  A,#0FH
              MOV  73H,#0AH               ;符號位不顯示
              MOV  72H,A                  ;十位數(shù)顯示符號
DISPBCD2:     RET

;==========================================================
; LCD 1602 顯示子程序
;==========================================================
CONV:
          MOV  A,73H         ;加載百位數(shù)據(jù)
          MOV  LCD_X,#6      ;設(shè)置位置
          CJNE A,#1,CONV1
          JMP  CONV2
CONV1:    MOV  A,#" "
          MOV  B,LCD_X
          CALL  LCDP2
          JMP  CONV3
CONV2:    CALL  SHOW_DIG2    ;顯示數(shù)據(jù)
CONV3:    INC  LCD_X             ;
          mov  a,72h         ;十位
          CALL  SHOW_DIG2
          inc  LCD_X
          mov  a,71h         ;個位
          CALL  SHOW_DIG2
          inc  LCD_X
          MOV  A,#'.'
          MOV  B,LCD_X
          CALL  LCDP2
          MOV  A,70h         ;加載小數(shù)點位
          INC  LCD_X         ;設(shè)置位置
          CALL  SHOW_DIG2    ;顯示數(shù)據(jù)
          RET
;-------------------------------------------------------
SHOW_DIG2:                 ;在 LCD 的第二行顯示數(shù)字
          ADD  A,#30H
          MOV  B,LCD_X
          CALL  LCDP2
          RET
;---------------------------------------------------------
LCDP2:                    ;在LCD的第二行顯示字符
         PUSH  ACC        ;
         MOV  A,B         ;設(shè)置顯示地址
         ADD  A,#0C0H     ;設(shè)置LCD的第二行地址
         CALL  WCOM       ;寫入命令
         POP  ACC         ;由堆棧取出A
         CALL  WDATA      ;寫入數(shù)據(jù)
         RET
;---------------------------------------------------------


SET_LCD:                     ;對 LCD 做初始化設(shè)置及測試
          CLR  LCD_EN
          CALL  INIT_LCD     ;初始化 LCD
          CALL  STORE_DATA   ;將自定義字符存入LCD的CGRAM
          RET
INIT_LCD:                  ;8位I/O控制 LCD 接口初始化
          MOV  A,#38H        ;雙列顯示,字形5*7點陣
          CALL  WCOM
          call  delay1
          MOV  A,#38H
          CALL  WCOM
          call  delay1

          MOV  A,#38H
          CALL  WCOM
          call  delay1
          MOV  A,#0CH        ;開顯示,顯示光標(biāo),光標(biāo)不閃爍
          CALL  WCOM
          call  delay1
          MOV  A,#01H        ;清除 LCD 顯示屏
          CALL  WCOM
          call  delay1
          RET
;==================================================
CLR_LINE1:                   ;清除LCD的第一行字符
          MOV  A,#80H        ;設(shè)置 LCD 的第一行地址
          CALL  WCOM         ;
          MOV  R0,#24        ;設(shè)置計數(shù)值
    C1:   MOV  A,#' '        ;載入空格符至LCD
          CALL  WDATA        ;輸出字符至LCD
          DJNZ  R0,C1        ;計數(shù)結(jié)束
          RET
;==================================================
LCD_PRINT:       ;在LCD的第一行或第二行顯示字符

          CJNE  A,#1,LINE2  ;判斷是否為第一行
  LINE1:  MOV  A,#80H       ;設(shè)置 LCD 的第一行地址
          CALL  WCOM        ;寫入命令
          CALL  CLR_LINE    ;清除該行字符數(shù)據(jù)
          MOV  A,#80H       ;設(shè)置 LCD 的第一行地址
          CALL  WCOM        ;寫入命令
          JMP  FILL

  LINE2:  MOV  A,#0C0H      ;設(shè)置 LCD 的第二行地址
          CALL  WCOM        ;寫入命令
          CALL  CLR_LINE    ;清除該行字符數(shù)據(jù)
          MOV  A,#0C0H      ;設(shè)置 LCD 的第二行地址
          CALL  WCOM
  FILL:   CLR  A            ;填入字符
          MOVC  A,@A+DPTR   ;由消息區(qū)取出字符
          CJNE  A,#0,LC1    ;判斷是否為結(jié)束碼
          RET
  LC1:    CALL  WDATA       ;寫入數(shù)據(jù)
          INC  DPTR         ;指針加1
          JMP  FILL         ;繼續(xù)填入字符
          RET
;=========================================
CLR_LINE:                  ;清除該行 LCD 的字符
          MOV  R0,#24
   CL1:   MOV  A,#' '
          CALL  WDATA
          DJNZ  R0,CL1
          RET
   DE:    MOV  R7,#250
          DJNZ  R7,$
          RET
;============================================
WCOM:                     ;以8位控制方式將命令寫至LCD
          MOV  P0,A       ;寫入命令
          CLR LCD_RS      ;RS=L,RW=L,D0-D7=指令碼,E=高脈沖
          CLR LCD_RW
          SETB LCD_EN
          ACALL DELAY1        
          CLR LCD_EN
          RET
;=============================================
WDATA:                    ;以8位控制方式將數(shù)據(jù)寫至LCD
          MOV  P0,A       ;寫入數(shù)據(jù)
          SETB  LCD_RS        
          CLR  LCD_RW
          SETB  LCD_EN        
          CALL  DE
          CLR  LCD_EN
          CALL  DE
          RET
;=============================================
;PRINT A CHAR ON LINE 1
;A=ASC DATA, B=LINE X POS
;==============================================
LCDP1:                    ;在LCD的第一行顯示字符
         PUSH  ACC        ;
         MOV  A,B         ;設(shè)置顯示地址
         ADD  A,#80H      ;設(shè)置LCD的第一行地址
         CALL  WCOM       ;寫入命令
         POP  ACC         ;由堆棧取出A
         CALL  WDATA      ;寫入數(shù)據(jù)
         RET

;==============================================
BEEP_BL:
         MOV  R6,#100
 BL2:    CALL  DEX1
         CPL  BEEP
         DJNZ  R6,BL2
         MOV  R5,#10
         CALL  DELAY
         RET
 DEX1:   MOV  R7,#180
 DE2:    NOP
         DJNZ  R7,DE2
         RET
DELAY:                    ;(R5)*延時10MS
         MOV  R6,#50
 DL1:    MOV  R7,#100
         DJNZ  R7,$
         DJNZ  R6,DL1
         DJNZ  R5,DELAY
         RET

DELAY1:                    ;延時5MS
         MOV  R6,#25
 DL2:    MOV  R7,#100
         DJNZ  R7,$
         DJNZ  R6,DL2
         RET
;================================================
         END

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久免费电影网| 国产精品久久免费看| 国产亚洲一区二区三区四区| 亚洲综合小说图片| 国产一区在线不卡| 欧美日韩精品一区二区三区蜜桃| 久久亚洲一区二区三区明星换脸 | 日韩欧美一区中文| 一区二区三区四区乱视频| 国产福利91精品一区二区三区| 欧美色视频一区| 亚洲激情av在线| eeuss国产一区二区三区| 亚洲精品一区二区三区福利| 日本中文在线一区| 欧美日韩一区二区三区不卡| 亚洲卡通动漫在线| 99久久精品国产毛片| 国产日韩成人精品| 国产精品影视在线观看| 欧美电视剧在线观看完整版| 五月婷婷激情综合| 欧美日本在线视频| 三级一区在线视频先锋| 欧美日韩激情一区| 三级欧美韩日大片在线看| 欧美吞精做爰啪啪高潮| 亚洲一区在线观看免费观看电影高清 | 成人免费观看视频| 欧美国产日本韩| 成人禁用看黄a在线| 欧美极品xxx| 成人免费高清在线| 中文av一区特黄| eeuss鲁一区二区三区| 国产精品人妖ts系列视频| 成人一区二区三区中文字幕| 中文字幕不卡的av| 91蝌蚪国产九色| 亚洲午夜电影网| 91精品欧美久久久久久动漫 | 欧美久久久久免费| 日本三级亚洲精品| 欧美不卡一二三| 国产曰批免费观看久久久| 国产色一区二区| 91热门视频在线观看| 亚洲午夜精品17c| 欧美一区二区二区| 春色校园综合激情亚洲| 亚洲精品日韩综合观看成人91| 91福利在线看| 久久精品久久99精品久久| 久久久久国产精品麻豆ai换脸| 成人午夜av影视| 亚洲成人三级小说| 久久这里只有精品视频网| 成人av在线观| 日本一道高清亚洲日美韩| 久久久久久久性| 91豆麻精品91久久久久久| 蜜芽一区二区三区| 日韩码欧中文字| 日韩欧美亚洲国产精品字幕久久久 | 手机精品视频在线观看| 欧美r级电影在线观看| av资源网一区| 蜜桃一区二区三区在线观看| 亚洲国产成人午夜在线一区| 欧美日韩免费在线视频| 国产成a人亚洲| 午夜av一区二区三区| 中文字幕第一区| 日韩女优视频免费观看| 91片黄在线观看| 国产精品一级二级三级| 五月天一区二区| 日韩一区在线播放| 久久一夜天堂av一区二区三区| 91国偷自产一区二区开放时间 | 制服丝袜在线91| 91碰在线视频| 国产老女人精品毛片久久| 亚洲一区二区成人在线观看| 国产视频一区二区三区在线观看| 3d动漫精品啪啪1区2区免费| 一本大道久久a久久精品综合| 黄色日韩网站视频| 天天综合日日夜夜精品| 亚洲品质自拍视频| 国产精品免费久久| 久久久久久久av麻豆果冻| 日韩一二在线观看| 777a∨成人精品桃花网| 色88888久久久久久影院按摩| 国产91精品在线观看| 久久99日本精品| 日本aⅴ亚洲精品中文乱码| 一级日本不卡的影视| 亚洲欧美影音先锋| 欧美国产精品劲爆| 久久久久久久久久久久久久久99| 精品日韩av一区二区| 欧美一区二区观看视频| 日韩一区二区三区在线| 日韩欧美一二区| 欧美精品一区二区三| 欧美精品一区二区三区很污很色的 | 国产欧美日产一区| 欧美mv和日韩mv的网站| 日韩免费一区二区| 精品国产伦一区二区三区观看方式 | 久久无码av三级| 精品国产自在久精品国产| 日韩一级完整毛片| 日韩精品一区二区三区四区| 日韩精品一区二区在线| 亚洲精品在线电影| 欧美国产日韩精品免费观看| 一区二区中文视频| 一区二区在线免费观看| 亚洲国产综合视频在线观看| 亚洲福利视频三区| 秋霞午夜鲁丝一区二区老狼| 美国欧美日韩国产在线播放 | 日本成人在线看| 激情久久久久久久久久久久久久久久| 美国十次综合导航| 成人丝袜高跟foot| 色成年激情久久综合| 欧美精品三级日韩久久| 精品久久久久一区二区国产| 久久精品亚洲一区二区三区浴池| 国产精品理伦片| 亚洲一区欧美一区| 伦理电影国产精品| 成人国产精品视频| 欧美日韩一区三区四区| 精品国产一区二区三区不卡| 国产精品人妖ts系列视频| 亚洲第一激情av| 韩国三级在线一区| 91在线小视频| 日韩欧美一区在线| 亚洲国产精品二十页| 亚洲一区在线电影| 国产高清精品在线| 欧美影院午夜播放| 久久―日本道色综合久久| 亚洲欧美日韩电影| 极品少妇一区二区三区精品视频| 成人视屏免费看| 日韩欧美一区二区三区在线| 136国产福利精品导航| 石原莉奈在线亚洲二区| 成人动漫av在线| 欧美一区二区女人| 亚洲精品综合在线| 国产精品综合在线视频| 欧美日韩久久久一区| 中文字幕国产一区| 久久精品国产亚洲a| 色欧美日韩亚洲| 欧美激情综合五月色丁香小说| 日本中文在线一区| 欧美在线免费视屏| 国产精品欧美极品| 精品一区二区久久| 欧美猛男男办公室激情| 亚洲人妖av一区二区| 国产伦精品一区二区三区视频青涩 | 777午夜精品视频在线播放| 国产精品久久久久精k8| 精品一区二区国语对白| 欧美午夜视频网站| 亚洲情趣在线观看| 成人免费视频一区| 久久丝袜美腿综合| 日韩中文字幕亚洲一区二区va在线 | 粗大黑人巨茎大战欧美成人| 日韩一级完整毛片| 天天色图综合网| 色呦呦一区二区三区| 国产精品欧美一级免费| 国产乱子轮精品视频| 日韩精品一区二| 日韩成人一级片| 91精品国产综合久久久蜜臀粉嫩 | 色诱亚洲精品久久久久久| 亚洲精品一区在线观看| 日本网站在线观看一区二区三区| 欧美色倩网站大全免费| 亚洲欧美日韩系列| 97精品久久久久中文字幕| 国产精品美女www爽爽爽| 国产一区二区三区美女| 欧美精品一区二区三区一线天视频| 免费成人av在线播放| 日韩欧美在线综合网| 久久精品99久久久|