?? stm32f10x_tim1.txt
字號:
;;;2345 /* Reset the IC4PSC Bits */
;;;2346 tmpccmr2 &= CCMR_IC24PSC_Mask;
00015a f24ff24f MOV r3,#0xf3ff
00015e 4019 ANDS r1,r1,r3
;;;2347
;;;2348 /* Set the IC4PSC value */
;;;2349 tmpccmr2 |= (u16)((u16)TIM1_IC4Prescaler << 8);
000160 ea41ea41 ORR r0,r1,r0,LSL #8
;;;2350
;;;2351 TIM1->CCMR2 = (u16)tmpccmr2;
000164 8010 STRH r0,[r2,#0]
;;;2352 }
000166 4770 BX lr
;;;2353
ENDP
TI4_Config PROC
;;;2746 u8 TIM1_ICFilter)
;;;2747 {
000168 b430 PUSH {r4,r5}
;;;2748 u32 tmpccmr2 = 0;
;;;2749
;;;2750 tmpccmr2 = TIM1->CCMR2;
00016a f8dff8df LDR r12,|L1.1056|
00016e f8bcf8bc LDRH r3,[r12,#0xc1c]
;;;2751
;;;2752 /* Disable the Channel 4: Reset the CCE Bit */
;;;2753 *(vu32 *) CCER_CC4E_BB = CCER_CCE_Reset;
000172 4cac LDR r4,|L1.1060|
000174 2500 MOVS r5,#0
000176 6025 STR r5,[r4,#0]
;;;2754
;;;2755 /* Select the Input and set the filter */
;;;2756 tmpccmr2 &= CCMR_CC24S_Mask & CCMR_IC24F_Mask;
000178 f640f640 MOV r5,#0xcff
00017c 402b ANDS r3,r3,r5
;;;2757 tmpccmr2 |= (u16)((u16)TIM1_ICSelection << 8) | (u16)((u16)TIM1_ICFilter << 12);
00017e 0209 LSLS r1,r1,#8
000180 ea41ea41 ORR r1,r1,r2,LSL #12
000184 4319 ORRS r1,r1,r3
;;;2758
;;;2759 TIM1->CCMR2 = (u16)tmpccmr2;
000186 f8acf8ac STRH r1,[r12,#0xc1c]
;;;2760
;;;2761 /* Select the Polarity */
;;;2762 *(vu32 *) CCER_CC4P_BB = TIM1_ICPolarity;
00018a 6060 STR r0,[r4,#4]
;;;2763
;;;2764 /* Set the CCE Bit */
;;;2765 *(vu32 *) CCER_CC4E_BB = CCER_CCE_Set;
00018c 2001 MOVS r0,#1
00018e 6020 STR r0,[r4,#0]
;;;2766 }
000190 bc30 POP {r4,r5}
000192 4770 BX lr
;;;2767 /******************* (C) COPYRIGHT 2007 STMicroelectronics *****END OF FILE****/
ENDP
TIM1_SetIC3Prescaler PROC
;;;2311
;;;2312 tmpccmr2 = TIM1->CCMR2;
000194 4a9e LDR r2,|L1.1040|
000196 8811 LDRH r1,[r2,#0]
;;;2313
;;;2314 /* Reset the IC3PSC Bits */
;;;2315 tmpccmr2 &= CCMR_IC13PSC_Mask;
000198 f64ff64f MOV r3,#0xfff3
00019c 4019 ANDS r1,r1,r3
;;;2316
;;;2317 /* Set the IC3PSC value */
;;;2318 tmpccmr2 |= TIM1_IC3Prescaler;
00019e 4308 ORRS r0,r0,r1
;;;2319
;;;2320 TIM1->CCMR2 = (u16)tmpccmr2;
0001a0 8010 STRH r0,[r2,#0]
;;;2321 }
0001a2 4770 BX lr
;;;2322
ENDP
TI3_Config PROC
;;;2703 u8 TIM1_ICFilter)
;;;2704 {
0001a4 b430 PUSH {r4,r5}
;;;2705 u32 tmpccmr2 = 0;
;;;2706
;;;2707 tmpccmr2 = TIM1->CCMR2;
0001a6 f8dff8df LDR r12,|L1.1056|
0001aa f8bcf8bc LDRH r3,[r12,#0xc1c]
;;;2708
;;;2709 /* Disable the Channel 3: Reset the CCE Bit */
;;;2710 *(vu32 *) CCER_CC3E_BB = CCER_CCE_Reset;
0001ae 4c9e LDR r4,|L1.1064|
0001b0 2500 MOVS r5,#0
0001b2 6025 STR r5,[r4,#0]
;;;2711
;;;2712 /* Select the Input and set the filter */
;;;2713 tmpccmr2 &= CCMR_CC13S_Mask & CCMR_IC13F_Mask;
0001b4 f64ff64f MOV r5,#0xff0c
0001b8 402b ANDS r3,r3,r5
;;;2714 tmpccmr2 |= (u16)TIM1_ICSelection | (u16)((u16)TIM1_ICFilter << 4);
0001ba ea41ea41 ORR r1,r1,r2,LSL #4
0001be 4319 ORRS r1,r1,r3
;;;2715
;;;2716 TIM1->CCMR2 = (u16)tmpccmr2;
0001c0 f8acf8ac STRH r1,[r12,#0xc1c]
;;;2717
;;;2718 /* Select the Polarity */
;;;2719 *(vu32 *) CCER_CC3P_BB = TIM1_ICPolarity;
0001c4 6060 STR r0,[r4,#4]
;;;2720
;;;2721 /* Set the CCE Bit */
;;;2722 *(vu32 *) CCER_CC3E_BB = CCER_CCE_Set;
0001c6 2001 MOVS r0,#1
0001c8 6020 STR r0,[r4,#0]
;;;2723 }
0001ca bc30 POP {r4,r5}
0001cc 4770 BX lr
;;;2724
ENDP
TIM1_SetIC2Prescaler PROC
;;;2280
;;;2281 tmpccmr1 = TIM1->CCMR1;
0001ce 4a8d LDR r2,|L1.1028|
0001d0 8811 LDRH r1,[r2,#0]
;;;2282
;;;2283 /* Reset the IC2PSC Bits */
;;;2284 tmpccmr1 &= CCMR_IC24PSC_Mask;
0001d2 f24ff24f MOV r3,#0xf3ff
0001d6 4019 ANDS r1,r1,r3
;;;2285
;;;2286 /* Set the IC2PSC value */
;;;2287 tmpccmr1 |= (u16)((u16)TIM1_IC2Prescaler << 8);
0001d8 ea41ea41 ORR r0,r1,r0,LSL #8
;;;2288
;;;2289 TIM1->CCMR1 = (u16)tmpccmr1;
0001dc 8010 STRH r0,[r2,#0]
;;;2290 }
0001de 4770 BX lr
;;;2291
ENDP
TI2_Config PROC
;;;2659 u8 TIM1_ICFilter)
;;;2660 {
0001e0 b430 PUSH {r4,r5}
;;;2661 u32 tmpccmr1 = 0;
;;;2662
;;;2663 tmpccmr1 = TIM1->CCMR1;
0001e2 f8dff8df LDR r12,|L1.1056|
0001e6 f8bcf8bc LDRH r3,[r12,#0xc18]
;;;2664
;;;2665 /* Disable the Channel 2: Reset the CCE Bit */
;;;2666 *(vu32 *) CCER_CC2E_BB = CCER_CCE_Reset;
0001ea 4c90 LDR r4,|L1.1068|
0001ec 2500 MOVS r5,#0
0001ee 6025 STR r5,[r4,#0]
;;;2667
;;;2668 /* Select the Input and set the filter */
;;;2669 tmpccmr1 &= CCMR_CC24S_Mask & CCMR_IC24F_Mask;
0001f0 f640f640 MOV r5,#0xcff
0001f4 402b ANDS r3,r3,r5
;;;2670 tmpccmr1 |= (u16)((u16)TIM1_ICSelection << 8) | (u16)((u16)TIM1_ICFilter <<12);
0001f6 0209 LSLS r1,r1,#8
0001f8 ea41ea41 ORR r1,r1,r2,LSL #12
0001fc 4319 ORRS r1,r1,r3
;;;2671
;;;2672 TIM1->CCMR1 = (u16)tmpccmr1;
0001fe f8acf8ac STRH r1,[r12,#0xc18]
;;;2673
;;;2674 /* Select the Polarity */
;;;2675 *(vu32 *) CCER_CC2P_BB = TIM1_ICPolarity;
000202 6060 STR r0,[r4,#4]
;;;2676
;;;2677 /* Set the CCE Bit */
;;;2678 *(vu32 *) CCER_CC2E_BB = CCER_CCE_Set;
000204 2001 MOVS r0,#1
000206 6020 STR r0,[r4,#0]
;;;2679
;;;2680 }
000208 bc30 POP {r4,r5}
00020a 4770 BX lr
;;;2681
ENDP
TIM1_SetIC1Prescaler PROC
;;;2249
;;;2250 tmpccmr1 = TIM1->CCMR1;
00020c 4a7d LDR r2,|L1.1028|
00020e 8811 LDRH r1,[r2,#0]
;;;2251
;;;2252 /* Reset the IC1PSC Bits */
;;;2253 tmpccmr1 &= CCMR_IC13PSC_Mask;
000210 f64ff64f MOV r3,#0xfff3
000214 4019 ANDS r1,r1,r3
;;;2254
;;;2255 /* Set the IC1PSC value */
;;;2256 tmpccmr1 |= TIM1_IC1Prescaler;
000216 4308 ORRS r0,r0,r1
;;;2257
;;;2258 TIM1->CCMR1 = (u16)tmpccmr1;
000218 8010 STRH r0,[r2,#0]
;;;2259 }
00021a 4770 BX lr
;;;2260
ENDP
TI1_Config PROC
;;;2616 u8 TIM1_ICFilter)
;;;2617 {
00021c b430 PUSH {r4,r5}
;;;2618 u32 tmpccmr1 = 0;
;;;2619
;;;2620 tmpccmr1 = TIM1->CCMR1;
00021e f8dff8df LDR r12,|L1.1056|
000222 f8bcf8bc LDRH r3,[r12,#0xc18]
;;;2621
;;;2622 /* Disable the Channel 1: Reset the CCE Bit */
;;;2623 *(vu32 *) CCER_CC1E_BB = CCER_CCE_Reset;
000226 4c82 LDR r4,|L1.1072|
000228 2500 MOVS r5,#0
00022a 6025 STR r5,[r4,#0]
;;;2624
;;;2625 /* Select the Input and set the filter */
;;;2626 tmpccmr1 &= CCMR_CC13S_Mask & CCMR_IC13F_Mask;
00022c f64ff64f MOV r5,#0xff0c
000230 402b ANDS r3,r3,r5
;;;2627 tmpccmr1 |= (u16)TIM1_ICSelection | (u16)((u16)TIM1_ICFilter << 4);
000232 ea41ea41 ORR r1,r1,r2,LSL #4
000236 4319 ORRS r1,r1,r3
;;;2628
;;;2629 TIM1->CCMR1 = (u16)tmpccmr1;
000238 f8acf8ac STRH r1,[r12,#0xc18]
;;;2630
;;;2631 /* Select the Polarity */
;;;2632 *(vu32 *) CCER_CC1P_BB = TIM1_ICPolarity;
00023c 6060 STR r0,[r4,#4]
;;;2633
;;;2634 /* Set the CCE Bit */
;;;2635 *(vu32 *) CCER_CC1E_BB = CCER_CCE_Set;
00023e 2001 MOVS r0,#1
000240 6020 STR r0,[r4,#0]
;;;2636 }
000242 bc30 POP {r4,r5}
000244 4770 BX lr
;;;2637
ENDP
TIM1_ICInit PROC
;;;592 void TIM1_ICInit(TIM1_ICInitTypeDef* TIM1_ICInitStruct)
;;;593 {
000246 b510 PUSH {r4,lr}
000248 4604 MOV r4,r0
;;;594 /* Check the parameters */
;;;595 assert(IS_TIM1_CHANNEL(TIM1_ICInitStruct->TIM1_Channel));
;;;596 assert(IS_TIM1_IC_POLARITY(TIM1_ICInitStruct->TIM1_ICPolarity));
;;;597 assert(IS_TIM1_IC_SELECTION(TIM1_ICInitStruct->TIM1_ICSelection));
;;;598 assert(IS_TIM1_IC_PRESCALER(TIM1_ICInitStruct->TIM1_ICPrescaler));
;;;599 assert(IS_TIM1_IC_FILTER(TIM1_ICInitStruct->TIM1_ICFilter));
;;;600
;;;601 if (TIM1_ICInitStruct->TIM1_Channel == TIM1_Channel_1)
00024a 8823 LDRH r3,[r4,#0]
00024c 8860 LDRH r0,[r4,#2]
00024e 88a1 LDRH r1,[r4,#4]
000250 7a22 LDRB r2,[r4,#8]
000252 b92b CBNZ r3,|L1.608|
;;;602 {
;;;603 /* TI1 Configuration */
;;;604 TI1_Config(TIM1_ICInitStruct->TIM1_ICPolarity,
000254 f7fff7ff BL TI1_Config
;;;605 TIM1_ICInitStruct->TIM1_ICSelection,
;;;606 TIM1_ICInitStruct->TIM1_ICFilter);
;;;607
;;;608 /* Set the Input Capture Prescaler value */
;;;609 TIM1_SetIC1Prescaler(TIM1_ICInitStruct->TIM1_ICPrescaler);
000258 88e0 LDRH r0,[r4,#6]
00025a e8bde8bd POP {r4,lr}
00025e e7fe B TIM1_SetIC1Prescaler
|L1.608|
;;;610 }
;;;611 else if (TIM1_ICInitStruct->TIM1_Channel == TIM1_Channel_2)
000260 2b01 CMP r3,#1
000262 d105 BNE |L1.624|
;;;612 {
;;;613 /* TI2 Configuration */
;;;614 TI2_Config(TIM1_ICInitStruct->TIM1_ICPolarity,
000264 f7fff7ff BL TI2_Config
;;;615 TIM1_ICInitStruct->TIM1_ICSelection,
;;;616 TIM1_ICInitStruct->TIM1_ICFilter);
;;;617
;;;618 /* Set the Input Capture Prescaler value */
;;;619 TIM1_SetIC2Prescaler(TIM1_ICInitStruct->TIM1_ICPrescaler);
000268 88e0 LDRH r0,[r4,#6]
00026a e8bde8bd POP {r4,lr}
00026e e7fe B TIM1_SetIC2Prescaler
|L1.624|
;;;620 }
;;;621 else if (TIM1_ICInitStruct->TIM1_Channel == TIM1_Channel_3)
000270 2b02 CMP r3,#2
000272 d105 BNE |L1.640|
;;;622 {
;;;623 /* TI3 Configuration */
;;;624 TI3_Config(TIM1_ICInitStruct->TIM1_ICPolarity,
000274 f7fff7ff BL TI3_Config
;;;625 TIM1_ICInitStruct->TIM1_ICSelection,
;;;626 TIM1_ICInitStruct->TIM1_ICFilter);
;;;627
;;;628 /* Set the Input Capture Prescaler value */
;;;629 TIM1_SetIC3Prescaler(TIM1_ICInitStruct->TIM1_ICPrescaler);
000278 88e0 LDRH r0,[r4,#6]
00027a e8bde8bd POP {r4,lr}
00027e e7fe B TIM1_SetIC3Prescaler
|L1.640|
;;;630 }
;;;631 else
;;;632 {
;;;633 /* TI4 Configuration */
;;;634 TI4_Config(TIM1_ICInitStruct->TIM1_ICPolarity,
000280 f7fff7ff BL TI4_Config
;;;635 TIM1_ICInitStruct->TIM1_ICSelection,
;;;636 TIM1_ICInitStruct->TIM1_ICFilter);
;;;637
;;;638 /* Set the Input Capture Prescaler value */
;;;639 TIM1_SetIC4Prescaler(TIM1_ICInitStruct->TIM1_ICPrescaler);
000284 88e0 LDRH r0,[r4,#6]
000286 e8bde8bd POP {r4,lr}
00028a e7fe B TIM1_SetIC4Prescaler
;;;640 }
;;;641 }
;;;642
ENDP
TIM1_PWMIConfig PROC
;;;653 void TIM1_PWMIConfig(TIM1_ICInitTypeDef* TIM1_ICInitStruct)
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -