⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 stm32f10x_rtc.lst

📁 编译环境是 iar EWARM ,STM32 下的UCOSII
💻 LST
📖 第 1 页 / 共 3 页
字号:
##############################################################################
#                                                                            #
# IAR ARM ANSI C/C++ Compiler V4.42A/W32 KICKSTART     26/Dec/2008  18:22:07 #
# 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_r #
#                       tc.c                                                 #
#    Command line    =  F:\PROJECT\STM32_UCOSII\CPU\ST\STM32\src\stm32f10x_r #
#                       tc.c -lCN F:\PROJECT\STM32_UCOSII\EvalBoards\ST\STM3 #
#                       210E-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_rtc.lst            #
#    Object file     =  F:\PROJECT\STM32_UCOSII\EvalBoards\ST\STM3210E-EVAL\ #
#                       IAR\OS-Probe\Flash\Obj\stm32f10x_rtc.r79             #
#                                                                            #
#                                                                            #
##############################################################################

F:\PROJECT\STM32_UCOSII\CPU\ST\STM32\src\stm32f10x_rtc.c
      1          /******************** (C) COPYRIGHT 2008 STMicroelectronics ********************
      2          * File Name          : stm32f10x_rtc.c
      3          * Author             : MCD Application Team
      4          * Version            : V2.0
      5          * Date               : 05/23/2008
      6          * Description        : This file provides all the RTC 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_rtc.h"
     20          
     21          /* Private typedef -----------------------------------------------------------*/
     22          /* Private define ------------------------------------------------------------*/
     23          #define CRL_CNF_Set      ((u16)0x0010)      /* Configuration Flag Enable Mask */
     24          #define CRL_CNF_Reset    ((u16)0xFFEF)      /* Configuration Flag Disable Mask */
     25          #define RTC_LSB_Mask     ((u32)0x0000FFFF)  /* RTC LSB Mask */
     26          #define PRLH_MSB_Mask    ((u32)0x000F0000)  /* RTC Prescaler MSB Mask */
     27          
     28          /* Private macro -------------------------------------------------------------*/
     29          /* Private variables ---------------------------------------------------------*/
     30          /* Private function prototypes -----------------------------------------------*/
     31          /* Private functions ---------------------------------------------------------*/
     32          
     33          /*******************************************************************************
     34          * Function Name  : RTC_ITConfig
     35          * Description    : Enables or disables the specified RTC interrupts.
     36          * Input          : - RTC_IT: specifies the RTC interrupts sources to be enabled
     37          *                    or disabled.
     38          *                    This parameter can be any combination of the following values:
     39          *                       - RTC_IT_OW: Overflow interrupt
     40          *                       - RTC_IT_ALR: Alarm interrupt
     41          *                       - RTC_IT_SEC: Second interrupt
     42          *                  - NewState: new state of the specified RTC interrupts.
     43          *                    This parameter can be: ENABLE or DISABLE.
     44          * Output         : None
     45          * Return         : None
     46          *******************************************************************************/

   \                                 In segment CODE, align 4, keep-with-next
     47          void RTC_ITConfig(u16 RTC_IT, FunctionalState NewState)
     48          {
     49            /* Check the parameters */
     50            assert_param(IS_RTC_IT(RTC_IT));  
     51            assert_param(IS_FUNCTIONAL_STATE(NewState));
     52            
     53            if (NewState != DISABLE)
   \                     RTC_ITConfig:
   \   00000000   ....               LDR.N    R2,??DataTable10  ;; 0x40002800
   \   00000002   0029               CMP      R1,#+0
   \   00000004   1188               LDRH     R1,[R2, #+0]
   \   00000006   02D0               BEQ.N    ??RTC_ITConfig_0
     54            {
     55              RTC->CRH |= RTC_IT;
   \   00000008   0843               ORRS     R0,R0,R1
   \   0000000A   1080               STRH     R0,[R2, #+0]
   \   0000000C   7047               BX       LR
     56            }
     57            else
     58            {
     59              RTC->CRH &= (u16)~RTC_IT;
   \                     ??RTC_ITConfig_0:
   \   0000000E   8143               BICS     R1,R1,R0
   \   00000010   1180               STRH     R1,[R2, #+0]
     60            }
     61          }
   \   00000012   7047               BX       LR               ;; return
     62          
     63          /*******************************************************************************
     64          * Function Name  : RTC_EnterConfigMode
     65          * Description    : Enters the RTC configuration mode.
     66          * Input          : None
     67          * Output         : None
     68          * Return         : None
     69          *******************************************************************************/

   \                                 In segment CODE, align 4, keep-with-next
     70          void RTC_EnterConfigMode(void)
     71          {
     72            /* Set the CNF flag to enter in the Configuration Mode */
     73            RTC->CRL |= CRL_CNF_Set;
   \                     RTC_EnterConfigMode:
   \   00000000   ....               LDR.N    R0,??DataTable11  ;; 0x40002804
   \   00000002   0188               LDRH     R1,[R0, #+0]
   \   00000004   51F01001           ORRS     R1,R1,#0x10
   \   00000008   0180               STRH     R1,[R0, #+0]
     74          }
   \   0000000A   7047               BX       LR               ;; return
     75          
     76          /*******************************************************************************
     77          * Function Name  : RTC_ExitConfigMode
     78          * Description    : Exits from the RTC configuration mode.
     79          * Input          : None
     80          * Output         : None
     81          * Return         : None
     82          *******************************************************************************/

   \                                 In segment CODE, align 4, keep-with-next
     83          void RTC_ExitConfigMode(void)
     84          {
     85            /* Reset the CNF flag to exit from the Configuration Mode */
     86            RTC->CRL &= CRL_CNF_Reset;
   \                     RTC_ExitConfigMode:
   \   00000000   ....               LDR.N    R0,??DataTable11  ;; 0x40002804
   \   00000002   0188               LDRH     R1,[R0, #+0]
   \   00000004   014A               LDR.N    R2,??RTC_ExitConfigMode_0  ;; 0xffef
   \   00000006   0A40               ANDS     R2,R2,R1
   \   00000008   0280               STRH     R2,[R0, #+0]
     87          }
   \   0000000A   7047               BX       LR               ;; return
   \                     ??RTC_ExitConfigMode_0:
   \   0000000C   EFFF0000           DC32     0xffef
     88          
     89          /*******************************************************************************
     90          * Function Name  : RTC_GetCounter
     91          * Description    : Gets the RTC counter value.
     92          * Input          : None
     93          * Output         : None
     94          * Return         : RTC counter value.
     95          *******************************************************************************/

   \                                 In segment CODE, align 4, keep-with-next
     96          u32 RTC_GetCounter(void)
     97          {
     98            u16 tmp = 0;
     99            tmp = RTC->CNTL;
   \                     RTC_GetCounter:
   \   00000000   0348               LDR.N    R0,??RTC_GetCounter_0  ;; 0x4000281c
   \   00000002   0088               LDRH     R0,[R0, #+0]
    100          
    101            return (((u32)RTC->CNTH << 16 ) | tmp) ;
   \   00000004   ....               LDR.N    R1,??DataTable4  ;; 0x40002818
   \   00000006   0988               LDRH     R1,[R1, #+0]
   \   00000008   0904               LSLS     R1,R1,#+16
   \   0000000A   0843               ORRS     R0,R0,R1
   \   0000000C   7047               BX       LR               ;; return
   \   0000000E   00BF               Nop      
   \                     ??RTC_GetCounter_0:
   \   00000010   1C280040           DC32     0x4000281c
    102          }
    103          
    104          /*******************************************************************************

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -