📄 stm32f10x_systick.lst
字号:
##############################################################################
# #
# IAR ARM ANSI C/C++ Compiler V4.42A/W32 KICKSTART 26/Dec/2008 18:22:08 #
# Copyright 1999-2005 IAR Systems. All rights reserved. #
# #
# Cpu mode = thumb #
# Endian = little #
# Stack alignment = 4 #
# Source file = F:\PROJECT\STM32_UCOSII\CPU\ST\STM32\src\stm32f10x_s #
# ystick.c #
# Command line = F:\PROJECT\STM32_UCOSII\CPU\ST\STM32\src\stm32f10x_s #
# ystick.c -lCN F:\PROJECT\STM32_UCOSII\EvalBoards\ST\ #
# STM3210E-EVAL\IAR\OS-Probe\Flash\List\ -o #
# F:\PROJECT\STM32_UCOSII\EvalBoards\ST\STM3210E-EVAL\ #
# 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 "E:\Program Files\IAR #
# Systems\Embedded Workbench 4.0 #
# Kickstart\arm\LIB\dl7mptnnl8n.h" -I #
# F:\PROJECT\STM32_UCOSII\EvalBoards\ST\STM3210E-EVAL\ #
# IAR\OS-Probe\ -I F:\PROJECT\STM32_UCOSII\EvalBoards\ #
# ST\STM3210E-EVAL\IAR\OS-Probe\..\BSP\ -I #
# F:\PROJECT\STM32_UCOSII\EvalBoards\ST\STM3210E-EVAL\ #
# IAR\OS-Probe\..\..\..\..\..\CPU\ST\STM32\inc\ -I #
# F:\PROJECT\STM32_UCOSII\EvalBoards\ST\STM3210E-EVAL\ #
# IAR\OS-Probe\..\..\..\..\..\uC-CPU\ -I #
# F:\PROJECT\STM32_UCOSII\EvalBoards\ST\STM3210E-EVAL\ #
# IAR\OS-Probe\..\..\..\..\..\uC-CPU\ARM-Cortex-M3\IAR #
# \ -I F:\PROJECT\STM32_UCOSII\EvalBoards\ST\STM3210E- #
# EVAL\IAR\OS-Probe\..\..\..\..\..\uC-LCD\Source\ -I #
# F:\PROJECT\STM32_UCOSII\EvalBoards\ST\STM3210E-EVAL\ #
# IAR\OS-Probe\..\..\..\..\..\uC-LIB\ -I #
# F:\PROJECT\STM32_UCOSII\EvalBoards\ST\STM3210E-EVAL\ #
# IAR\OS-Probe\..\..\..\..\..\uCOS-II\Ports\ARM-Cortex #
# -M3\Generic\IAR\ -I F:\PROJECT\STM32_UCOSII\EvalBoar #
# ds\ST\STM3210E-EVAL\IAR\OS-Probe\..\..\..\..\..\uCOS #
# -II\Source\ -I F:\PROJECT\STM32_UCOSII\EvalBoards\ST #
# \STM3210E-EVAL\IAR\OS-Probe\..\..\..\..\..\uC-Probe\ #
# Target\Communication\Generic\RS-232\Source\ -I #
# F:\PROJECT\STM32_UCOSII\EvalBoards\ST\STM3210E-EVAL\ #
# IAR\OS-Probe\..\..\..\..\..\uC-Probe\Target\Communic #
# ation\Generic\RS-232\Ports\ST\STM32\ -I #
# F:\PROJECT\STM32_UCOSII\EvalBoards\ST\STM3210E-EVAL\ #
# IAR\OS-Probe\..\..\..\..\..\uC-Probe\Target\Communic #
# ation\Generic\Source\ -I F:\PROJECT\STM32_UCOSII\Eva #
# lBoards\ST\STM3210E-EVAL\IAR\OS-Probe\..\..\..\..\.. #
# \uC-Probe\Target\Plugins\uCOS-II\ -I "E:\Program #
# Files\IAR Systems\Embedded Workbench 4.0 #
# Kickstart\arm\INC\" #
# List file = F:\PROJECT\STM32_UCOSII\EvalBoards\ST\STM3210E-EVAL\ #
# IAR\OS-Probe\Flash\List\stm32f10x_systick.lst #
# Object file = F:\PROJECT\STM32_UCOSII\EvalBoards\ST\STM3210E-EVAL\ #
# IAR\OS-Probe\Flash\Obj\stm32f10x_systick.r79 #
# #
# #
##############################################################################
F:\PROJECT\STM32_UCOSII\CPU\ST\STM32\src\stm32f10x_systick.c
1 /******************** (C) COPYRIGHT 2008 STMicroelectronics ********************
2 * File Name : stm32f10x_systick.c
3 * Author : MCD Application Team
4 * Version : V2.0
5 * Date : 05/23/2008
6 * Description : This file provides all the SysTick firmware functions.
7 ********************************************************************************
8 * THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS
9 * WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME.
10 * AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT,
11 * INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE
12 * CONTENT OF SUCH SOFTWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING
13 * INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS.
14 * FOR MORE INFORMATION PLEASE CAREFULLY READ THE LICENSE AGREEMENT FILE LOCATED
15 * IN THE ROOT DIRECTORY OF THIS FIRMWARE PACKAGE.
16 *******************************************************************************/
17
18 /* Includes ------------------------------------------------------------------*/
19 #include "stm32f10x_systick.h"
20
21 /* Private typedef -----------------------------------------------------------*/
22 /* Private define ------------------------------------------------------------*/
23 /* ---------------------- SysTick registers bit mask -------------------- */
24 /* CTRL TICKINT Mask */
25 #define CTRL_TICKINT_Set ((u32)0x00000002)
26 #define CTRL_TICKINT_Reset ((u32)0xFFFFFFFD)
27
28 /* Private macro -------------------------------------------------------------*/
29 /* Private variables ---------------------------------------------------------*/
30 /* Private function prototypes -----------------------------------------------*/
31 /* Private functions ---------------------------------------------------------*/
32
33 /*******************************************************************************
34 * Function Name : SysTick_CLKSourceConfig
35 * Description : Configures the SysTick clock source.
36 * Input : - SysTick_CLKSource: specifies the SysTick clock source.
37 * This parameter can be one of the following values:
38 * - SysTick_CLKSource_HCLK_Div8: AHB clock divided by 8
39 * selected as SysTick clock source.
40 * - SysTick_CLKSource_HCLK: AHB clock selected as
41 * SysTick clock source.
42 * Output : None
43 * Return : None
44 *******************************************************************************/
\ In segment CODE, align 4, keep-with-next
45 void SysTick_CLKSourceConfig(u32 SysTick_CLKSource)
46 {
47 /* Check the parameters */
48 assert_param(IS_SYSTICK_CLK_SOURCE(SysTick_CLKSource));
49
50 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
51 {
52 SysTick->CTRL |= SysTick_CLKSource_HCLK;
\ 00000008 50F00400 ORRS R0,R0,#0x4
\ 0000000C 0860 STR R0,[R1, #+0]
\ 0000000E 7047 BX LR
53 }
54 else
55 {
56 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]
57 }
58 }
\ 00000016 7047 BX LR ;; return
59
60 /*******************************************************************************
61 * Function Name : SysTick_SetReload
62 * Description : Sets SysTick Reload value.
63 * Input : - Reload: SysTick Reload new value.
64 * This parameter must be a number between 1 and 0xFFFFFF.
65 * Output : None
66 * Return : None
67 *******************************************************************************/
\ In segment CODE, align 4, keep-with-next
68 void SysTick_SetReload(u32 Reload)
69 {
70 /* Check the parameters */
71 assert_param(IS_SYSTICK_RELOAD(Reload));
72
73 SysTick->LOAD = Reload;
\ SysTick_SetReload:
\ 00000000 0149 LDR.N R1,??SysTick_SetReload_0 ;; 0xffffffffe000e014
\ 00000002 0860 STR R0,[R1, #+0]
74 }
\ 00000004 7047 BX LR ;; return
\ 00000006 00BF Nop
\ ??SysTick_SetReload_0:
\ 00000008 14E000E0 DC32 0xffffffffe000e014
75
76 /*******************************************************************************
77 * Function Name : SysTick_CounterCmd
78 * Description : Enables or disables the SysTick counter.
79 * Input : - SysTick_Counter: new state of the SysTick counter.
80 * This parameter can be one of the following values:
81 * - SysTick_Counter_Disable: Disable counter
82 * - SysTick_Counter_Enable: Enable counter
83 * - SysTick_Counter_Clear: Clear counter value to 0
84 * Output : None
85 * Return : None
86 *******************************************************************************/
\ In segment CODE, align 4, keep-with-next
87 void SysTick_CounterCmd(u32 SysTick_Counter)
88 {
89 /* Check the parameters */
90 assert_param(IS_SYSTICK_COUNTER(SysTick_Counter));
91
92 if (SysTick_Counter == SysTick_Counter_Enable)
\ SysTick_CounterCmd:
\ 00000000 .... LDR.N R1,??DataTable5 ;; 0xffffffffe000e010
\ 00000002 0128 CMP R0,#+1
\ 00000004 04D1 BNE.N ??SysTick_CounterCmd_0
93 {
94 SysTick->CTRL |= SysTick_Counter_Enable;
\ 00000006 0868 LDR R0,[R1, #+0]
\ 00000008 50F00100 ORRS R0,R0,#0x1
\ 0000000C 0860 STR R0,[R1, #+0]
\ 0000000E 7047 BX LR
95 }
96 else if (SysTick_Counter == SysTick_Counter_Disable)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -