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

📄 stm32f10x_systick.s79

📁 STM32利用正交编码器实现电机的控制
💻 S79
字号:
//////////////////////////////////////////////////////////////////////////////
//                                                                           /
// IAR ARM ANSI C/C++ Compiler V4.42A/W32              15/May/2008  12:06:32 /
// Copyright 1999-2005 IAR Systems. All rights reserved.                     /
//                                                                           /
//    Cpu mode        =  thumb                                               /
//    Endian          =  little                                              /
//    Stack alignment =  4                                                   /
//    Source file     =  C:\David JIANG\ST MCU\Docs\STM32\AN_JIANG\TIM       /
//                       Encoder\example\FWLib\src\stm32f10x_systick.c       /
//    Command line    =  "C:\David JIANG\ST MCU\Docs\STM32\AN_JIANG\TIM      /
//                       Encoder\example\FWLib\src\stm32f10x_systick.c" -D   /
//                       VECT_TAB_FLASH -lcN "C:\David JIANG\ST              /
//                       MCU\Docs\STM32\AN_JIANG\TIM                         /
//                       Encoder\example\project\EWARM\BOOT_FLASH\List\"     /
//                       -lb "C:\David JIANG\ST MCU\Docs\STM32\AN_JIANG\TIM  /
//                       Encoder\example\project\EWARM\BOOT_FLASH\List\" -o  /
//                       "C:\David JIANG\ST MCU\Docs\STM32\AN_JIANG\TIM      /
//                       Encoder\example\project\EWARM\BOOT_FLASH\Obj\" -z3  /
//                       --no_cse --no_unroll --no_inline --no_code_motion   /
//                       --no_tbaa --no_clustering --no_scheduling --debug   /
//                       --cpu_mode thumb --endian little --cpu cortex-M3    /
//                       --stack_align 4 --require_prototypes --fpu None     /
//                       --dlib_config "C:\Program Files\IAR                 /
//                       Systems\Embedded Workbench                          /
//                       4.0\arm\LIB\dl7mptnnl8f.h" -I "C:\David JIANG\ST    /
//                       MCU\Docs\STM32\AN_JIANG\TIM                         /
//                       Encoder\example\project\EWARM\" -I "C:\David        /
//                       JIANG\ST MCU\Docs\STM32\AN_JIANG\TIM                /
//                       Encoder\example\project\EWARM\..\include\" -I       /
//                       "C:\David JIANG\ST MCU\Docs\STM32\AN_JIANG\TIM      /
//                       Encoder\example\project\EWARM\..\..\FWLib\inc\" -I  /
//                       "C:\Program Files\IAR Systems\Embedded Workbench    /
//                       4.0\arm\INC\"                                       /
//    List file       =  C:\David JIANG\ST MCU\Docs\STM32\AN_JIANG\TIM       /
//                       Encoder\example\project\EWARM\BOOT_FLASH\List\stm32 /
//                       f10x_systick.s79                                    /
//                                                                           /
//                                                                           /
//////////////////////////////////////////////////////////////////////////////

        NAME stm32f10x_systick

        RSEG CSTACK:DATA:NOROOT(2)

??DataTable0 EQU 0
??DataTable1 EQU 0
??DataTable10 EQU 0
??DataTable11 EQU 0
??DataTable12 EQU 0
??DataTable13 EQU 0
??DataTable14 EQU 0
??DataTable15 EQU 0
??DataTable16 EQU 0
??DataTable17 EQU 0
??DataTable18 EQU 0
??DataTable2 EQU 0
??DataTable20 EQU 0
??DataTable3 EQU 0
??DataTable4 EQU 0
??DataTable5 EQU 0
??DataTable6 EQU 0
??DataTable7 EQU 0
??DataTable8 EQU 0
??DataTable9 EQU 0
        MULTWEAK ??assert_failed??rT
        PUBLIC SysTick_CLKSourceConfig
        PUBLIC SysTick_CounterCmd
        PUBLIC SysTick_GetCounter
        PUBLIC SysTick_GetFlagStatus
        PUBLIC SysTick_ITConfig
        PUBLIC SysTick_SetReload

assert_failed       SYMBOL "assert_failed"
??assert_failed??rT SYMBOL "??rT", assert_failed

        EXTERN SysTick
        EXTERN assert_failed


        RSEG CODE:CODE:NOROOT(2)
        THUMB
SysTick_CLKSourceConfig:
        PUSH     {R4,LR}
        MOVS     R4,R0
        CMP      R4,#+4
        BEQ.N    ??SysTick_CLKSourceConfig_0
        MVNS     R0,#+4
        CMP      R4,R0
        BEQ.N    ??SysTick_CLKSourceConfig_0
        MOVS     R1,#+54
        LDR.N    R0,??DataTable19  ;; `?<Constant "C:\\\\David JIANG\\\\ST MCU...">`
        _BLF     assert_failed,??assert_failed??rT
??SysTick_CLKSourceConfig_0:
        CMP      R4,#+4
        BNE.N    ??SysTick_CLKSourceConfig_1
        LDR.N    R0,??DataTable21  ;; SysTick
        LDR      R0,[R0, #+0]
        LDR.N    R1,??DataTable21  ;; SysTick
        LDR      R1,[R1, #+0]
        LDR      R1,[R1, #+0]
        ORRS     R1,R1,#0x4
        STR      R1,[R0, #+0]
        B.N      ??SysTick_CLKSourceConfig_2
??SysTick_CLKSourceConfig_1:
        LDR.N    R0,??DataTable21  ;; SysTick
        LDR      R0,[R0, #+0]
        LDR.N    R1,??DataTable21  ;; SysTick
        LDR      R1,[R1, #+0]
        LDR      R1,[R1, #+0]
        MOVS     R2,#+4
        BICS     R1,R1,R2
        STR      R1,[R0, #+0]
??SysTick_CLKSourceConfig_2:
        POP      {R4,PC}          ;; return

        RSEG CODE:CODE:NOROOT(2)
        THUMB
SysTick_SetReload:
        PUSH     {R4,LR}
        MOVS     R4,R0
        CMP      R4,#+0
        BEQ.N    ??SysTick_SetReload_0
        CMP      R4,#+16777216
        BCC.N    ??SysTick_SetReload_1
??SysTick_SetReload_0:
        MOVS     R1,#+77
        LDR.N    R0,??DataTable19  ;; `?<Constant "C:\\\\David JIANG\\\\ST MCU...">`
        _BLF     assert_failed,??assert_failed??rT
??SysTick_SetReload_1:
        LDR.N    R0,??DataTable21  ;; SysTick
        LDR      R0,[R0, #+0]
        STR      R4,[R0, #+4]
        POP      {R4,PC}          ;; return

        RSEG CODE:CODE:NOROOT(2)
        THUMB
SysTick_CounterCmd:
        PUSH     {R4,LR}
        MOVS     R4,R0
        MVNS     R0,#+1
        CMP      R4,R0
        BEQ.N    ??SysTick_CounterCmd_0
        CMP      R4,#+1
        BEQ.N    ??SysTick_CounterCmd_0
        CMP      R4,#+0
        BEQ.N    ??SysTick_CounterCmd_0
        MOVS     R1,#+96
        LDR.N    R0,??DataTable19  ;; `?<Constant "C:\\\\David JIANG\\\\ST MCU...">`
        _BLF     assert_failed,??assert_failed??rT
??SysTick_CounterCmd_0:
        CMP      R4,#+0
        BNE.N    ??SysTick_CounterCmd_1
        LDR.N    R0,??DataTable21  ;; SysTick
        LDR      R0,[R0, #+0]
        MOVS     R1,#+0
        STR      R1,[R0, #+8]
        B.N      ??SysTick_CounterCmd_2
??SysTick_CounterCmd_1:
        CMP      R4,#+1
        BNE.N    ??SysTick_CounterCmd_3
        LDR.N    R0,??DataTable21  ;; SysTick
        LDR      R0,[R0, #+0]
        LDR.N    R1,??DataTable21  ;; SysTick
        LDR      R1,[R1, #+0]
        LDR      R1,[R1, #+0]
        ORRS     R1,R1,#0x1
        STR      R1,[R0, #+0]
        B.N      ??SysTick_CounterCmd_2
??SysTick_CounterCmd_3:
        LDR.N    R0,??DataTable21  ;; SysTick
        LDR      R0,[R0, #+0]
        LDR.N    R1,??DataTable21  ;; SysTick
        LDR      R1,[R1, #+0]
        LDR      R1,[R1, #+0]
        MOVS     R2,#+1
        BICS     R1,R1,R2
        STR      R1,[R0, #+0]
??SysTick_CounterCmd_2:
        POP      {R4,PC}          ;; return

        RSEG CODE:CODE:NOROOT(2)
        THUMB
SysTick_ITConfig:
        PUSH     {R4,LR}
        MOVS     R4,R0
        CMP      R4,#+0
        BEQ.N    ??SysTick_ITConfig_0
        CMP      R4,#+1
        BEQ.N    ??SysTick_ITConfig_0
        MOVS     R1,#+126
        LDR.N    R0,??DataTable19  ;; `?<Constant "C:\\\\David JIANG\\\\ST MCU...">`
        _BLF     assert_failed,??assert_failed??rT
??SysTick_ITConfig_0:
        CMP      R4,#+0
        BEQ.N    ??SysTick_ITConfig_1
        LDR.N    R0,??DataTable21  ;; SysTick
        LDR      R0,[R0, #+0]
        LDR.N    R1,??DataTable21  ;; SysTick
        LDR      R1,[R1, #+0]
        LDR      R1,[R1, #+0]
        ORRS     R1,R1,#0x2
        STR      R1,[R0, #+0]
        B.N      ??SysTick_ITConfig_2
??SysTick_ITConfig_1:
        LDR.N    R0,??DataTable21  ;; SysTick
        LDR      R0,[R0, #+0]
        LDR.N    R1,??DataTable21  ;; SysTick
        LDR      R1,[R1, #+0]
        LDR      R1,[R1, #+0]
        MOVS     R2,#+2
        BICS     R1,R1,R2
        STR      R1,[R0, #+0]
??SysTick_ITConfig_2:
        POP      {R4,PC}          ;; return

        RSEG CODE:CODE:NOROOT(2)
        THUMB
SysTick_GetCounter:
        LDR.N    R0,??DataTable21  ;; SysTick
        LDR      R0,[R0, #+0]
        LDR      R0,[R0, #+8]
        BX       LR               ;; return

        RSEG CODE:CODE:NOROOT(2)
        THUMB
SysTick_GetFlagStatus:
        PUSH     {R4,LR}
        MOVS     R4,R0
        MOVS     R1,#+0
        MOVS     R2,#+0
        MOVS     R0,#+0
        CMP      R4,#+48
        BEQ.N    ??SysTick_GetFlagStatus_0
        CMP      R4,#+94
        BEQ.N    ??SysTick_GetFlagStatus_0
        CMP      R4,#+95
        BEQ.N    ??SysTick_GetFlagStatus_0
        MOVS     R1,#+168
        LDR.N    R0,??DataTable19  ;; `?<Constant "C:\\\\David JIANG\\\\ST MCU...">`
        _BLF     assert_failed,??assert_failed??rT
??SysTick_GetFlagStatus_0:
        MOVS     R1,R4
        LSLS     R1,R1,#+24       ;; ZeroExtS R1,R1,#+24,#+24
        LSRS     R1,R1,#+24
        LSRS     R1,R1,#+5
        LSLS     R1,R1,#+24       ;; ZeroExtS R1,R1,#+24,#+24
        LSRS     R1,R1,#+24
        CMP      R1,#+1
        BNE.N    ??SysTick_GetFlagStatus_1
        LDR.N    R0,??DataTable21  ;; SysTick
        LDR      R0,[R0, #+0]
        LDR      R2,[R0, #+0]
        B.N      ??SysTick_GetFlagStatus_2
??SysTick_GetFlagStatus_1:
        LDR.N    R0,??DataTable21  ;; SysTick
        LDR      R0,[R0, #+0]
        LDR      R2,[R0, #+12]
??SysTick_GetFlagStatus_2:
        LSLS     R1,R4,#+27       ;; ZeroExtS R1,R4,#+27,#+27
        LSRS     R1,R1,#+27
        MOVS     R0,#+1
        LSLS     R0,R0,R1
        ANDS     R0,R0,R2
        CMP      R0,#+0
        BEQ.N    ??SysTick_GetFlagStatus_3
        MOVS     R0,#+1
        B.N      ??SysTick_GetFlagStatus_4
??SysTick_GetFlagStatus_3:
        MOVS     R0,#+0
??SysTick_GetFlagStatus_4:
        POP      {R4,PC}          ;; return

        RSEG CODE:CODE:NOROOT(2)
        DATA
??DataTable19:
        DC32     `?<Constant "C:\\\\David JIANG\\\\ST MCU...">`

        RSEG CODE:CODE:NOROOT(2)
        DATA
??DataTable21:
        DC32     SysTick

        RSEG CODE:CODE:NOROOT(2)
        THUMB
??assert_failed??rT:
        LDR.N    R3,??Subroutine0_0  ;; assert_failed
        BX       R3
        DATA
??Subroutine0_0:
        DC32     assert_failed

        RSEG DATA_C:CONST:SORT:NOROOT(2)
`?<Constant "C:\\\\David JIANG\\\\ST MCU...">`:
        DATA
        DC8 43H, 3AH, 5CH, 44H, 61H, 76H, 69H, 64H
        DC8 20H, 4AH, 49H, 41H, 4EH, 47H, 5CH, 53H
        DC8 54H, 20H, 4DH, 43H, 55H, 5CH, 44H, 6FH
        DC8 63H, 73H, 5CH, 53H, 54H, 4DH, 33H, 32H
        DC8 5CH, 41H, 4EH, 5FH, 4AH, 49H, 41H, 4EH
        DC8 47H, 5CH, 54H, 49H, 4DH, 20H, 45H, 6EH
        DC8 63H, 6FH, 64H, 65H, 72H, 5CH, 65H, 78H
        DC8 61H, 6DH, 70H, 6CH, 65H, 5CH, 46H, 57H
        DC8 4CH, 69H, 62H, 5CH, 73H, 72H, 63H, 5CH
        DC8 73H, 74H, 6DH, 33H, 32H, 66H, 31H, 30H
        DC8 78H, 5FH, 73H, 79H, 73H, 74H, 69H, 63H
        DC8 6BH, 2EH, 63H, 0

        END
// 
// 342 bytes in segment CODE
//  92 bytes in segment DATA_C
// 
// 334 bytes of CODE  memory (+ 8 bytes shared)
//  92 bytes of CONST memory
//
//Errors: none
//Warnings: none

⌨️ 快捷键说明

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