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

📄 stm32f10x_nvic.s79

📁 用于监视I2C通信总线
💻 S79
📖 第 1 页 / 共 5 页
字号:
//////////////////////////////////////////////////////////////////////////////
//                                                                           /
// IAR ARM ANSI C/C++ Compiler V4.42A/W32 EVALUATION   10/Nov/2008  11:44:03 /
// Copyright 1999-2005 IAR Systems. All rights reserved.                     /
//                                                                           /
//    Cpu mode        =  thumb                                               /
//    Endian          =  little                                              /
//    Stack alignment =  4                                                   /
//    Source file     =  D:\资料\ST\ST\usb\FWLib\library\src\stm32f10x_nvic. /
//                       c                                                   /
//    Command line    =  D:\资料\ST\ST\usb\FWLib\library\src\stm32f10x_nvic. /
//                       c -D VECT_TAB_FLASH -D USE_STM3210E_EVAL -lA        /
//                       D:\资料\ST\ST\usb\USBLib\demos\Virtual_COM_Port\pro /
//                       ject\EWARMv4\STM3210E-EVAL\List\ -o                 /
//                       D:\资料\ST\ST\usb\USBLib\demos\Virtual_COM_Port\pro /
//                       ject\EWARMv4\STM3210E-EVAL\Obj\ -z9 --debug         /
//                       --cpu_mode thumb --endian little --cpu cortex-M3    /
//                       --stack_align 4 --require_prototypes --fpu None     /
//                       --dlib_config "C:\Program Files\IAR                 /
//                       Systems\Embedded Workbench 4.0                      /
//                       Evaluation\arm\LIB\dl7mptnnl8f.h" -I                /
//                       D:\资料\ST\ST\usb\USBLib\demos\Virtual_COM_Port\pro /
//                       ject\EWARMv4\..\..\include\ -I                      /
//                       D:\资料\ST\ST\usb\USBLib\demos\Virtual_COM_Port\pro /
//                       ject\EWARMv4\..\..\..\..\library\inc\ -I            /
//                       D:\资料\ST\ST\usb\USBLib\demos\Virtual_COM_Port\pro /
//                       ject\EWARMv4\..\..\..\..\..\FWLib\library\inc\ -I   /
//                       "C:\Program Files\IAR Systems\Embedded Workbench    /
//                       4.0 Evaluation\arm\INC\" --inline_threshold=2       /
//    List file       =  D:\资料\ST\ST\usb\USBLib\demos\Virtual_COM_Port\pro /
//                       ject\EWARMv4\STM3210E-EVAL\List\stm32f10x_nvic.s79  /
//                                                                           /
//                                                                           /
//////////////////////////////////////////////////////////////////////////////

        NAME stm32f10x_nvic

        RTMODEL "StackAlign4", "USED"
        RTMODEL "__cpu_mode", "__pcs__thumb"
        RTMODEL "__data_model", "absolute"
        RTMODEL "__endian", "little"
        RTMODEL "__rt_version", "6"

        RSEG CSTACK:DATA:NOROOT(2)

??DataTable0 EQU 0
??DataTable1 EQU 0
??DataTable10 EQU 0
??DataTable11 EQU 0
??DataTable12 EQU 0
??DataTable13 EQU 0
??DataTable15 EQU 0
??DataTable18 EQU 0
??DataTable2 EQU 0
??DataTable20 EQU 0
??DataTable22 EQU 0
??DataTable23 EQU 0
??DataTable25 EQU 0
??DataTable28 EQU 0
??DataTable29 EQU 0
??DataTable3 EQU 0
??DataTable4 EQU 0
??DataTable5 EQU 0
??DataTable6 EQU 0
??DataTable7 EQU 0
??DataTable8 EQU 0
??DataTable9 EQU 0
        MULTWEAK ??__BASEPRICONFIG??rT
        MULTWEAK ??__GetBASEPRI??rT
        MULTWEAK ??__RESETFAULTMASK??rT
        MULTWEAK ??__RESETPRIMASK??rT
        MULTWEAK ??__SETFAULTMASK??rT
        MULTWEAK ??__SETPRIMASK??rT
        PUBLIC NVIC_BASEPRICONFIG
        FUNCTION NVIC_BASEPRICONFIG,0203H
        LOCFRAME CSTACK, 4, STACK
        PUBLIC NVIC_ClearIRQChannelPendingBit
        FUNCTION NVIC_ClearIRQChannelPendingBit,0203H
        PUBLIC NVIC_ClearSystemHandlerPendingBit
        FUNCTION NVIC_ClearSystemHandlerPendingBit,0203H
        PUBLIC NVIC_DeInit
        FUNCTION NVIC_DeInit,0203H
        PUBLIC NVIC_GenerateCoreReset
        FUNCTION NVIC_GenerateCoreReset,0203H
        PUBLIC NVIC_GenerateSystemReset
        FUNCTION NVIC_GenerateSystemReset,0203H
        PUBLIC NVIC_GetBASEPRI
        FUNCTION NVIC_GetBASEPRI,0203H
        LOCFRAME CSTACK, 4, STACK
        PUBLIC NVIC_GetCPUID
        FUNCTION NVIC_GetCPUID,0203H
        PUBLIC NVIC_GetCurrentActiveHandler
        FUNCTION NVIC_GetCurrentActiveHandler,0203H
        PUBLIC NVIC_GetCurrentPendingIRQChannel
        FUNCTION NVIC_GetCurrentPendingIRQChannel,0203H
        PUBLIC NVIC_GetFaultAddress
        FUNCTION NVIC_GetFaultAddress,0203H
        PUBLIC NVIC_GetFaultHandlerSources
        FUNCTION NVIC_GetFaultHandlerSources,0203H
        PUBLIC NVIC_GetIRQChannelActiveBitStatus
        FUNCTION NVIC_GetIRQChannelActiveBitStatus,0203H
        PUBLIC NVIC_GetIRQChannelPendingBitStatus
        FUNCTION NVIC_GetIRQChannelPendingBitStatus,0203H
        PUBLIC NVIC_GetSystemHandlerActiveBitStatus
        FUNCTION NVIC_GetSystemHandlerActiveBitStatus,0203H
        PUBLIC NVIC_GetSystemHandlerPendingBitStatus
        FUNCTION NVIC_GetSystemHandlerPendingBitStatus,0203H
        PUBLIC NVIC_Init
        FUNCTION NVIC_Init,0203H
        LOCFRAME CSTACK, 20, STACK
        PUBLIC NVIC_PriorityGroupConfig
        FUNCTION NVIC_PriorityGroupConfig,0203H
        PUBLIC NVIC_RESETFAULTMASK
        FUNCTION NVIC_RESETFAULTMASK,0203H
        LOCFRAME CSTACK, 4, STACK
        PUBLIC NVIC_RESETPRIMASK
        FUNCTION NVIC_RESETPRIMASK,0203H
        LOCFRAME CSTACK, 4, STACK
        PUBLIC NVIC_SCBDeInit
        FUNCTION NVIC_SCBDeInit,0203H
        PUBLIC NVIC_SETFAULTMASK
        FUNCTION NVIC_SETFAULTMASK,0203H
        LOCFRAME CSTACK, 4, STACK
        PUBLIC NVIC_SETPRIMASK
        FUNCTION NVIC_SETPRIMASK,0203H
        LOCFRAME CSTACK, 4, STACK
        PUBLIC NVIC_SetIRQChannelPendingBit
        FUNCTION NVIC_SetIRQChannelPendingBit,0203H
        PUBLIC NVIC_SetSystemHandlerPendingBit
        FUNCTION NVIC_SetSystemHandlerPendingBit,0203H
        PUBLIC NVIC_SetVectorTable
        FUNCTION NVIC_SetVectorTable,0203H
        PUBLIC NVIC_StructInit
        FUNCTION NVIC_StructInit,0203H
        PUBLIC NVIC_SystemHandlerConfig
        FUNCTION NVIC_SystemHandlerConfig,0203H
        PUBLIC NVIC_SystemHandlerPriorityConfig
        FUNCTION NVIC_SystemHandlerPriorityConfig,0203H
        LOCFRAME CSTACK, 20, STACK
        PUBLIC NVIC_SystemLPConfig
        FUNCTION NVIC_SystemLPConfig,0203H
        
        CFI Names cfiNames0
        CFI StackFrame CFA R13 HUGEDATA
        CFI Resource R0:32, R1:32, R2:32, R3:32, R4:32, R5:32, R6:32, R7:32
        CFI Resource R8:32, R9:32, R10:32, R11:32, R12:32, R13:32, R14:32
        CFI VirtualResource ?RET:32
        CFI EndNames cfiNames0
        
        CFI Common cfiCommon0 Using cfiNames0
        CFI CodeAlign 2
        CFI DataAlign 4
        CFI ReturnAddress ?RET CODE
        CFI CFA R13+0
        CFI R0 Undefined
        CFI R1 Undefined
        CFI R2 Undefined
        CFI R3 Undefined
        CFI R4 SameValue
        CFI R5 SameValue
        CFI R6 SameValue
        CFI R7 SameValue
        CFI R8 SameValue
        CFI R9 SameValue
        CFI R10 SameValue
        CFI R11 SameValue
        CFI R12 Undefined
        CFI R14 Undefined
        CFI ?RET R14
        CFI EndCommon cfiCommon0
        
__BASEPRICONFIG     SYMBOL "__BASEPRICONFIG"
__GetBASEPRI        SYMBOL "__GetBASEPRI"
__RESETFAULTMASK    SYMBOL "__RESETFAULTMASK"
__RESETPRIMASK      SYMBOL "__RESETPRIMASK"
__SETFAULTMASK      SYMBOL "__SETFAULTMASK"
__SETPRIMASK        SYMBOL "__SETPRIMASK"
??__BASEPRICONFIG??rT SYMBOL "??rT", __BASEPRICONFIG
??__GetBASEPRI??rT  SYMBOL "??rT", __GetBASEPRI
??__RESETFAULTMASK??rT SYMBOL "??rT", __RESETFAULTMASK
??__RESETPRIMASK??rT SYMBOL "??rT", __RESETPRIMASK
??__SETFAULTMASK??rT SYMBOL "??rT", __SETFAULTMASK
??__SETPRIMASK??rT  SYMBOL "??rT", __SETPRIMASK

        EXTERN __BASEPRICONFIG
        FUNCTION __BASEPRICONFIG,0202H
        EXTERN __GetBASEPRI
        FUNCTION __GetBASEPRI,0202H
        EXTERN __RESETFAULTMASK
        FUNCTION __RESETFAULTMASK,0202H
        EXTERN __RESETPRIMASK
        FUNCTION __RESETPRIMASK,0202H
        EXTERN __SETFAULTMASK
        FUNCTION __SETFAULTMASK,0202H
        EXTERN __SETPRIMASK
        FUNCTION __SETPRIMASK,0202H

// D:\资料\ST\ST\usb\FWLib\library\src\stm32f10x_nvic.c
//    1 /******************** (C) COPYRIGHT 2008 STMicroelectronics ********************
//    2 * File Name          : stm32f10x_nvic.c
//    3 * Author             : MCD Application Team
//    4 * Version            : V2.0.1
//    5 * Date               : 06/13/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 FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING
//   13 * INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS.
//   14 *******************************************************************************/
//   15 
//   16 /* Includes ------------------------------------------------------------------*/
//   17 #include "stm32f10x_nvic.h"
//   18 
//   19 /* Private typedef -----------------------------------------------------------*/
//   20 /* Private define ------------------------------------------------------------*/
//   21 #define AIRCR_VECTKEY_MASK    ((u32)0x05FA0000)
//   22 
//   23 /* Private macro -------------------------------------------------------------*/
//   24 /* Private variables ---------------------------------------------------------*/
//   25 /* Private function prototypes -----------------------------------------------*/
//   26 /* Private functions ---------------------------------------------------------*/
//   27 
//   28 /*******************************************************************************
//   29 * Function Name  : NVIC_DeInit
//   30 * Description    : Deinitializes the NVIC peripheral registers to their default
//   31 *                  reset values.
//   32 * Input          : None
//   33 * Output         : None
//   34 * Return         : None
//   35 *******************************************************************************/

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock0 Using cfiCommon0
        CFI Function NVIC_DeInit
        THUMB
//   36 void NVIC_DeInit(void)
//   37 {
//   38   u32 index = 0;
//   39   
//   40   NVIC->ICER[0] = 0xFFFFFFFF;
NVIC_DeInit:
        LDR.N    R1,??DataTable17  ;; 0xffffffffe000e180
//   41   NVIC->ICER[1] = 0x0FFFFFFF;
        LDR.N    R2,??NVIC_DeInit_0  ;; 0xffffffffe000e184
        MOVS     R0,#-1
        STR      R0,[R1, #+0]
        LSRS     R1,R0,#+4
        STR      R1,[R2, #+0]
//   42   NVIC->ICPR[0] = 0xFFFFFFFF;
        LDR.N    R2,??DataTable19  ;; 0xffffffffe000e280
        STR      R0,[R2, #+0]
//   43   NVIC->ICPR[1] = 0x0FFFFFFF;
        LDR.N    R0,??NVIC_DeInit_0+0x4  ;; 0xffffffffe000e284
//   44   
//   45   for(index = 0; index < 0x0F; index++)
        LDR.N    R2,??DataTable16  ;; 0xffffffffe000e400
        STR      R1,[R0, #+0]
        MOVS     R0,#+0
        MOVS     R1,#+0
//   46   {
//   47      NVIC->IPR[index] = 0x00000000;
??NVIC_DeInit_1:
        STR      R0,[R2, R1, LSL #+2]
//   48   } 
        ADDS     R1,R1,#+1
        CMP      R1,#+15
        BCC.N    ??NVIC_DeInit_1
//   49 }
        BX       LR               ;; return
        DATA
??NVIC_DeInit_0:
        DC32     0xffffffffe000e184
        DC32     0xffffffffe000e284
        CFI EndBlock cfiBlock0
//   50 
//   51 /*******************************************************************************
//   52 * Function Name  : NVIC_SCBDeInit
//   53 * Description    : Deinitializes the SCB peripheral registers to their default 
//   54 *                  reset values.
//   55 * Input          : None
//   56 * Output         : None
//   57 * Return         : None
//   58 *******************************************************************************/

        RSEG CODE:CODE:NOROOT(2)
        CFI Block cfiBlock1 Using cfiCommon0
        CFI Function NVIC_SCBDeInit
        THUMB
//   59 void NVIC_SCBDeInit(void)
//   60 {
//   61   u32 index = 0x00;
//   62   
//   63   SCB->ICSR = 0x0A000000;
NVIC_SCBDeInit:
        LDR.N    R0,??DataTable30  ;; 0xffffffffe000ed04
//   64   SCB->VTOR = 0x00000000;
//   65   SCB->AIRCR = AIRCR_VECTKEY_MASK;
        LDR.N    R2,??DataTable14  ;; 0x5fa0000
        MOVS     R1,#+167772160
        STR      R1,[R0, #+0]
        LDR.N    R1,??DataTable21  ;; 0xffffffffe000ed08
        MOVS     R0,#+0
        STR      R0,[R1, #+0]
        LDR.N    R1,??DataTable26  ;; 0xffffffffe000ed0c
        STR      R2,[R1, #+0]
//   66   SCB->SCR = 0x00000000;
        LDR.N    R1,??DataTable24  ;; 0xffffffffe000ed10
//   67   SCB->CCR = 0x00000000;
//   68   for(index = 0; index < 0x03; index++)
        LDR.N    R2,??DataTable27  ;; 0xffffffffe000ed18
        STR      R0,[R1, #+0]
        LDR.N    R1,??NVIC_SCBDeInit_0  ;; 0xffffffffe000ed14
        STR      R0,[R1, #+0]
        MOVS     R1,#+0
//   69   {
//   70      SCB->SHPR[index] = 0;
??NVIC_SCBDeInit_1:
        STR      R0,[R2, R1, LSL #+2]
//   71   }
        ADDS     R1,R1,#+1
        CMP      R1,#+3
        BCC.N    ??NVIC_SCBDeInit_1
//   72   SCB->SHCSR = 0x00000000;
        LDR.N    R1,??DataTable31  ;; 0xffffffffe000ed24
        STR      R0,[R1, #+0]
//   73   SCB->CFSR = 0xFFFFFFFF;
        LDR.N    R1,??DataTable33  ;; 0xffffffffe000ed28
        MOVS     R0,#-1
        STR      R0,[R1, #+0]
//   74   SCB->HFSR = 0xFFFFFFFF;
        LDR.N    R1,??DataTable32  ;; 0xffffffffe000ed2c
        STR      R0,[R1, #+0]
//   75   SCB->DFSR = 0xFFFFFFFF;

⌨️ 快捷键说明

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