📄 stm32f10x_tim.lst
字号:
176:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** */
177:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c ****
178:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** /** @defgroup TIM_Private_Functions
179:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** * @{
180:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** */
181:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c ****
182:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** /**
183:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** * @brief Deinitializes the TIMx peripheral registers to their default
184:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** * reset values.
185:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** * @param TIMx: where x can be 1 to 8 to select the TIM peripheral.
186:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** * @retval : None
187:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** */
188:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** void TIM_DeInit(TIM_TypeDef* TIMx)
189:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** {
190:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** /* Check the parameters */
191:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** assert_param(IS_TIM_ALL_PERIPH(TIMx));
192:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c ****
193:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** switch (*(uint32_t*)&TIMx)
194:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** {
195:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** case TIM1_BASE:
196:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** RCC_APB2PeriphResetCmd(RCC_APB2Periph_TIM1, ENABLE);
197:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** RCC_APB2PeriphResetCmd(RCC_APB2Periph_TIM1, DISABLE);
198:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** break;
199:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c ****
200:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** case TIM2_BASE:
201:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** RCC_APB1PeriphResetCmd(RCC_APB1Periph_TIM2, ENABLE);
202:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** RCC_APB1PeriphResetCmd(RCC_APB1Periph_TIM2, DISABLE);
203:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** break;
204:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c ****
205:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** case TIM3_BASE:
206:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** RCC_APB1PeriphResetCmd(RCC_APB1Periph_TIM3, ENABLE);
207:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** RCC_APB1PeriphResetCmd(RCC_APB1Periph_TIM3, DISABLE);
208:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** break;
209:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c ****
210:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** case TIM4_BASE:
211:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** RCC_APB1PeriphResetCmd(RCC_APB1Periph_TIM4, ENABLE);
212:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** RCC_APB1PeriphResetCmd(RCC_APB1Periph_TIM4, DISABLE);
213:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** break;
214:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c ****
215:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** case TIM5_BASE:
216:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** RCC_APB1PeriphResetCmd(RCC_APB1Periph_TIM5, ENABLE);
217:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** RCC_APB1PeriphResetCmd(RCC_APB1Periph_TIM5, DISABLE);
218:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** break;
219:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c ****
220:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** case TIM6_BASE:
221:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** RCC_APB1PeriphResetCmd(RCC_APB1Periph_TIM6, ENABLE);
222:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** RCC_APB1PeriphResetCmd(RCC_APB1Periph_TIM6, DISABLE);
223:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** break;
224:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c ****
225:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** case TIM7_BASE:
226:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** RCC_APB1PeriphResetCmd(RCC_APB1Periph_TIM7, ENABLE);
227:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** RCC_APB1PeriphResetCmd(RCC_APB1Periph_TIM7, DISABLE);
228:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** break;
229:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c ****
230:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** case TIM8_BASE:
231:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** RCC_APB2PeriphResetCmd(RCC_APB2Periph_TIM8, ENABLE);
232:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** RCC_APB2PeriphResetCmd(RCC_APB2Periph_TIM8, DISABLE);
233:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** break;
234:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c ****
235:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** default:
236:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** break;
237:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** }
238:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** }
239:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c ****
240:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** /**
241:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** * @brief Initializes the TIMx Time Base Unit peripheral according to
242:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** * the specified parameters in the TIM_TimeBaseInitStruct.
243:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** * @param TIMx: where x can be 1, 2, 3, 4, 5 or 8 to select the TIM
244:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** * peripheral.
245:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** * @param TIM_TimeBaseInitStruct: pointer to a TIM_TimeBaseInitTypeDef
246:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** * structure that contains the configuration information for
247:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** * the specified TIM peripheral.
248:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** * @retval : None
249:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** */
250:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** void TIM_TimeBaseInit(TIM_TypeDef* TIMx, TIM_TimeBaseInitTypeDef* TIM_TimeBaseInitStruct)
251:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** {
31 .loc 1 251 0
32 @ args = 0, pretend = 0, frame = 8
33 @ frame_needed = 0, uses_anonymous_args = 0
34 .LVL0:
252:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** /* Check the parameters */
253:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** assert_param(IS_TIM_123458_PERIPH(TIMx));
254:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** assert_param(IS_TIM_COUNTER_MODE(TIM_TimeBaseInitStruct->TIM_CounterMode));
255:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** assert_param(IS_TIM_CKD_DIV(TIM_TimeBaseInitStruct->TIM_ClockDivision));
256:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** /* Select the Counter Mode and set the clock division */
257:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** TIMx->CR1 &= CR1_CKD_Mask & CR1_CounterMode_Mask;
35 .loc 1 257 0
36 0000 0388 ldrh r3, [r0, #0]
37 .LVL1:
38 .loc 1 251 0
39 0002 13B5 push {r0, r1, r4, lr}
40 .LCFI0:
41 .LVL2:
42 .loc 1 257 0
43 0004 03F08F03 and r3, r3, #143
44 0008 0380 strh r3, [r0, #0] @ movhi
45 .loc 1 251 0
46 000a 0C46 mov r4, r1
47 .LVL3:
258:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** TIMx->CR1 |= (uint32_t)TIM_TimeBaseInitStruct->TIM_ClockDivision |
48 .loc 1 258 0
49 000c 0388 ldrh r3, [r0, #0]
50 000e E288 ldrh r2, [r4, #6]
51 0010 9BB2 uxth r3, r3
52 0012 1343 orrs r3, r3, r2
53 0014 6288 ldrh r2, [r4, #2]
54 .loc 1 251 0
55 0016 0190 str r0, [sp, #4]
56 .LVL4:
57 .loc 1 258 0
58 0018 1343 orrs r3, r3, r2
59 001a 9BB2 uxth r3, r3
60 001c 0380 strh r3, [r0, #0] @ movhi
61 .LVL5:
259:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** TIM_TimeBaseInitStruct->TIM_CounterMode;
260:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c ****
261:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** /* Set the Autoreload value */
262:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** TIMx->ARR = TIM_TimeBaseInitStruct->TIM_Period ;
62 .loc 1 262 0
63 001e A288 ldrh r2, [r4, #4]
64 0020 019B ldr r3, [sp, #4]
65 0022 9A85 strh r2, [r3, #44] @ movhi
263:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c ****
264:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** /* Set the Prescaler value */
265:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** TIMx->PSC = TIM_TimeBaseInitStruct->TIM_Prescaler;
66 .loc 1 265 0
67 0024 2288 ldrh r2, [r4, #0]
68 0026 019B ldr r3, [sp, #4]
69 0028 1A85 strh r2, [r3, #40] @ movhi
266:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c ****
267:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** if (((*(uint32_t*)&TIMx) == TIM1_BASE) || ((*(uint32_t*)&TIMx) == TIM8_BASE))
70 .loc 1 267 0
71 002a 019A ldr r2, [sp, #4]
72 002c 074B ldr r3, .L5
73 002e 9A42 cmp r2, r3
74 0030 03D0 beq .L2
75 .LVL6:
76 0032 03F50063 add r3, r3, #2048
77 0036 9A42 cmp r2, r3
78 0038 02D1 bne .L3
79 .L2:
268:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** {
269:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** /* Set the Repetition Counter value */
270:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** TIMx->RCR = TIM_TimeBaseInitStruct->TIM_RepetitionCounter;
80 .loc 1 270 0
81 003a 227A ldrb r2, [r4, #8] @ zero_extendqisi2
82 003c 019B ldr r3, [sp, #4]
83 003e 1A86 strh r2, [r3, #48] @ movhi
84 .L3:
271:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** }
272:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c ****
273:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** /* Generate an update event to reload the Prescaler value immediatly */
274:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** TIMx->EGR = TIM_PSCReloadMode_Immediate;
85 .loc 1 274 0
86 0040 019B ldr r3, [sp, #4]
87 0042 4FF00102 mov r2, #1 @ movhi
88 0046 9A82 strh r2, [r3, #20] @ movhi
275:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** }
89 .loc 1 275 0
90 0048 1CBD pop {r2, r3, r4, pc}
91 .L6:
92 004a C046 .align 2
93 .L5:
94 004c 002C0140 .word 1073818624
95 .LFE27:
97 .section .text.TIM_OC1Init,"ax",%progbits
98 .align 2
99 .global TIM_OC1Init
100 .thumb
101 .thumb_func
103 TIM_OC1Init:
104 .LFB28:
276:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c ****
277:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** /**
278:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** * @brief Initializes the TIMx Channel1 according to the specified
279:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** * parameters in the TIM_OCInitStruct.
280:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** * @param TIMx: where x can be 1, 2, 3, 4, 5 or 8 to select the TIM
281:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** * peripheral.
282:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** * @param TIM_OCInitStruct: pointer to a TIM_OCInitTypeDef structure
283:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** * that contains the configuration information for the specified
284:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** * TIM peripheral.
285:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** * @retval : None
286:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** */
287:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** void TIM_OC1Init(TIM_TypeDef* TIMx, TIM_OCInitTypeDef* TIM_OCInitStruct)
288:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** {
105 .loc 1 288 0
106 @ args = 0, pretend = 0, frame = 8
107 @ frame_needed = 0, uses_anonymous_args = 0
108 .LVL7:
109 0000 F7B5 push {r0, r1, r2, r4, r5, r6, r7, lr}
110 .LCFI1:
111 .LVL8:
112 .loc 1 288 0
113 0002 0190 str r0, [sp, #4]
114 .LVL9:
289:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c **** uint16_t tmpccmrx = 0, tmpccer = 0, tmpcr2 = 0;
290:lib/STM32F10x_StdPeriph_Driver/src/stm32f10x_tim.c ****
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -