📄 stm32f10x_systick.lst
字号:
##############################################################################
# #
# IAR ARM ANSI C/C++ Compiler V4.42A/W32 KICKSTART 13/Mar/2009 16:01:13 #
# Copyright 1999-2005 IAR Systems. All rights reserved. #
# #
# Cpu mode = thumb #
# Endian = little #
# Stack alignment = 4 #
# Source file = E:\UC_OS\Micrium\Software\CPU\ST\STM32\src\stm32f10x #
# _systick.c #
# Command line = E:\UC_OS\Micrium\Software\CPU\ST\STM32\src\stm32f10x #
# _systick.c -lCN E:\UC_OS\Micrium\Software\EvalBoards #
# \ST\STM3210B-EVAL\IAR\OS-Probe\Flash\List\ -o #
# E:\UC_OS\Micrium\Software\EvalBoards\ST\STM3210B-EVA #
# L\IAR\OS-Probe\Flash\Obj\ -z6 --no_unroll #
# --no_inline --no_tbaa --no_scheduling --debug #
# --cpu_mode thumb --endian little --cpu cortex-M3 #
# --stack_align 4 -e --fpu None --dlib_config #
# "C:\Program Files\IAR Systems\Embedded Workbench #
# 4.0 Kickstart\arm\LIB\dl7mptnnl8n.h" -I #
# E:\UC_OS\Micrium\Software\EvalBoards\ST\STM3210B-EVA #
# L\IAR\OS-Probe\ -I E:\UC_OS\Micrium\Software\EvalBoa #
# rds\ST\STM3210B-EVAL\IAR\OS-Probe\..\..\..\..\..\uco #
# s-ii\ports\arm-cortex-m3\generic\iar\ -I #
# E:\UC_OS\Micrium\Software\EvalBoards\ST\STM3210B-EVA #
# L\IAR\OS-Probe\..\..\..\..\..\ucos-ii\source\ -I #
# E:\UC_OS\Micrium\Software\EvalBoards\ST\STM3210B-EVA #
# L\IAR\OS-Probe\..\..\..\..\..\uc-lib\ -I #
# E:\UC_OS\Micrium\Software\EvalBoards\ST\STM3210B-EVA #
# L\IAR\OS-Probe\..\..\..\..\..\uc-cpu\ -I #
# E:\UC_OS\Micrium\Software\EvalBoards\ST\STM3210B-EVA #
# L\IAR\OS-Probe\..\..\..\..\..\uc-cpu\ARM-Cortex-M3\I #
# AR\ -I E:\UC_OS\Micrium\Software\EvalBoards\ST\STM32 #
# 10B-EVAL\IAR\OS-Probe\..\..\..\..\..\cpu\st\stm32\in #
# c\ -I E:\UC_OS\Micrium\Software\EvalBoards\ST\STM321 #
# 0B-EVAL\IAR\OS-Probe\..\BSP\ -I #
# E:\UC_OS\Micrium\Software\EvalBoards\ST\STM3210B-EVA #
# L\IAR\OS-Probe\..\..\..\..\..\uC-Probe\Target\Commun #
# ication\Generic\RS-232\Source\ -I #
# E:\UC_OS\Micrium\Software\EvalBoards\ST\STM3210B-EVA #
# L\IAR\OS-Probe\..\..\..\..\..\uC-Probe\Target\Commun #
# ication\Generic\RS-232\Ports\ST\STM32\ -I #
# E:\UC_OS\Micrium\Software\EvalBoards\ST\STM3210B-EVA #
# L\IAR\OS-Probe\..\..\..\..\..\uC-Probe\Target\Commun #
# ication\Generic\Source\ -I #
# E:\UC_OS\Micrium\Software\EvalBoards\ST\STM3210B-EVA #
# L\IAR\OS-Probe\..\..\..\..\..\uC-Probe\Target\Plugin #
# s\uCOS-II\ -I "C:\Program Files\IAR #
# Systems\Embedded Workbench 4.0 Kickstart\arm\INC\" #
# List file = E:\UC_OS\Micrium\Software\EvalBoards\ST\STM3210B-EVA #
# L\IAR\OS-Probe\Flash\List\stm32f10x_systick.lst #
# Object file = E:\UC_OS\Micrium\Software\EvalBoards\ST\STM3210B-EVA #
# L\IAR\OS-Probe\Flash\Obj\stm32f10x_systick.r79 #
# #
# #
##############################################################################
E:\UC_OS\Micrium\Software\CPU\ST\STM32\src\stm32f10x_systick.c
1 /******************** (C) COPYRIGHT 2007 STMicroelectronics ********************
2 * File Name : stm32f10x_systick.c
3 * Author : MCD Application Team
4 * Date First Issued : 09/29/2006
5 * Description : This file provides all the SysTick firmware functions.
6 ********************************************************************************
7 * History:
8 * 05/21/2007: V0.3
9 * 04/02/2007: V0.2
10 * 02/05/2007: V0.1
11 * 09/29/2006: V0.01
12 ********************************************************************************
13 * THE PRESENT SOFTWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS
14 * WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME.
15 * AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT,
16 * INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE
17 * CONTENT OF SUCH SOFTWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING
18 * INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS.
19 *******************************************************************************/
20
21 /* Includes ------------------------------------------------------------------*/
22 #include "stm32f10x_systick.h"
23
24 /* Private typedef -----------------------------------------------------------*/
25 /* Private define ------------------------------------------------------------*/
26 /* ---------------------- SysTick registers bit mask -------------------- */
27 /* CTRL TICKINT Mask */
28 #define CTRL_TICKINT_Set ((u32)0x00000002)
29 #define CTRL_TICKINT_Reset ((u32)0xFFFFFFFD)
30
31 /* SysTick Flag Mask */
32 #define FLAG_Mask ((u8)0x1F)
33
34 /* Private macro -------------------------------------------------------------*/
35 /* Private variables ---------------------------------------------------------*/
36 /* Private function prototypes -----------------------------------------------*/
37 /* Private functions ---------------------------------------------------------*/
38
39 /*******************************************************************************
40 * Function Name : SysTick_CLKSourceConfig
41 * Description : Configures the SysTick clock source.
42 * Input : - SysTick_CLKSource: specifies the SysTick clock source.
43 * This parameter can be one of the following values:
44 * - SysTick_CLKSource_HCLK_Div8: AHB clock divided by 8
45 * selected as SysTick clock source.
46 * - SysTick_CLKSource_HCLK: AHB clock selected as
47 * SysTick clock source.
48 * Output : None
49 * Return : None
50 *******************************************************************************/
\ In segment CODE, align 4, keep-with-next
51 void SysTick_CLKSourceConfig(u32 SysTick_CLKSource)
52 {
53 /* Check the parameters */
54 assert(IS_SYSTICK_CLK_SOURCE(SysTick_CLKSource));
55
56 if (SysTick_CLKSource == SysTick_CLKSource_HCLK)
\ SysTick_CLKSourceConfig:
\ 00000000 .... LDR.N R1,??DataTable5 ;; 0xffffffffe000e010
\ 00000002 0428 CMP R0,#+4
\ 00000004 0868 LDR R0,[R1, #+0]
\ 00000006 03D1 BNE.N ??SysTick_CLKSourceConfig_0
57 {
58 SysTick->CTRL |= SysTick_CLKSource_HCLK;
\ 00000008 50F00400 ORRS R0,R0,#0x4
\ 0000000C 0860 STR R0,[R1, #+0]
\ 0000000E 7047 BX LR
59 }
60 else
61 {
62 SysTick->CTRL &= SysTick_CLKSource_HCLK_Div8;
\ ??SysTick_CLKSourceConfig_0:
\ 00000010 0422 MOVS R2,#+4
\ 00000012 9043 BICS R0,R0,R2
\ 00000014 0860 STR R0,[R1, #+0]
63 }
64 }
\ 00000016 7047 BX LR ;; return
65
66 /*******************************************************************************
67 * Function Name : SysTick_SetReload
68 * Description : Sets SysTick Reload value.
69 * Input : - Reload: SysTick Reload new value.
70 * This parameter must be a number between 1 and 0xFFFFFF.
71 * Output : None
72 * Return : None
73 *******************************************************************************/
\ In segment CODE, align 4, keep-with-next
74 void SysTick_SetReload(u32 Reload)
75 {
76 /* Check the parameters */
77 assert(IS_SYSTICK_RELOAD(Reload));
78
79 SysTick->LOAD = Reload;
\ SysTick_SetReload:
\ 00000000 0149 LDR.N R1,??SysTick_SetReload_0 ;; 0xffffffffe000e014
\ 00000002 0860 STR R0,[R1, #+0]
80 }
\ 00000004 7047 BX LR ;; return
\ 00000006 00BF Nop
\ ??SysTick_SetReload_0:
\ 00000008 14E000E0 DC32 0xffffffffe000e014
81
82 /*******************************************************************************
83 * Function Name : SysTick_CounterCmd
84 * Description : Enables or disables the SysTick counter.
85 * Input : - SysTick_Counter: new state of the SysTick counter.
86 * This parameter can be one of the following values:
87 * - SysTick_Counter_Disable: Disable counter
88 * - SysTick_Counter_Enable: Enable counter
89 * - SysTick_Counter_Clear: Clear counter value to 0
90 * Output : None
91 * Return : None
92 *******************************************************************************/
\ In segment CODE, align 4, keep-with-next
93 void SysTick_CounterCmd(u32 SysTick_Counter)
94 {
95 /* Check the parameters */
96 assert(IS_SYSTICK_COUNTER(SysTick_Counter));
97
98 if (SysTick_Counter == SysTick_Counter_Clear)
\ SysTick_CounterCmd:
\ 00000000 0028 CMP R0,#+0
\ 00000002 03D1 BNE.N ??SysTick_CounterCmd_0
99 {
100 SysTick->VAL = SysTick_Counter_Clear;
\ 00000004 .... LDR.N R0,??DataTable4 ;; 0xffffffffe000e018
\ 00000006 0021 MOVS R1,#+0
\ 00000008 0160 STR R1,[R0, #+0]
\ 0000000A 7047 BX LR
101 }
102 else
103 {
104 if (SysTick_Counter == SysTick_Counter_Enable)
\ ??SysTick_CounterCmd_0:
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -