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

📄 stm32f10x_nvic.lst

📁 编译环境是 iar EWARM ,STM32 下的UCOSII
💻 LST
📖 第 1 页 / 共 5 页
字号:
##############################################################################
#                                                                            #
# 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_n #
#                       vic.c                                                #
#    Command line    =  F:\PROJECT\STM32_UCOSII\CPU\ST\STM32\src\stm32f10x_n #
#                       vic.c -lCN F:\PROJECT\STM32_UCOSII\EvalBoards\ST\STM #
#                       3210E-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_nvic.lst           #
#    Object file     =  F:\PROJECT\STM32_UCOSII\EvalBoards\ST\STM3210E-EVAL\ #
#                       IAR\OS-Probe\Flash\Obj\stm32f10x_nvic.r79            #
#                                                                            #
#                                                                            #
##############################################################################

F:\PROJECT\STM32_UCOSII\CPU\ST\STM32\src\stm32f10x_nvic.c
      1          /******************** (C) COPYRIGHT 2008 STMicroelectronics ********************
      2          * File Name          : stm32f10x_nvic.c
      3          * Author             : MCD Application Team
      4          * Version            : V2.0
      5          * Date               : 05/23/2008
      6          * Description        : This file provides all the NVIC 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_nvic.h"
     20          
     21          /* Private typedef -----------------------------------------------------------*/
     22          /* Private define ------------------------------------------------------------*/
     23          #define AIRCR_VECTKEY_MASK    ((u32)0x05FA0000)
     24          
     25          /* Private macro -------------------------------------------------------------*/
     26          /* Private variables ---------------------------------------------------------*/
     27          /* Private function prototypes -----------------------------------------------*/
     28          /* Private functions ---------------------------------------------------------*/
     29          
     30          /*******************************************************************************
     31          * Function Name  : NVIC_DeInit
     32          * Description    : Deinitializes the NVIC peripheral registers to their default
     33          *                  reset values.
     34          * Input          : None
     35          * Output         : None
     36          * Return         : None
     37          *******************************************************************************/

   \                                 In segment CODE, align 4, keep-with-next
     38          void NVIC_DeInit(void)
     39          {
     40            u32 index = 0;
     41            
     42            NVIC->ICER[0] = 0xFFFFFFFF;
   \                     NVIC_DeInit:
   \   00000000   5FF0FF30           MOVS     R0,#-1
   \   00000004   ....               LDR.N    R1,??DataTable18  ;; 0xffffffffe000e180
   \   00000006   0860               STR      R0,[R1, #+0]
     43            NVIC->ICER[1] = 0x0FFFFFFF;
   \   00000008   0109               LSRS     R1,R0,#+4
   \   0000000A   084A               LDR.N    R2,??NVIC_DeInit_0  ;; 0xffffffffe000e184
   \   0000000C   1160               STR      R1,[R2, #+0]
     44            NVIC->ICPR[0] = 0xFFFFFFFF;
   \   0000000E   ....               LDR.N    R2,??DataTable20  ;; 0xffffffffe000e280
   \   00000010   1060               STR      R0,[R2, #+0]
     45            NVIC->ICPR[1] = 0x0FFFFFFF;
   \   00000012   0748               LDR.N    R0,??NVIC_DeInit_0+0x4  ;; 0xffffffffe000e284
   \   00000014   0160               STR      R1,[R0, #+0]
     46            
     47            for(index = 0; index < 0x0F; index++)
   \   00000016   0020               MOVS     R0,#+0
   \   00000018   0100               MOVS     R1,R0
   \   0000001A   ....               LDR.N    R2,??DataTable17  ;; 0xffffffffe000e400
   \   0000001C   02E0               B.N      ??NVIC_DeInit_1
     48            {
     49               NVIC->IPR[index] = 0x00000000;
   \                     ??NVIC_DeInit_2:
   \   0000001E   42F82100           STR      R0,[R2, R1, LSL #+2]
     50            } 
   \   00000022   491C               ADDS     R1,R1,#+1
   \                     ??NVIC_DeInit_1:
   \   00000024   0F29               CMP      R1,#+15
   \   00000026   FAD3               BCC.N    ??NVIC_DeInit_2
     51          }
   \   00000028   7047               BX       LR               ;; return
   \   0000002A   00BF               Nop      
   \                     ??NVIC_DeInit_0:
   \   0000002C   84E100E0           DC32     0xffffffffe000e184
   \   00000030   84E200E0           DC32     0xffffffffe000e284
     52          
     53          /*******************************************************************************
     54          * Function Name  : NVIC_SCBDeInit
     55          * Description    : Deinitializes the SCB peripheral registers to their default 
     56          *                  reset values.
     57          * Input          : None
     58          * Output         : None
     59          * Return         : None
     60          *******************************************************************************/

   \                                 In segment CODE, align 4, keep-with-next
     61          void NVIC_SCBDeInit(void)
     62          {
     63            u32 index = 0x00;
     64            
     65            SCB->ICSR = 0x0A000000;
   \                     NVIC_SCBDeInit:
   \   00000000   ....               LDR.N    R0,??DataTable31  ;; 0xffffffffe000ed04
   \   00000002   5FF02061           MOVS     R1,#+167772160
   \   00000006   0160               STR      R1,[R0, #+0]
     66            SCB->VTOR = 0x00000000;
   \   00000008   0020               MOVS     R0,#+0
   \   0000000A   ....               LDR.N    R1,??DataTable22  ;; 0xffffffffe000ed08
   \   0000000C   0860               STR      R0,[R1, #+0]
     67            SCB->AIRCR = AIRCR_VECTKEY_MASK;
   \   0000000E   ....               LDR.N    R1,??DataTable27  ;; 0xffffffffe000ed0c
   \   00000010   ....               LDR.N    R2,??DataTable14  ;; 0x5fa0000
   \   00000012   0A60               STR      R2,[R1, #+0]
     68            SCB->SCR = 0x00000000;
   \   00000014   ....               LDR.N    R1,??DataTable25  ;; 0xffffffffe000ed10
   \   00000016   0860               STR      R0,[R1, #+0]
     69            SCB->CCR = 0x00000000;
   \   00000018   0A49               LDR.N    R1,??NVIC_SCBDeInit_0  ;; 0xffffffffe000ed14
   \   0000001A   0860               STR      R0,[R1, #+0]
     70            for(index = 0; index < 0x03; index++)
   \   0000001C   0100               MOVS     R1,R0
   \   0000001E   ....               LDR.N    R2,??DataTable28  ;; 0xffffffffe000ed18
   \   00000020   02E0               B.N      ??NVIC_SCBDeInit_1
     71            {
     72               SCB->SHPR[index] = 0;
   \                     ??NVIC_SCBDeInit_2:
   \   00000022   42F82100           STR      R0,[R2, R1, LSL #+2]
     73            }
   \   00000026   491C               ADDS     R1,R1,#+1
   \                     ??NVIC_SCBDeInit_1:
   \   00000028   0329               CMP      R1,#+3
   \   0000002A   FAD3               BCC.N    ??NVIC_SCBDeInit_2
     74            SCB->SHCSR = 0x00000000;
   \   0000002C   ....               LDR.N    R1,??DataTable32  ;; 0xffffffffe000ed24
   \   0000002E   0860               STR      R0,[R1, #+0]
     75            SCB->CFSR = 0xFFFFFFFF;
   \   00000030   5FF0FF30           MOVS     R0,#-1
   \   00000034   ....               LDR.N    R1,??DataTable34  ;; 0xffffffffe000ed28
   \   00000036   0860               STR      R0,[R1, #+0]
     76            SCB->HFSR = 0xFFFFFFFF;
   \   00000038   ....               LDR.N    R1,??DataTable33  ;; 0xffffffffe000ed2c
   \   0000003A   0860               STR      R0,[R1, #+0]
     77            SCB->DFSR = 0xFFFFFFFF;
   \   0000003C   ....               LDR.N    R1,??DataTable35  ;; 0xffffffffe000ed30
   \   0000003E   0860               STR      R0,[R1, #+0]
     78          }
   \   00000040   7047               BX       LR               ;; return
   \   00000042   00BF               Nop      
   \                     ??NVIC_SCBDeInit_0:
   \   00000044   14ED00E0           DC32     0xffffffffe000ed14
     79          
     80          /*******************************************************************************
     81          * Function Name  : NVIC_PriorityGroupConfig
     82          * Description    : Configures the priority grouping: pre-emption priority
     83          *                  and subpriority.
     84          * Input          : - NVIC_PriorityGroup: specifies the priority grouping bits
     85          *                    length. This parameter can be one of the following values:
     86          *                       - NVIC_PriorityGroup_0: 0 bits for pre-emption priority
     87          *                         4 bits for subpriority
     88          *                       - NVIC_PriorityGroup_1: 1 bits for pre-emption priority
     89          *                         3 bits for subpriority
     90          *                       - NVIC_PriorityGroup_2: 2 bits for pre-emption priority
     91          *                         2 bits for subpriority
     92          *                       - NVIC_PriorityGroup_3: 3 bits for pre-emption priority
     93          *                         1 bits for subpriority
     94          *                       - NVIC_PriorityGroup_4: 4 bits for pre-emption priority
     95          *                         0 bits for subpriority
     96          * Output         : None
     97          * Return         : None
     98          *******************************************************************************/

⌨️ 快捷键说明

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