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

📄 yt_temep.s

📁 完成数据的采集
💻 S
📖 第 1 页 / 共 4 页
字号:
        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 + -