📄 yt_temep.s
字号:
MOVS R0,#+255
LDR.N R1,??read_SHT_data_0+0x10 ;; TemRHA + 14
STRB R0,[R1, #+0]
UXTB R0,R0 ;; ZeroExtS R0,R0,#+24,#+24
LDR.N R1,??read_SHT_data_0+0xC ;; _YT + 8
STRH R0,[R1, #+0]
LDR.N R1,??read_SHT_data_0+0x18 ;; TemRHA + 13
STRB R0,[R1, #+0]
LDR.N R1,??read_SHT_data_0+0x14 ;; _YT + 6
UXTB R0,R0 ;; ZeroExtS R0,R0,#+24,#+24
STRH R0,[R1, #+0]
??read_SHT_data_7:
ADD SP,SP,#+4
POP {PC} ;; return
Nop
DATA
??read_SHT_data_0:
DC32 ??Timecounter
DC32 TemRHA
DC32 TemRHA + 16
DC32 _YT + 8
DC32 TemRHA + 14
DC32 _YT + 6
DC32 TemRHA + 13
SECTION `.bss`:DATA:NOROOT(0)
??Timecounter:
DS8 1
SECTION `.XML`:CODE:NOROOT(2)
THUMB
sta:
PUSH {R0,LR}
LDR.N R0,??sta_0 ;; 0x40010c0c
LDR R0,[R0, #+0]
ORRS R0,R0,#0x80
LDR.N R1,??sta_0 ;; 0x40010c0c
STR R0,[R1, #+0]
LDR.N R0,??sta_0 ;; 0x40010c0c
LDR R0,[R0, #+0]
ORRS R0,R0,#0x40
LDR.N R1,??sta_0 ;; 0x40010c0c
STR R0,[R1, #+0]
MOVS R0,#+20
BL delay
LDR.N R0,??sta_0 ;; 0x40010c0c
LDR R0,[R0, #+0]
MOVS R1,#+128
BICS R0,R0,R1
LDR.N R1,??sta_0 ;; 0x40010c0c
STR R0,[R1, #+0]
MOVS R0,#+20
BL delay
LDR.N R0,??sta_0 ;; 0x40010c0c
LDR R0,[R0, #+0]
MOVS R1,#+64
BICS R0,R0,R1
LDR.N R1,??sta_0 ;; 0x40010c0c
STR R0,[R1, #+0]
MOVS R0,#+20
BL delay
ADD SP,SP,#+4
POP {PC} ;; return
DATA
??sta_0:
DC32 0x40010c0c
SECTION `.XML`:CODE:NOROOT(2)
THUMB
stop:
PUSH {R0,LR}
LDR.N R0,??stop_0 ;; 0x40010c0c
LDR R0,[R0, #+0]
MOVS R1,#+128
BICS R0,R0,R1
LDR.N R1,??stop_0 ;; 0x40010c0c
STR R0,[R1, #+0]
LDR.N R0,??stop_0 ;; 0x40010c0c
LDR R0,[R0, #+0]
ORRS R0,R0,#0x40
LDR.N R1,??stop_0 ;; 0x40010c0c
STR R0,[R1, #+0]
MOVS R0,#+20
BL delay
LDR.N R0,??stop_0 ;; 0x40010c0c
LDR R0,[R0, #+0]
ORRS R0,R0,#0x80
LDR.N R1,??stop_0 ;; 0x40010c0c
STR R0,[R1, #+0]
MOVS R0,#+20
BL delay
LDR.N R0,??stop_0 ;; 0x40010c0c
LDR R0,[R0, #+0]
MOVS R1,#+64
BICS R0,R0,R1
LDR.N R1,??stop_0 ;; 0x40010c0c
STR R0,[R1, #+0]
MOVS R0,#+20
BL delay
ADD SP,SP,#+4
POP {PC} ;; return
DATA
??stop_0:
DC32 0x40010c0c
SECTION `.XML`:CODE:NOROOT(2)
THUMB
mack:
PUSH {R0,LR}
LDR.N R0,??mack_0 ;; 0x40010c0c
LDR R0,[R0, #+0]
MOVS R1,#+128
BICS R0,R0,R1
LDR.N R1,??mack_0 ;; 0x40010c0c
STR R0,[R1, #+0]
LDR.N R0,??mack_0 ;; 0x40010c0c
LDR R0,[R0, #+0]
ORRS R0,R0,#0x40
LDR.N R1,??mack_0 ;; 0x40010c0c
STR R0,[R1, #+0]
MOVS R0,#+20
BL delay
LDR.N R0,??mack_0 ;; 0x40010c0c
LDR R0,[R0, #+0]
MOVS R1,#+64
BICS R0,R0,R1
LDR.N R1,??mack_0 ;; 0x40010c0c
STR R0,[R1, #+0]
LDR.N R0,??mack_0 ;; 0x40010c0c
LDR R0,[R0, #+0]
ORRS R0,R0,#0x80
LDR.N R1,??mack_0 ;; 0x40010c0c
STR R0,[R1, #+0]
MOVS R0,#+20
BL delay
ADD SP,SP,#+4
POP {PC} ;; return
Nop
DATA
??mack_0:
DC32 0x40010c0c
SECTION `.XML`:CODE:NOROOT(2)
THUMB
mnack:
PUSH {R0,LR}
LDR.N R0,??mnack_0 ;; 0x40010c0c
LDR R0,[R0, #+0]
ORRS R0,R0,#0x80
LDR.N R1,??mnack_0 ;; 0x40010c0c
STR R0,[R1, #+0]
LDR.N R0,??mnack_0 ;; 0x40010c0c
LDR R0,[R0, #+0]
ORRS R0,R0,#0x40
LDR.N R1,??mnack_0 ;; 0x40010c0c
STR R0,[R1, #+0]
MOVS R0,#+20
BL delay
LDR.N R0,??mnack_0 ;; 0x40010c0c
LDR R0,[R0, #+0]
MOVS R1,#+64
BICS R0,R0,R1
LDR.N R1,??mnack_0 ;; 0x40010c0c
STR R0,[R1, #+0]
LDR.N R0,??mnack_0 ;; 0x40010c0c
LDR R0,[R0, #+0]
MOVS R1,#+128
BICS R0,R0,R1
LDR.N R1,??mnack_0 ;; 0x40010c0c
STR R0,[R1, #+0]
MOVS R0,#+20
BL delay
ADD SP,SP,#+4
POP {PC} ;; return
Nop
DATA
??mnack_0:
DC32 0x40010c0c
SECTION `.XML`:CODE:NOROOT(2)
THUMB
cack:
PUSH {R4,LR}
MOVS R3,#+4
MOVS R2,#+0
MOVS R1,#+128
LDR.N R0,??cack_0 ;; 0x40010c00
BL GPIO_InOut
MOVS R0,#+20
BL delay
LDR.N R0,??cack_0+0x4 ;; 0x40010c0c
LDR R0,[R0, #+0]
ORRS R0,R0,#0x40
LDR.N R1,??cack_0+0x4 ;; 0x40010c0c
STR R0,[R1, #+0]
MOVS R0,#+0
MOVS R4,R0
MOVS R0,#+20
BL delay
LDR.N R0,??cack_0+0x8 ;; 0x40010c08
LDR R1,[R0, #+0]
MOVS R0,#+128
ANDS R0,R0,R1
LDR.N R1,??cack_0+0x8 ;; 0x40010c08
STR R0,[R1, #+0]
CMP R0,#+0
BEQ.N ??cack_1
MOVS R0,#+1
MOVS R4,R0
??cack_1:
LDR.N R0,??cack_0+0x4 ;; 0x40010c0c
LDR R0,[R0, #+0]
MOVS R1,#+64
BICS R0,R0,R1
LDR.N R1,??cack_0+0x4 ;; 0x40010c0c
STR R0,[R1, #+0]
MOVS R3,#+16
MOVS R2,#+1
MOVS R1,#+128
LDR.N R0,??cack_0 ;; 0x40010c00
BL GPIO_InOut
MOVS R0,#+20
BL delay
MOVS R0,R4
UXTB R0,R0 ;; ZeroExtS R0,R0,#+24,#+24
POP {R4,PC} ;; return
Nop
DATA
??cack_0:
DC32 0x40010c00
DC32 0x40010c0c
DC32 0x40010c08
SECTION `.XML`:CODE:NOROOT(2)
THUMB
WRBYT:
PUSH {R0,R4,R5,LR}
MOVS R4,R0
MOVS R0,#+0
MOVS R5,R0
??WRBYT_0:
UXTB R5,R5 ;; ZeroExtS R5,R5,#+24,#+24
CMP R5,#+8
BCS.N ??WRBYT_1
UXTB R4,R4 ;; ZeroExtS R4,R4,#+24,#+24
MOVS R0,#+128
ANDS R0,R0,R4
CMP R0,#+1
BLT.N ??WRBYT_2
LDR.N R0,??WRBYT_3 ;; 0x40010c0c
LDR R0,[R0, #+0]
ORRS R0,R0,#0x80
LDR.N R1,??WRBYT_3 ;; 0x40010c0c
STR R0,[R1, #+0]
B.N ??WRBYT_4
??WRBYT_2:
LDR.N R0,??WRBYT_3 ;; 0x40010c0c
LDR R0,[R0, #+0]
MOVS R1,#+128
BICS R0,R0,R1
LDR.N R1,??WRBYT_3 ;; 0x40010c0c
STR R0,[R1, #+0]
??WRBYT_4:
LDR.N R0,??WRBYT_3 ;; 0x40010c0c
LDR R0,[R0, #+0]
ORRS R0,R0,#0x40
LDR.N R1,??WRBYT_3 ;; 0x40010c0c
STR R0,[R1, #+0]
MOVS R0,#+20
BL delay
LDR.N R0,??WRBYT_3 ;; 0x40010c0c
LDR R0,[R0, #+0]
MOVS R1,#+64
BICS R0,R0,R1
LDR.N R1,??WRBYT_3 ;; 0x40010c0c
STR R0,[R1, #+0]
UXTB R4,R4 ;; ZeroExtS R4,R4,#+24,#+24
LSLS R4,R4,#+1
MOVS R0,#+20
BL delay
ADDS R5,R5,#+1
B.N ??WRBYT_0
??WRBYT_1:
ADD SP,SP,#+4
POP {R4,R5,PC} ;; return
Nop
DATA
??WRBYT_3:
DC32 0x40010c0c
SECTION `.XML`:CODE:NOROOT(2)
THUMB
RDBYT:
PUSH {R0,R4,R5,LR}
MOVS R0,#+0
MOVS R4,R0
MOVS R3,#+4
MOVS R2,#+0
MOVS R1,#+128
LDR.N R0,??RDBYT_0 ;; 0x40010c00
BL GPIO_InOut
MOVS R0,#+0
MOVS R5,R0
??RDBYT_1:
UXTB R5,R5 ;; ZeroExtS R5,R5,#+24,#+24
CMP R5,#+8
BCS.N ??RDBYT_2
LDR.N R0,??RDBYT_0+0x4 ;; 0x40010c0c
LDR R0,[R0, #+0]
ORRS R0,R0,#0x40
LDR.N R1,??RDBYT_0+0x4 ;; 0x40010c0c
STR R0,[R1, #+0]
MOVS R0,#+20
BL delay
LDR.N R0,??RDBYT_0+0x8 ;; 0x40010c08
LDR R1,[R0, #+0]
MOVS R0,#+128
ANDS R0,R0,R1
LDR.N R1,??RDBYT_0+0x8 ;; 0x40010c08
STR R0,[R1, #+0]
CMP R0,#+0
BNE.N ??RDBYT_3
ANDS R4,R4,#0xFE
B.N ??RDBYT_4
??RDBYT_3:
ORRS R4,R4,#0x1
??RDBYT_4:
UXTB R5,R5 ;; ZeroExtS R5,R5,#+24,#+24
CMP R5,#+7
BEQ.N ??RDBYT_5
UXTB R4,R4 ;; ZeroExtS R4,R4,#+24,#+24
LSLS R4,R4,#+1
??RDBYT_5:
LDR.N R0,??RDBYT_0+0x4 ;; 0x40010c0c
LDR R0,[R0, #+0]
MOVS R1,#+64
BICS R0,R0,R1
LDR.N R1,??RDBYT_0+0x4 ;; 0x40010c0c
STR R0,[R1, #+0]
MOVS R0,#+20
BL delay
ADDS R5,R5,#+1
B.N ??RDBYT_1
??RDBYT_2:
MOVS R3,#+16
MOVS R2,#+1
MOVS R1,#+128
LDR.N R0,??RDBYT_0 ;; 0x40010c00
BL GPIO_InOut
MOVS R0,R4
UXTB R0,R0 ;; ZeroExtS R0,R0,#+24,#+24
ADD SP,SP,#+4
POP {R4,R5,PC} ;; return
DATA
??RDBYT_0:
DC32 0x40010c00
DC32 0x40010c0c
DC32 0x40010c08
SECTION `.XML`:CODE:NOROOT(2)
THUMB
WRNBYT:
PUSH {R0,R1,R4-R10,LR}
MOV R8,R0
MOV R9,R1
MOV R10,R3
MOVS R4,R2
MOV R0,R8
MOVS R5,R0
MOVS R0,#+0
MOVS R7,R0
??WRNBYT_0:
BL sta
MOVS R0,R5
UXTB R0,R0 ;; ZeroExtS R0,R0,#+24,#+24
BL WRBYT
BL cack
MOVS R6,R0
ADDS R7,R7,#+1
UXTB R6,R6 ;; ZeroExtS R6,R6,#+24,#+24
CMP R6,#+1
BNE.N ??WRNBYT_1
UXTB R7,R7 ;; ZeroExtS R7,R7,#+24,#+24
CMP R7,#+5
BCC.N ??WRNBYT_0
??WRNBYT_1:
UXTB R7,R7 ;; ZeroExtS R7,R7,#+24,#+24
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -