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

📄 main.s

📁 完成数据的采集
💻 S
📖 第 1 页 / 共 3 页
字号:
InitI2CFALSE:
        PUSH     {R0,LR}
        MOVS     R0,#+192
        STRH     R0,[SP, #+0]
        MOVS     R0,#+3
        STRB     R0,[SP, #+2]
        MOVS     R0,#+16
        STRB     R0,[SP, #+3]
        MOV      R1,SP
        LDR.N    R0,??InitI2CFALSE_0  ;; 0x40010c00
        BL       GPIO_Init
        ADD      SP,SP,#+4
        POP      {PC}             ;; return
        DATA
??InitI2CFALSE_0:
        DC32     0x40010c00

        SECTION `.XML`:CODE:NOROOT(2)
        THUMB
TimInit:
        PUSH     {LR}
        SUB      SP,SP,#+20
        MOVS     R1,#+1
        MOVS     R0,#+2048
        BL       RCC_APB2PeriphClockCmd
        MOVS     R0,#+720
        STRH     R0,[SP, #+8]
        MOVS     R0,#+0
        STRH     R0,[SP, #+10]
        MOVS     R0,#+250
        STRH     R0,[SP, #+12]
        MOVS     R0,#+0
        STRH     R0,[SP, #+14]
        MOVS     R0,#+0
        STRB     R0,[SP, #+16]
        ADD      R0,SP,#+8
        BL       TIM1_TimeBaseInit
        MOVS     R0,#+1
        BL       TIM1_ClearITPendingBit
        MOVS     R1,#+1
        MOVS     R0,#+1
        BL       TIM1_ITConfig
        MOVS     R0,#+1
        BL       TIM1_Cmd
        MOVS     R0,#+1073741824
        BL       TIM_DeInit
        MOVS     R1,#+1
        MOVS     R0,#+1
        BL       RCC_APB1PeriphClockCmd
        MOVS     R0,#+17
        STRH     R0,[SP, #+2]
        MOVS     R0,#+0
        STRH     R0,[SP, #+6]
        MOVS     R0,#+250
        STRH     R0,[SP, #+0]
        MOVS     R0,#+0
        STRH     R0,[SP, #+4]
        MOV      R1,SP
        MOVS     R0,#+1073741824
        BL       TIM_TimeBaseInit
        MOVS     R1,#+4
        MOVS     R0,#+1073741824
        BL       TIM_ClearITPendingBit
        MOVS     R2,#+1
        MOVS     R1,#+4
        MOVS     R0,#+1073741824
        BL       TIM_ITConfig
        MOVS     R1,#+1
        MOVS     R0,#+1073741824
        BL       TIM_Cmd
        ADD      SP,SP,#+20
        POP      {PC}             ;; return

        SECTION `.XML`:CODE:NOROOT(2)
        THUMB
NVICInit:
        PUSH     {R0,LR}
        MOVS     R0,#+25
        STRB     R0,[SP, #+0]
        MOVS     R0,#+9
        STRB     R0,[SP, #+1]
        MOVS     R0,#+0
        STRB     R0,[SP, #+2]
        MOVS     R0,#+1
        STRB     R0,[SP, #+3]
        MOV      R0,SP
        BL       NVIC_Init
        MOVS     R0,#+28
        STRB     R0,[SP, #+0]
        MOVS     R0,#+8
        STRB     R0,[SP, #+1]
        MOVS     R0,#+0
        STRB     R0,[SP, #+2]
        MOVS     R0,#+1
        STRB     R0,[SP, #+3]
        MOV      R0,SP
        BL       NVIC_Init
        ADD      SP,SP,#+4
        POP      {PC}             ;; return

        SECTION `.XML`:CODE:NOROOT(2)
        THUMB
I2CInit:
        PUSH     {LR}
        SUB      SP,SP,#+20
        MOVS     R1,#+1
        MOVS     R0,#+9
        BL       RCC_APB2PeriphClockCmd
        MOVS     R1,#+1
        MOVS     R0,#+2097152
        BL       RCC_APB1PeriphClockCmd
        MOVS     R0,#+192
        STRH     R0,[SP, #+0]
        MOVS     R0,#+3
        STRB     R0,[SP, #+2]
        MOVS     R0,#+28
        STRB     R0,[SP, #+3]
        MOV      R1,SP
        LDR.N    R0,??I2CInit_0   ;; 0x40010c00
        BL       GPIO_Init
        LDR.N    R0,??I2CInit_0+0x4  ;; 0x40005400
        BL       I2C_DeInit
        MOVS     R0,#+0
        STRH     R0,[SP, #+4]
        MOVS     R0,#+16384
        STRH     R0,[SP, #+6]
        MOVS     R0,#+160
        STRH     R0,[SP, #+8]
        MOVS     R0,#+1024
        STRH     R0,[SP, #+10]
        MOVS     R0,#+16384
        STRH     R0,[SP, #+12]
        LDR.N    R0,??I2CInit_0+0x8  ;; 0x13880
        STR      R0,[SP, #+16]
        ADD      R1,SP,#+4
        LDR.N    R0,??I2CInit_0+0x4  ;; 0x40005400
        BL       I2C_Init
        MOVS     R1,#+1
        LDR.N    R0,??I2CInit_0+0x4  ;; 0x40005400
        BL       I2C_Cmd
        ADD      SP,SP,#+20
        POP      {PC}             ;; return
        Nop      
        DATA
??I2CInit_0:
        DC32     0x40010c00
        DC32     0x40005400
        DC32     0x13880

        SECTION `.XML`:CODE:NOROOT(2)
        THUMB
main:
        PUSH     {R0,LR}
        MOVS     R0,#+0
        STRH     R0,[SP, #+0]
        BL       EntrCritSection
        BL       Clk_Init
        MOVS     R1,#+0
        MOVS     R0,#+134217728
        BL       NVIC_SetVectorTable
        MOVS     R0,#+768
        BL       NVIC_PriorityGroupConfig
        BL       InitGPIO
        BL       TimInit
        BL       Uart1Init
        BL       InitI2CFALSE
        BL       InitTemperature
        BL       NVICInit
        BL       initLCDM
        LDR.N    R0,??main_0      ;; 0x1388
        BL       delay_nop
        BL       InitADC1
        LDR.N    R0,??main_0+0x4  ;; Year
        BL       InitYear
        LDR.N    R0,??main_0+0x8  ;; _YT
        BL       ReadFM24C04
        LDR.N    R0,??main_0+0xC  ;; _YT + 2
        LDRH     R0,[R0, #+0]
        LSLS     R0,R0,#+30       ;; ZeroExtS R0,R0,#+30,#+30
        LSRS     R0,R0,#+30
        BL       Init2515
        LDR.N    R0,??main_0      ;; 0x1388
        BL       delay_nop
        BL       ExtCritSection
        LDR.N    R0,??main_0+0x10  ;; LCD + 1
        MOVS     R1,#+9
        STRB     R1,[R0, #+0]
        LDR.N    R0,??main_0+0x14  ;; ALAMCREG_History
        MOVS     R1,#+5
        STRH     R1,[R0, #+0]
??main_1:
        LDR.N    R0,??main_0+0x18  ;; B_unit
        LDRB     R0,[R0, #+0]
        CMP      R0,#+0
        BEQ.N    ??main_2
        LDR.N    R0,??main_0+0x18  ;; B_unit
        MOVS     R1,#+0
        STRB     R1,[R0, #+0]
        LDR.N    R0,??main_0+0x1C  ;; B_CANMode
        LDRB     R0,[R0, #+0]
        CMP      R0,#+0
        BNE.N    ??main_3
        LDR.N    R0,??main_0+0x8  ;; _YT
        LDRH     R2,[R0, #+0]
        UXTB     R2,R2            ;; ZeroExtS R2,R2,#+24,#+24
        LDR.N    R0,??main_0+0x1C  ;; B_CANMode
        LDRB     R1,[R0, #+0]
        LDR.N    R0,??main_0+0x20  ;; CANR
        BL       ReadCAN
        LDR.N    R1,??main_0+0x1C  ;; B_CANMode
        STRB     R0,[R1, #+0]
??main_3:
        LDR.N    R0,??main_0+0x1C  ;; B_CANMode
        LDRB     R0,[R0, #+0]
        CMP      R0,#+0
        BEQ.N    ??main_4
        LDR.N    R2,??main_0+0x8  ;; _YT
        LDR.N    R1,??main_0+0x24  ;; CANT
        LDR.N    R0,??main_0+0x20  ;; CANR
        BL       RTS
        LDR.N    R1,??main_0+0x1C  ;; B_CANMode
        STRB     R0,[R1, #+0]
??main_4:
        LDR.N    R0,??main_0+0x28  ;; B_Txd
        LDRB     R0,[R0, #+0]
        CMP      R0,#+0
        BEQ.N    ??main_5
        LDR.N    R2,??main_0+0x8  ;; _YT
        LDR.N    R0,??main_0+0x2C  ;; pUart1RxFifo
        LDR      R1,[R0, #+0]
        LDR.N    R0,??main_0+0x30  ;; pUart1TxFifo
        LDR      R0,[R0, #+0]
        BL       UsartTXD
        LDR.N    R1,??main_0+0x28  ;; B_Txd
        STRB     R0,[R1, #+0]
        B.N      ??main_6
??main_5:
        LDR.N    R0,??main_0+0x30  ;; pUart1TxFifo
        LDR      R1,[R0, #+0]
        LDR.N    R0,??main_0+0x2C  ;; pUart1RxFifo
        LDR      R0,[R0, #+0]
        BL       UsartRXD
        LDR.N    R1,??main_0+0x28  ;; B_Txd
        STRB     R0,[R1, #+0]
??main_6:
        LDR.N    R0,??main_0+0x34  ;; key
        BL       scankey
        LDR.N    R2,??main_0+0x8  ;; _YT
        LDR.N    R1,??main_0+0x38  ;; LCD
        LDR.N    R0,??main_0+0x34  ;; key
        BL       keyserver
??main_2:
        LDR.N    R0,??main_0+0x3C  ;; B_Disp
        LDRB     R0,[R0, #+0]
        CMP      R0,#+0
        BEQ.N    ??main_7
        LDR.N    R0,??main_0+0x3C  ;; B_Disp
        MOVS     R1,#+0
        STRB     R1,[R0, #+0]
        LDR.N    R1,??main_0+0x40  ;; _YT + 50
        LDR.N    R0,??main_0+0x44  ;; RF
        BL       CHK_RF
        LDR.N    R2,??main_0+0x48  ;; History
        LDR.N    R1,??main_0+0x8  ;; _YT
        LDR.N    R0,??main_0+0x38  ;; LCD
        BL       display
        LDR.N    R0,??main_0+0x4C  ;; _YT + 34
        LDRH     R0,[R0, #+0]
        MOVS     R1,#+1
        ANDS     R1,R1,R0
        LDR.N    R0,??main_0+0x50  ;; _YT + 14
        BL       CHK_BELL
        LDR.N    R0,??main_0+0x54  ;; _YT + 6
        BL       ADC_TEMP
??main_7:
        LDR.N    R0,??main_0+0x58  ;; B_TimerOneSec
        LDRB     R0,[R0, #+0]
        CMP      R0,#+0
        BEQ.N    ??main_1
        LDR.N    R0,??main_0+0x58  ;; B_TimerOneSec
        MOVS     R1,#+0
        STRB     R1,[R0, #+0]
        LDR.N    R0,??main_0+0x5C  ;; 0x4001080c
        LDR      R0,[R0, #+0]
        EORS     R0,R0,#0x4
        LDR.N    R1,??main_0+0x5C  ;; 0x4001080c
        STR      R0,[R1, #+0]
        LDR.N    R2,??main_0+0x40  ;; _YT + 50
        MOVS     R1,#+0
        LDR.N    R0,??main_0+0x48  ;; History
        BL       NOTS_Store
        LDR.N    R3,??main_0+0x40  ;; _YT + 50
        LDR.N    R2,??main_0+0x60  ;; _YT + 20
        LDR.N    R0,??main_0+0x64  ;; _YT + 30
        LDRH     R1,[R0, #+0]
        LDR.N    R0,??main_0+0x68  ;; _YT + 28
        LDRH     R0,[R0, #+0]
        BL       Fast_TEM_NOTS
        LDR.N    R2,??main_0+0x6C  ;; Year + 1
        LDR.N    R1,??main_0+0x8  ;; _YT
        LDR.N    R0,??main_0+0x40  ;; _YT + 50
        BL       AlamcFault
        LDR.N    R3,??main_0+0x50  ;; _YT + 14
        LDR.N    R2,??main_0+0x70  ;; _YT + 180
        LDR.N    R1,??main_0+0x40  ;; _YT + 50
        LDR.N    R0,??main_0+0x6C  ;; Year + 1
        BL       ALAMCREGISTER
        LDR.N    R0,??main_0+0x4  ;; Year
        BL       ReadYear
        B.N      ??main_1
        DATA
??main_0:
        DC32     0x1388
        DC32     Year
        DC32     _YT
        DC32     _YT + 2
        DC32     LCD + 1
        DC32     ALAMCREG_History
        DC32     B_unit
        DC32     B_CANMode
        DC32     CANR
        DC32     CANT
        DC32     B_Txd
        DC32     pUart1RxFifo
        DC32     pUart1TxFifo
        DC32     key
        DC32     LCD
        DC32     B_Disp
        DC32     _YT + 50
        DC32     RF
        DC32     History
        DC32     _YT + 34
        DC32     _YT + 14
        DC32     _YT + 6
        DC32     B_TimerOneSec
        DC32     0x4001080c
        DC32     _YT + 20
        DC32     _YT + 30
        DC32     _YT + 28
        DC32     Year + 1
        DC32     _YT + 180

        END
// 
// 1 816 bytes in section .XML
// 2 407 bytes in section .bss
//   272 bytes in section .rodata
// 
// 1 764 bytes of CODE  memory (+ 52 bytes shared)
//   272 bytes of CONST memory
// 2 407 bytes of DATA  memory
//
//Errors: none
//Warnings: none

⌨️ 快捷键说明

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