⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ledtemperds18b20.txt

📁 LEDtemperDS18B20是用来读写温度IC的
💻 TXT
字号:


      DQ EQU P3.7
      TEMP EQU 27H
      TEMP1 EQU 28H
      TEMP2 EQU 29H
      HB EQU 30H
      LB EQU 31H
      MB EQU 32H
      ORG 0000H
      AJMP MAIN
      ORG 002CH
MAIN: 
      MOV SP,#60H
      ACALL GET_TEMP
      ACALL DISPLAY
      AJMP MAIN
GET_TEMP:
;      CLR PSW.4
;      SETB PSW.3
      CLR EA
      ACALL INT
      MOV A,#0CCH
      ACALL WRITE
      MOV A,#44H
      ACALL WRITE
   
      ACALL INT
      MOV A,#0CCH
      ACALL WRITE
      MOV A,#0BEH
      ACALL WRITE 
      ACALL READ
      MOV TEMP1,TEMP
      ACALL READ
      MOV TEMP2,TEMP
      SETB EA
      RET
INT:
      CLR EA
L0:   
      CLR DQ
      MOV R2,#200
L1:
      CLR DQ
      DJNZ R2,L1
      SETB DQ
      MOV R2,#30
L4:
      DJNZ R2,L4
      CLR C
      ORL C,DQ
      JC L0
      MOV R6,#80
L5:
      ORL C,DQ
      JC L3
      DJNZ R6,L5
      SJMP L0
L3:
      MOV R2,#250
L2:   
      DJNZ R2,L2
      RET


WRITE:
      CLR EA
      MOV R3,#8
WR1:
      SETB DQ
      MOV R4,#8
      RRC A
      CLR DQ
WR2:
      DJNZ R4,WR2
      MOV DQ,C
      MOV R4,#40
WR3:
      DJNZ R4,WR3
      NOP
      DJNZ R3,WR1
      SETB DQ
      RET


READ:
      CLR EA
      MOV R6,#8
RE1:
      SETB DQ
      NOP
      NOP
      CLR DQ
      MOV R4,#5
      NOP
      SETB DQ
RE2:
      DJNZ R4,RE2
      MOV C,DQ
      RRC A
      MOV R5,#40
RE3:
      DJNZ R5,RE3
      DJNZ R6,RE1
      MOV TEMP,A
      SETB DQ
      RET

TR_BCD:
      MOV A,TEMP1
      ANL A,#0F0H
      SWAP A
      MOV 33H,A
      MOV A,TEMP2
      ANL A,#07H
      SWAP A
      NOP
      ORL A,33H
      NOP
      NOP
      MOV B,#0AH
      DIV AB
      MOV HB,A
      MOV LB,B
      MOV A,TEMP1
      ANL A,#0FH
      MOV MB,A
      RET

DISPLAY:
      ACALL TR_BCD
;      MOV P0,#00H
      MOV R0,#4
DP11: 
      MOV R1,#250
DPLOP:
      MOV DPTR,#TAB1
      MOV A,HB
      MOVC A,@A+DPTR
      MOV P2,A
      SETB P0.7
      ACALL DL1MS
      CLR P0.7
      MOV A,LB
      MOV DPTR,#TAB2
      MOVC A,@A+DPTR
      MOV P2,A
      SETB P0.6
      ACALL DL1MS
      CLR P0.6
      MOV DPTR,#TAB5
      MOV A,MB
      MOVC A,@A+DPTR
      MOV P2,A
      SETB P0.5
      ACALL DL1MS
      CLR P0.5
      MOV P2,#63H
      SETB P0.4
      ACALL DL1MS
      CLR P0.4
      DJNZ R1,DPLOP
      DJNZ R0,DP11
      RET

DL1MS:            ;1MS延时
      MOV R7,#80 
      DJNZ R7,$
      RET

;7段数码管0~9数字的共阳显示代码
TAB1:   DB  03H,9FH,25H,0DH,99H,49H,41H,1FH,01H,09H  ;0~9
TAB2:   DB  02H,9EH,24H,0CH,98H,48H,40H,1EH,00H,08H  ;0.~9.
TAB3:   DB  03H,03H,03H,41H,9FH,0DH,9FH,09H  ;00 06 13 19
        DB  25H,49H,0DH,9FH,0DH,01H,99H,99H  ;25 31 38 44
        DB  49H,03H,49H,41H,41H,25H,41H,09H  ;50 56 62 69
        DB  1FH,49H,01H,9FH,01H,01H,09H,99H  ;75 81 88 94
TAB11:  DB  28H,0EBH,32H,62H,0E1H,64H,24H,0EAH,20H,60H  ;0~9
TAB22:  DB  08H,0CBH,12H,42H,0C1H,44H,04H,0CAH,00H,40H  ;0.~9.
TAB33:  DB  28H,28H,28H,24H,0EBH,62H,0EBH,60H  ;00 06 13 19
        DB  32H,64H,62H,0EBH,62H,20H,0E1H,0E1H ;25 31 38 44
        DB  64H,28H,64H,24H,24H,32H,24H,60H    ;50 56 62 69
        DB  0EAH,64H,20H,0EBH,20H,20H,60H,0E1H ;75 81 88 94
TAB5:   DB  03H,9FH,9FH,25H,0DH,0DH,99H,99H,49H,41H,41H,1FH,01H,01H,09H,09H

      
      END

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -