📄 stm32f10x_tim1.s
字号:
UXTB R1,R1 ;; ZeroExtS R1,R1,#+24,#+24
LDRH R2,[R0, #+0]
ORRS R1,R1,R2, LSL #+8
LDR.N R2,??DataTable32 ;; 0x40012c1c
MOVS R3,R1
STRH R3,[R2, #+0]
LDRH R2,[R0, #+2]
LDR.N R3,??DataTable33 ;; 0x42258430
STR R2,[R3, #+0]
LDRH R2,[R0, #+8]
LDR.N R3,??DataTable34 ;; 0x42258434
STR R2,[R3, #+0]
LDRH R2,[R0, #+12]
LDR.N R3,??TIM1_OC4Init_0 ;; 0x422580b8
STR R2,[R3, #+0]
LDRH R2,[R0, #+6]
LDR.N R3,??DataTable35 ;; 0x40012c40
STRH R2,[R3, #+0]
BX LR ;; return
Nop
DATA
??TIM1_OC4Init_0:
DC32 0x422580b8
SECTION `.XML`:CODE:NOROOT(2)
DATA
??DataTable32:
DC32 0x40012c1c
SECTION `.XML`:CODE:NOROOT(2)
DATA
??DataTable33:
DC32 0x42258430
SECTION `.XML`:CODE:NOROOT(2)
DATA
??DataTable34:
DC32 0x42258434
SECTION `.XML`:CODE:NOROOT(2)
DATA
??DataTable35:
DC32 0x40012c40
SECTION `.XML`:CODE:NOROOT(2)
THUMB
TIM1_BDTRConfig:
MOVS R2,#+0
MOVS R1,R2
LDR.N R2,??TIM1_BDTRConfig_0 ;; 0x40012c44
LDRH R2,[R2, #+0]
MOVS R1,R2
LDRH R2,[R0, #+0]
LDRH R3,[R0, #+2]
ORRS R3,R3,R2
LDRH R2,[R0, #+4]
ORRS R2,R2,R3
LDRH R3,[R0, #+6]
ORRS R3,R3,R2
LDRH R2,[R0, #+8]
ORRS R2,R2,R3
LDRH R3,[R0, #+10]
ORRS R3,R3,R2
LDRH R2,[R0, #+12]
ORRS R2,R2,R3
MOVS R1,R2
LDR.N R2,??TIM1_BDTRConfig_0 ;; 0x40012c44
STRH R1,[R2, #+0]
BX LR ;; return
DATA
??TIM1_BDTRConfig_0:
DC32 0x40012c44
SECTION `.XML`:CODE:NOROOT(2)
THUMB
TIM1_ICInit:
PUSH {R4,LR}
MOVS R4,R0
LDRH R0,[R4, #+0]
CMP R0,#+0
BNE.N ??TIM1_ICInit_0
LDRB R2,[R4, #+8]
LDRH R1,[R4, #+4]
LDRH R0,[R4, #+2]
BL TI1_Config
LDRH R0,[R4, #+6]
BL TIM1_SetIC1Prescaler
B.N ??TIM1_ICInit_1
??TIM1_ICInit_0:
LDRH R0,[R4, #+0]
CMP R0,#+1
BNE.N ??TIM1_ICInit_2
LDRB R2,[R4, #+8]
LDRH R1,[R4, #+4]
LDRH R0,[R4, #+2]
BL TI2_Config
LDRH R0,[R4, #+6]
BL TIM1_SetIC2Prescaler
B.N ??TIM1_ICInit_1
??TIM1_ICInit_2:
LDRH R0,[R4, #+0]
CMP R0,#+2
BNE.N ??TIM1_ICInit_3
LDRB R2,[R4, #+8]
LDRH R1,[R4, #+4]
LDRH R0,[R4, #+2]
BL TI3_Config
LDRH R0,[R4, #+6]
BL TIM1_SetIC3Prescaler
B.N ??TIM1_ICInit_1
??TIM1_ICInit_3:
LDRB R2,[R4, #+8]
LDRH R1,[R4, #+4]
LDRH R0,[R4, #+2]
BL TI4_Config
LDRH R0,[R4, #+6]
BL TIM1_SetIC4Prescaler
??TIM1_ICInit_1:
POP {R4,PC} ;; return
SECTION `.XML`:CODE:NOROOT(2)
THUMB
TIM1_PWMIConfig:
PUSH {R4-R6,LR}
MOVS R4,R0
MOVS R0,#+0
MOVS R5,R0
MOVS R0,#+1
MOVS R6,R0
LDRH R0,[R4, #+2]
SUBS R1,R0,#+1
SBCS R1,R1,R1
LSRS R1,R1,#+31
MOVS R5,R1
LDRH R0,[R4, #+4]
CMP R0,#+1
BNE.N ??TIM1_PWMIConfig_0
MOVS R0,#+2
MOVS R6,R0
B.N ??TIM1_PWMIConfig_1
??TIM1_PWMIConfig_0:
MOVS R0,#+1
MOVS R6,R0
??TIM1_PWMIConfig_1:
LDRH R0,[R4, #+0]
CMP R0,#+0
BNE.N ??TIM1_PWMIConfig_2
LDRB R2,[R4, #+8]
LDRH R1,[R4, #+4]
LDRH R0,[R4, #+2]
BL TI1_Config
LDRH R0,[R4, #+6]
BL TIM1_SetIC1Prescaler
LDRB R2,[R4, #+8]
UXTB R6,R6 ;; ZeroExtS R6,R6,#+24,#+24
MOVS R1,R6
UXTH R1,R1 ;; ZeroExtS R1,R1,#+16,#+16
UXTB R5,R5 ;; ZeroExtS R5,R5,#+24,#+24
MOVS R0,R5
UXTH R0,R0 ;; ZeroExtS R0,R0,#+16,#+16
BL TI2_Config
LDRH R0,[R4, #+6]
BL TIM1_SetIC2Prescaler
B.N ??TIM1_PWMIConfig_3
??TIM1_PWMIConfig_2:
LDRB R2,[R4, #+8]
LDRH R1,[R4, #+4]
LDRH R0,[R4, #+2]
BL TI2_Config
LDRH R0,[R4, #+6]
BL TIM1_SetIC2Prescaler
LDRB R2,[R4, #+8]
UXTB R6,R6 ;; ZeroExtS R6,R6,#+24,#+24
MOVS R1,R6
UXTH R1,R1 ;; ZeroExtS R1,R1,#+16,#+16
UXTB R5,R5 ;; ZeroExtS R5,R5,#+24,#+24
MOVS R0,R5
UXTH R0,R0 ;; ZeroExtS R0,R0,#+16,#+16
BL TI1_Config
LDRH R0,[R4, #+6]
BL TIM1_SetIC1Prescaler
??TIM1_PWMIConfig_3:
POP {R4-R6,PC} ;; return
SECTION `.XML`:CODE:NOROOT(2)
THUMB
TIM1_OCStructInit:
MOVS R1,#+0
STRH R1,[R0, #+0]
MOVS R1,#+0
STRH R1,[R0, #+2]
MOVS R1,#+0
STRH R1,[R0, #+4]
MOVS R1,#+0
STRH R1,[R0, #+6]
MOVS R1,#+0
STRH R1,[R0, #+8]
MOVS R1,#+0
STRH R1,[R0, #+10]
MOVS R1,#+0
STRH R1,[R0, #+12]
MOVS R1,#+0
STRH R1,[R0, #+14]
BX LR ;; return
SECTION `.XML`:CODE:NOROOT(2)
THUMB
TIM1_ICStructInit:
MOVS R1,#+0
STRH R1,[R0, #+0]
MOVS R1,#+1
STRH R1,[R0, #+4]
MOVS R1,#+0
STRH R1,[R0, #+2]
MOVS R1,#+0
STRH R1,[R0, #+6]
MOVS R1,#+0
STRB R1,[R0, #+8]
BX LR ;; return
SECTION `.XML`:CODE:NOROOT(2)
THUMB
TIM1_TimeBaseStructInit:
LDR.N R1,??TIM1_TimeBaseStructInit_0 ;; 0xffff
STRH R1,[R0, #+4]
MOVS R1,#+0
STRH R1,[R0, #+0]
MOVS R1,#+0
STRH R1,[R0, #+6]
MOVS R1,#+0
STRH R1,[R0, #+2]
MOVS R1,#+0
STRB R1,[R0, #+8]
BX LR ;; return
Nop
DATA
??TIM1_TimeBaseStructInit_0:
DC32 0xffff
SECTION `.XML`:CODE:NOROOT(2)
THUMB
TIM1_BDTRStructInit:
MOVS R1,#+0
STRH R1,[R0, #+0]
MOVS R1,#+0
STRH R1,[R0, #+2]
MOVS R1,#+0
STRH R1,[R0, #+4]
MOVS R1,#+0
STRH R1,[R0, #+6]
MOVS R1,#+0
STRH R1,[R0, #+8]
MOVS R1,#+0
STRH R1,[R0, #+10]
MOVS R1,#+0
STRH R1,[R0, #+12]
BX LR ;; return
SECTION `.XML`:CODE:NOROOT(2)
THUMB
TIM1_Cmd:
LDR.N R1,??TIM1_Cmd_0 ;; 0x42258000
UXTB R0,R0 ;; ZeroExtS R0,R0,#+24,#+24
STR R0,[R1, #+0]
BX LR ;; return
DATA
??TIM1_Cmd_0:
DC32 0x42258000
SECTION `.XML`:CODE:NOROOT(2)
THUMB
TIM1_CtrlPWMOutputs:
LDR.N R1,??TIM1_CtrlPWMOutputs_0 ;; 0x422588bc
UXTB R0,R0 ;; ZeroExtS R0,R0,#+24,#+24
STR R0,[R1, #+0]
BX LR ;; return
DATA
??TIM1_CtrlPWMOutputs_0:
DC32 0x422588bc
SECTION `.XML`:CODE:NOROOT(2)
THUMB
TIM1_ITConfig:
UXTB R1,R1 ;; ZeroExtS R1,R1,#+24,#+24
CMP R1,#+1
BNE.N ??TIM1_ITConfig_0
LDR.N R2,??TIM1_ITConfig_1 ;; 0x40012c0c
LDRH R2,[R2, #+0]
ORRS R2,R2,R0
LDR.N R3,??TIM1_ITConfig_1 ;; 0x40012c0c
STRH R2,[R3, #+0]
B.N ??TIM1_ITConfig_2
??TIM1_ITConfig_0:
LDR.N R2,??TIM1_ITConfig_1 ;; 0x40012c0c
LDRH R2,[R2, #+0]
BICS R2,R2,R0
LDR.N R3,??TIM1_ITConfig_1 ;; 0x40012c0c
STRH R2,[R3, #+0]
??TIM1_ITConfig_2:
BX LR ;; return
Nop
DATA
??TIM1_ITConfig_1:
DC32 0x40012c0c
SECTION `.XML`:CODE:NOROOT(2)
THUMB
TIM1_DMAConfig:
PUSH {R0,R4}
MOVS R3,#+0
MOVS R2,R3
LDR.N R3,??TIM1_DMAConfig_0 ;; 0x40012c48
LDRH R3,[R3, #+0]
UXTH R3,R3 ;; ZeroExtS R3,R3,#+16,#+16
MOVS R2,R3
MOVS R3,#+0
MOVS R2,R3
MOVS R3,R2
UXTH R0,R0 ;; ZeroExtS R0,R0,#+16,#+16
UXTH R1,R1 ;; ZeroExtS R1,R1,#+16,#+16
MOVS R2,R1
ORRS R2,R2,R0
ORRS R2,R2,R3
LDR.N R3,??TIM1_DMAConfig_0 ;; 0x40012c48
MOVS R4,R2
STRH R4,[R3, #+0]
ADD SP,SP,#+4
POP {R4}
BX LR ;; return
Nop
DATA
??TIM1_DMAConfig_0:
DC32 0x40012c48
SECTION `.XML`:CODE:NOROOT(2)
THUMB
TIM1_DMACmd:
PUSH {R0,R4}
MOVS R3,#+0
MOVS R2,R3
LDR.N R3,??TIM1_DMACmd_0 ;; 0x40012c0c
LDRH R3,[R3, #+0]
UXTH R3,R3 ;; ZeroExtS R3,R3,#+16,#+16
MOVS R2,R3
UXTB R1,R1 ;; ZeroExtS R1,R1,#+24,#+24
CMP R1,#+1
BNE.N ??TIM1_DMACmd_1
UXTH R0,R0 ;; ZeroExtS R0,R0,#+16,#+16
ORRS R2,R2,R0
B.N ??TIM1_DMACmd_2
??TIM1_DMACmd_1:
MOVS R3,R2
MVNS R2,R0
UXTH R2,R2 ;; ZeroExtS R2,R2,#+16,#+16
ANDS R2,R2,R3
??TIM1_DMACmd_2:
LDR.N R3,??TIM1_DMACmd_0 ;; 0x40012c0c
MOVS R4,R2
STRH R4,[R3, #+0]
ADD SP,SP,#+4
POP {R4}
BX LR ;; return
Nop
DATA
??TIM1_DMACmd_0:
DC32 0x40012c0c
SECTION `.XML`:CODE:NOROOT(2)
THUMB
TIM1_InternalClockConfig:
LDR.N R0,??TIM1_InternalClockConfig_0 ;; 0x40012c08
LDRH R0,[R0, #+0]
LDR.N R1,??TIM1_InternalClockConfig_0+0x4 ;; 0xfff0
ANDS R1,R1,R0
LDR.N R0,??TIM1_InternalClockConfig_0 ;; 0x40012c08
STRH R1,[R0, #+0]
BX LR ;; return
Nop
DATA
??TIM1_InternalClockConfig_0:
DC32 0x40012c08
DC32 0xfff0
SECTION `.XML`:CODE:NOROOT(2)
THUMB
TIM1_ETRClockMode1Config:
PUSH {R4-R6,LR}
MOVS R4,R0
MOVS R5,R1
MOVS R6,R2
MOVS R2,R6
UXTH R2,R2 ;; ZeroExtS R2,R2,#+16,#+16
MOVS R1,R5
UXTH R1,R1 ;; ZeroExtS R1,R1,#+16,#+16
MOVS R0,R4
UXTH R0,R0 ;; ZeroExtS R0,R0,#+16,#+16
BL TIM1_ETRConfig
LDR.N R0,??TIM1_ETRClockMode1Config_0 ;; 0x40012c08
LDRH R0,[R0, #+0]
LDR.N R1,??TIM1_ETRClockMode1Config_0+0x4 ;; 0xfff0
ANDS R1,R1,R0
LDR.N R0,??TIM1_ETRClockMode1Config_0 ;; 0x40012c08
STRH R1,[R0, #+0]
LDR.N R0,??TIM1_ETRClockMode1Config_0 ;; 0x40012c08
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -