温度数值转化.asm

来自「美国达拉斯温度传感器DS18B20的温度数值转化程序。」· 汇编 代码 · 共 42 行

ASM
42
字号
;A,或16H都是八位,八位最在只能传进255(十进制)


ORG 0000H
MAIN:MOV 16H,#23;(16H)=23
;MOV A,#23
MOV A,16H ;A=23
MOV B,#100 ;分离出百位数B=100	
DIV AB;A=MOD(A/B)=MOD(23/100)=23,B=0
MOV A,#10;A=10
XCH A,B
DIV AB
SWAP A
ADD A,B
MOV 20H,A
MOV A,20H
ANL A,#0FH
MOV DPTR,#TAB
MOVC A,@A+DPTR
MOV P1,A
LCALL DELAY
MOV A,20H
ANL A,#0F0H
SWAP A
MOVC A,@A+DPTR
MOV P1,A
LCALL DELAY
;LCALL MAIN
;SJMP $

;TAB:DB 0CFH,06H,0ABH,2FH,66H,6DH,0FDH,07H,0FFH,7FH
TAB:DB 7EH,30H,6DH,79H,33H,5BH,5fH,72H,7FH,7BH
;TAB:DB 3FH,30H,6FH,79H,72H,5BH,5FH,33H,0FFH,7BH,
DELAY:MOV R3,#04H       ;延时500mS子程序
    D1:MOV R6,#0ffH
    D2:MOV R7,#0FFH
    D3:DJNZ R7,D3
       CPL P3.0
       DJNZ R6,D2
       DJNZ R3,D1
       RET
END

⌨️ 快捷键说明

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