📄 disp.asm
字号:
//======================================================================
// 文件名称: DISP.ASM
// 功能描述: 在LED上显示DS18B20测量的温度值
// 维护记录:
//======================================================================
.external _fenli
.INCLUDE HARDWARE.INC
.external _SHIWEI
.external _GEWEI
.external _XIAOSHU
.external _XIAOSHU2
.data
TABLE: .dw 0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f
.code
.public _DISP
_DISP:
R3=BP
PUSH R3 TO [SP]
call _fenli
r1=1
[P_Watchdog_Clear] = R1; //清看门狗
r1=[P_IOA_Data]
r1=r1&0x00ff
[P_IOA_Data]=r1
r1=[P_IOA_Dir]
r1=r1|0xff00
[P_IOA_Dir]=r1
r1=[P_IOA_Attrib]
r1=r1|0xff00
[P_IOA_Attrib]=r1
R1=[P_IOB_Data]
R1=R1|0x0033
[P_IOB_Data]=r1
r1=[P_IOB_Dir]
R1=R1|0x0033
[P_IOB_Dir]=r1
r1=[P_IOB_Attrib]
r1=r1|0x0033
[P_IOB_Attrib]=r1
R1=[P_IOB_Data]
r1=r1&0xffcc
[P_IOB_Data]=r1
BP=TABLE
R1=[_SHIWEI]
BP=BP+R1
R1=[BP]
r1=r1 ROL 4
r1=r1 ROL 4
R1=R1&0xff00
R2=[P_IOA_Data]
r2=r2&0x00ff
r1=r1|r2
[P_IOA_Data]=r1
R1=[P_IOB_Data]
r1=r1|0x0033
r1=r1&0xFFCD
[P_IOB_Data]=r1
call _de1
r1=[P_IOB_Data]
r1=r1&0xffcc
[P_IOB_Data]=r1
BP=TABLE
R1=[_GEWEI]
BP=BP+R1
R1=[BP]
r1=r1 ROL 4
r1=r1 ROL 4
R1=R1&0xff00
R1=R1|0x8000
R2=[P_IOA_Data]
r2=r2&0x00ff
r1=r1|r2
[P_IOA_Data]=r1
r1=[P_IOB_Data]
r1=r1|0x0002
r1=r1&0xFFCE
[P_IOB_Data]=r1
call _de1
r1=[P_IOB_Data]
r1=r1&0xffcc
[P_IOB_Data]=r1
BP=TABLE
R1=[_XIAOSHU]
BP=BP+R1
R1=[BP]
r1=r1 ROL 4
r1=r1 ROL 4
R1=R1&0xff00
R2=[P_IOA_Data]
r2=r2&0x00ff
r1=r1|r2
[P_IOA_Data]=r1
r1=[P_IOB_Data]
r1=r1|0x0010
r1=r1&0xFFDC
[P_IOB_Data]=r1
CALL _de1
r1=[P_IOB_Data]
r1=r1&0xffcc
[P_IOB_Data]=r1
BP=TABLE
R1=[_XIAOSHU2]
BP=BP+R1
R1=[BP]
r1=r1 ROL 4
r1=r1 ROL 4
R1=R1&0xff00
R2=[P_IOA_Data]
r2=r2&0x00ff
r1=r1|r2
[P_IOA_Data]=r1
r1=[P_IOB_Data]
r1=r1|0x0020
r1=r1&0xFFEC
[P_IOB_Data]=r1
CALL _de1
r1=[P_IOB_Data]
r1=r1&0xffcc
[P_IOB_Data]=r1
POP R3 FROM [SP]
BP=R3
retf
_de1:.proc
r1=0x0160
de2:r1-=1
jnz de2
retf
.endp
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -