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

📄 stm32f10x_bkp.lst

📁 stm32+ucos-ii
💻 LST
📖 第 1 页 / 共 2 页
字号:
###############################################################################
#                                                                             #
# IAR ANSI C/C++ Compiler V6.10.2.52244/W32 for ARM     07/Aug/2011  12:10:18 #
# Copyright 1999-2010 IAR Systems AB.                                         #
#                                                                             #
#    Cpu mode     =  thumb                                                    #
#    Endian       =  little                                                   #
#    Source file  =  F:\stm32\我的程序\Micrium\Software\EWARM\BSP\ST\STM32F10 #
#                    x_StdPeriph_Driver\src\stm32f10x_bkp.c                   #
#    Command line =  F:\stm32\我的程序\Micrium\Software\EWARM\BSP\ST\STM32F10 #
#                    x_StdPeriph_Driver\src\stm32f10x_bkp.c -D                #
#                    USE_STDPERIPH_DRIVER -D STM32F10X_CL -lCN                #
#                    F:\stm32\我的程序\Micrium\Software\EWARM\OS-II\Flash\Lis #
#                    t\ -o F:\stm32\我的程序\Micrium\Software\EWARM\OS-II\Fla #
#                    sh\Obj\ --no_cse --no_unroll --no_inline                 #
#                    --no_code_motion --no_tbaa --no_clustering               #
#                    --no_scheduling --debug --endian=little --cpu=Cortex-M3  #
#                    -e --fpu=None --dlib_config                              #
#                    D:\arm\INC\c\DLib_Config_Normal.h -I                     #
#                    F:\stm32\我的程序\Micrium\Software\EWARM\OS-II\APP\ -I   #
#                    F:\stm32\我的程序\Micrium\Software\EWARM\OS-II\..\BSP\   #
#                    -I F:\stm32\我的程序\Micrium\Software\EWARM\OS-II\..\BSP #
#                    \ST\CMSIS\CM3\CoreSupport\ -I                            #
#                    F:\stm32\我的程序\Micrium\Software\EWARM\OS-II\..\BSP\ST #
#                    \CMSIS\CM3\DeviceSupport\ST\STM32F10x\ -I                #
#                    F:\stm32\我的程序\Micrium\Software\EWARM\OS-II\..\BSP\ST #
#                    \STM32F10x_StdPeriph_Driver\inc\ -I                      #
#                    F:\stm32\我的程序\Micrium\Software\EWARM\OS-II\..\BSP\uC #
#                    OS-II\ -I F:\stm32\我的程序\Micrium\Software\EWARM\OS-II #
#                    \..\..\uCOS-II\Ports\ARM-Cortex-M3\Generic\IAR\ -I       #
#                    F:\stm32\我的程序\Micrium\Software\EWARM\OS-II\..\..\uCO #
#                    S-II\Source\ -I F:\stm32\我的程序\Micrium\Software\EWARM #
#                    \OS-II\..\..\uC-LIB\ -I F:\stm32\我的程序\Micrium\Softwa #
#                    re\EWARM\OS-II\..\..\uC-LIB\Ports\ARM-Cortex-M3\IAR\ -I  #
#                    F:\stm32\我的程序\Micrium\Software\EWARM\OS-II\..\..\uC- #
#                    CPU\ -I F:\stm32\我的程序\Micrium\Software\EWARM\OS-II\. #
#                    .\..\uC-CPU\ARM-Cortex-M3\IAR\ -On --use_c++_inline      #
#    List file    =  F:\stm32\我的程序\Micrium\Software\EWARM\OS-II\Flash\Lis #
#                    t\stm32f10x_bkp.lst                                      #
#    Object file  =  F:\stm32\我的程序\Micrium\Software\EWARM\OS-II\Flash\Obj #
#                    \stm32f10x_bkp.o                                         #
#                                                                             #
#                                                                             #
###############################################################################

F:\stm32\我的程序\Micrium\Software\EWARM\BSP\ST\STM32F10x_StdPeriph_Driver\src\stm32f10x_bkp.c
      1          /**
      2            ******************************************************************************
      3            * @file    stm32f10x_bkp.c
      4            * @author  MCD Application Team
      5            * @version V3.4.0
      6            * @date    10/15/2010
      7            * @brief   This file provides all the BKP firmware functions.
      8            ******************************************************************************
      9            * @copy
     10            *
     11            * THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS
     12            * WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE
     13            * TIME. AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY
     14            * DIRECT, INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING
     15            * FROM THE CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE
     16            * CODING INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS.
     17            *
     18            * <h2><center>&copy; COPYRIGHT 2010 STMicroelectronics</center></h2>
     19            */ 
     20          
     21          /* Includes ------------------------------------------------------------------*/
     22          #include "stm32f10x_bkp.h"
     23          #include "stm32f10x_rcc.h"
     24          
     25          /** @addtogroup STM32F10x_StdPeriph_Driver
     26            * @{
     27            */
     28          
     29          /** @defgroup BKP 
     30            * @brief BKP driver modules
     31            * @{
     32            */
     33          
     34          /** @defgroup BKP_Private_TypesDefinitions
     35            * @{
     36            */
     37          
     38          /**
     39            * @}
     40            */
     41          
     42          /** @defgroup BKP_Private_Defines
     43            * @{
     44            */
     45          
     46          /* ------------ BKP registers bit address in the alias region --------------- */
     47          #define BKP_OFFSET        (BKP_BASE - PERIPH_BASE)
     48          
     49          /* --- CR Register ----*/
     50          
     51          /* Alias word address of TPAL bit */
     52          #define CR_OFFSET         (BKP_OFFSET + 0x30)
     53          #define TPAL_BitNumber    0x01
     54          #define CR_TPAL_BB        (PERIPH_BB_BASE + (CR_OFFSET * 32) + (TPAL_BitNumber * 4))
     55          
     56          /* Alias word address of TPE bit */
     57          #define TPE_BitNumber     0x00
     58          #define CR_TPE_BB         (PERIPH_BB_BASE + (CR_OFFSET * 32) + (TPE_BitNumber * 4))
     59          
     60          /* --- CSR Register ---*/
     61          
     62          /* Alias word address of TPIE bit */
     63          #define CSR_OFFSET        (BKP_OFFSET + 0x34)
     64          #define TPIE_BitNumber    0x02
     65          #define CSR_TPIE_BB       (PERIPH_BB_BASE + (CSR_OFFSET * 32) + (TPIE_BitNumber * 4))
     66          
     67          /* Alias word address of TIF bit */
     68          #define TIF_BitNumber     0x09
     69          #define CSR_TIF_BB        (PERIPH_BB_BASE + (CSR_OFFSET * 32) + (TIF_BitNumber * 4))
     70          
     71          /* Alias word address of TEF bit */
     72          #define TEF_BitNumber     0x08
     73          #define CSR_TEF_BB        (PERIPH_BB_BASE + (CSR_OFFSET * 32) + (TEF_BitNumber * 4))
     74          
     75          /* ---------------------- BKP registers bit mask ------------------------ */
     76          
     77          /* RTCCR register bit mask */
     78          #define RTCCR_CAL_MASK    ((uint16_t)0xFF80)
     79          #define RTCCR_MASK        ((uint16_t)0xFC7F)
     80          
     81          /**
     82            * @}
     83            */ 
     84          
     85          
     86          /** @defgroup BKP_Private_Macros
     87            * @{
     88            */
     89          
     90          /**
     91            * @}
     92            */
     93          
     94          /** @defgroup BKP_Private_Variables
     95            * @{
     96            */
     97          
     98          /**
     99            * @}
    100            */
    101          
    102          /** @defgroup BKP_Private_FunctionPrototypes
    103            * @{
    104            */
    105          
    106          /**
    107            * @}
    108            */
    109          
    110          /** @defgroup BKP_Private_Functions
    111            * @{
    112            */
    113          
    114          /**
    115            * @brief  Deinitializes the BKP peripheral registers to their default reset values.
    116            * @param  None
    117            * @retval None
    118            */

   \                                 In section .text, align 2, keep-with-next
    119          void BKP_DeInit(void)
    120          {
   \                     BKP_DeInit:
   \   00000000   80B5               PUSH     {R7,LR}
    121            RCC_BackupResetCmd(ENABLE);
   \   00000002   0120               MOVS     R0,#+1
   \   00000004   ........           BL       RCC_BackupResetCmd
    122            RCC_BackupResetCmd(DISABLE);
   \   00000008   0020               MOVS     R0,#+0
   \   0000000A   ........           BL       RCC_BackupResetCmd
    123          }
   \   0000000E   01BD               POP      {R0,PC}          ;; return
    124          
    125          /**
    126            * @brief  Configures the Tamper Pin active level.
    127            * @param  BKP_TamperPinLevel: specifies the Tamper Pin active level.
    128            *   This parameter can be one of the following values:
    129            *     @arg BKP_TamperPinLevel_High: Tamper pin active on high level
    130            *     @arg BKP_TamperPinLevel_Low: Tamper pin active on low level
    131            * @retval None
    132            */

   \                                 In section .text, align 2, keep-with-next
    133          void BKP_TamperPinLevelConfig(uint16_t BKP_TamperPinLevel)
    134          {
    135            /* Check the parameters */
    136            assert_param(IS_BKP_TAMPER_PIN_LEVEL(BKP_TamperPinLevel));
    137            *(__IO uint32_t *) CR_TPAL_BB = BKP_TamperPinLevel;
   \                     BKP_TamperPinLevelConfig:
   \   00000000   ....               LDR.N    R1,??DataTable10  ;; 0x420d8604
   \   00000002   80B2               UXTH     R0,R0            ;; ZeroExt  R0,R0,#+16,#+16
   \   00000004   0860               STR      R0,[R1, #+0]
    138          }
   \   00000006   7047               BX       LR               ;; return
    139          
    140          /**
    141            * @brief  Enables or disables the Tamper Pin activation.
    142            * @param  NewState: new state of the Tamper Pin activation.
    143            *   This parameter can be: ENABLE or DISABLE.
    144            * @retval None
    145            */

   \                                 In section .text, align 2, keep-with-next
    146          void BKP_TamperPinCmd(FunctionalState NewState)
    147          {
    148            /* Check the parameters */
    149            assert_param(IS_FUNCTIONAL_STATE(NewState));
    150            *(__IO uint32_t *) CR_TPE_BB = (uint32_t)NewState;
   \                     BKP_TamperPinCmd:
   \   00000000   ....               LDR.N    R1,??DataTable10_1  ;; 0x420d8600
   \   00000002   C0B2               UXTB     R0,R0            ;; ZeroExt  R0,R0,#+24,#+24
   \   00000004   0860               STR      R0,[R1, #+0]
    151          }
   \   00000006   7047               BX       LR               ;; return
    152          
    153          /**
    154            * @brief  Enables or disables the Tamper Pin Interrupt.
    155            * @param  NewState: new state of the Tamper Pin Interrupt.
    156            *   This parameter can be: ENABLE or DISABLE.
    157            * @retval None
    158            */

   \                                 In section .text, align 2, keep-with-next
    159          void BKP_ITConfig(FunctionalState NewState)
    160          {
    161            /* Check the parameters */
    162            assert_param(IS_FUNCTIONAL_STATE(NewState));
    163            *(__IO uint32_t *) CSR_TPIE_BB = (uint32_t)NewState;
   \                     BKP_ITConfig:
   \   00000000   ....               LDR.N    R1,??DataTable10_2  ;; 0x420d8688
   \   00000002   C0B2               UXTB     R0,R0            ;; ZeroExt  R0,R0,#+24,#+24
   \   00000004   0860               STR      R0,[R1, #+0]
    164          }
   \   00000006   7047               BX       LR               ;; return
    165          
    166          /**
    167            * @brief  Select the RTC output source to output on the Tamper pin.
    168            * @param  BKP_RTCOutputSource: specifies the RTC output source.
    169            *   This parameter can be one of the following values:
    170            *     @arg BKP_RTCOutputSource_None: no RTC output on the Tamper pin.
    171            *     @arg BKP_RTCOutputSource_CalibClock: output the RTC clock with frequency
    172            *                                          divided by 64 on the Tamper pin.
    173            *     @arg BKP_RTCOutputSource_Alarm: output the RTC Alarm pulse signal on
    174            *                                     the Tamper pin.
    175            *     @arg BKP_RTCOutputSource_Second: output the RTC Second pulse signal on
    176            *                                      the Tamper pin.  
    177            * @retval None
    178            */

   \                                 In section .text, align 2, keep-with-next
    179          void BKP_RTCOutputConfig(uint16_t BKP_RTCOutputSource)
    180          {
    181            uint16_t tmpreg = 0;
   \                     BKP_RTCOutputConfig:
   \   00000000   0021               MOVS     R1,#+0
    182            /* Check the parameters */
    183            assert_param(IS_BKP_RTC_OUTPUT_SOURCE(BKP_RTCOutputSource));
    184            tmpreg = BKP->RTCCR;
   \   00000002   ....               LDR.N    R2,??DataTable10_3  ;; 0x40006c2c
   \   00000004   1288               LDRH     R2,[R2, #+0]
   \   00000006   1100               MOVS     R1,R2
    185            /* Clear CCO, ASOE and ASOS bits */
    186            tmpreg &= RTCCR_MASK;
   \   00000008   4FF67F42           MOVW     R2,#+64639
   \   0000000C   1140               ANDS     R1,R2,R1
    187            
    188            /* Set CCO, ASOE and ASOS bits according to BKP_RTCOutputSource value */
    189            tmpreg |= BKP_RTCOutputSource;
   \   0000000E   0143               ORRS     R1,R0,R1
    190            /* Store the new value */
    191            BKP->RTCCR = tmpreg;
   \   00000010   ....               LDR.N    R2,??DataTable10_3  ;; 0x40006c2c
   \   00000012   1180               STRH     R1,[R2, #+0]
    192          }

⌨️ 快捷键说明

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