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

📄 stm32f10x_exti.lst

📁 完成数据的采集
💻 LST
📖 第 1 页 / 共 2 页
字号:
###############################################################################
#                                                                             #
#                                                       30/Jul/2008  14:37:39 #
# IAR ARM ANSI C/C++ Compiler V5.11.0.20622/W32 EVALUATION                    #
# Copyright 1999-2007 IAR Systems. All rights reserved.                       #
#                                                                             #
#    Cpu mode     =  thumb                                                    #
#    Endian       =  little                                                   #
#    Source file  =  E:\library\src\stm32f10x_exti.c                          #
#    Command line =  E:\library\src\stm32f10x_exti.c -D EMB_FLASH -lCN        #
#                    E:\ELE\yten\pro\Debug\List\ -lb                          #
#                    E:\ELE\yten\pro\Debug\List\ -o                           #
#                    E:\ELE\yten\pro\Debug\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 "C:\Program Files\IAR        #
#                    Systems\Embedded Workbench 5.0                           #
#                    Evaluation\ARM\INC\DLib_Config_Normal.h" -I              #
#                    E:\ELE\yten\pro\ -I E:\ELE\yten\pro\..\LIBRARY\INC\ -I   #
#                    "C:\Program Files\IAR Systems\Embedded Workbench 5.0     #
#                    Evaluation\ARM\INC\" --section .text=.XML -On            #
#    List file    =  E:\ELE\yten\pro\Debug\List\stm32f10x_exti.lst            #
#    Object file  =  E:\ELE\yten\pro\Debug\Obj\stm32f10x_exti.o               #
#                                                                             #
#                                                                             #
###############################################################################

E:\library\src\stm32f10x_exti.c
      1          /******************** (C) COPYRIGHT 2007 STMicroelectronics ********************
      2          * File Name          : stm32f10x_exti.c
      3          * Author             : MCD Application Team
      4          * Version            : V1.0
      5          * Date               : 10/08/2007
      6          * Description        : This file provides all the EXTI firmware functions.
      7          ********************************************************************************
      8          * THE PRESENT SOFTWARE 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          *******************************************************************************/
     15          
     16          /* Includes ------------------------------------------------------------------*/
     17          #include "stm32f10x_exti.h"
     18          
     19          /* Private typedef -----------------------------------------------------------*/
     20          /* Private define ------------------------------------------------------------*/
     21          #define EXTI_LineNone    ((u32)0x00000)  /* No interrupt selected */
     22          
     23          /* Private macro -------------------------------------------------------------*/
     24          /* Private variables ---------------------------------------------------------*/
     25          /* Private function prototypes -----------------------------------------------*/
     26          /* Private functions ---------------------------------------------------------*/
     27          
     28          /*******************************************************************************
     29          * Function Name  : EXTI_DeInit
     30          * Description    : Deinitializes the EXTI peripheral registers to their default 
     31          *                  reset values.
     32          * Input          : None
     33          * Output         : None
     34          * Return         : None
     35          *******************************************************************************/

   \                                 In section .XML, align 4, keep-with-next
     36          void EXTI_DeInit(void)
     37          {
     38            EXTI->IMR = 0x00000000;
   \                     EXTI_DeInit:
   \   00000000   ....               LDR.N    R0,??DataTable20  ;; 0x40010400
   \   00000002   0021               MOVS     R1,#+0
   \   00000004   0160               STR      R1,[R0, #+0]
     39            EXTI->EMR = 0x00000000;
   \   00000006   0648               LDR.N    R0,??EXTI_DeInit_0  ;; 0x40010404
   \   00000008   0021               MOVS     R1,#+0
   \   0000000A   0160               STR      R1,[R0, #+0]
     40            EXTI->RTSR = 0x00000000; 
   \   0000000C   ....               LDR.N    R0,??DataTable11  ;; 0x40010408
   \   0000000E   0021               MOVS     R1,#+0
   \   00000010   0160               STR      R1,[R0, #+0]
     41            EXTI->FTSR = 0x00000000; 
   \   00000012   ....               LDR.N    R0,??DataTable13  ;; 0x4001040c
   \   00000014   0021               MOVS     R1,#+0
   \   00000016   0160               STR      R1,[R0, #+0]
     42            EXTI->PR = 0x0007FFFF;
   \   00000018   ....               LDR.N    R0,??DataTable22  ;; 0x40010414
   \   0000001A   0249               LDR.N    R1,??EXTI_DeInit_0+0x4  ;; 0x7ffff
   \   0000001C   0160               STR      R1,[R0, #+0]
     43          }
   \   0000001E   7047               BX       LR               ;; return
   \                     ??EXTI_DeInit_0:
   \   00000020   04040140           DC32     0x40010404
   \   00000024   FFFF0700           DC32     0x7ffff
     44          
     45          /*******************************************************************************
     46          * Function Name  : EXTI_Init
     47          * Description    : Initializes the EXTI peripheral according to the specified
     48          *                  parameters in the EXTI_InitStruct.
     49          * Input          : - EXTI_InitStruct: pointer to a EXTI_InitTypeDef structure
     50          *                    that contains the configuration information for the EXTI
     51          *                    peripheral.
     52          * Output         : None
     53          * Return         : None
     54          *******************************************************************************/

   \                                 In section .XML, align 4, keep-with-next
     55          void EXTI_Init(EXTI_InitTypeDef* EXTI_InitStruct)
     56          {
     57            /* Check the parameters */
     58            assert_param(IS_EXTI_MODE(EXTI_InitStruct->EXTI_Mode));
     59            assert_param(IS_EXTI_TRIGGER(EXTI_InitStruct->EXTI_Trigger));
     60            assert_param(IS_EXTI_LINE(EXTI_InitStruct->EXTI_Line));  
     61            assert_param(IS_FUNCTIONAL_STATE(EXTI_InitStruct->EXTI_LineCmd));
     62               
     63            if (EXTI_InitStruct->EXTI_LineCmd != DISABLE)
   \                     EXTI_Init:
   \   00000000   8179               LDRB     R1,[R0, #+6]
   \   00000002   0029               CMP      R1,#+0
   \   00000004   2CD0               BEQ.N    ??EXTI_Init_0
     64            {
     65              *(u32 *)(EXTI_BASE + (u32)EXTI_InitStruct->EXTI_Mode)|= EXTI_InitStruct->EXTI_Line;
   \   00000006   0179               LDRB     R1,[R0, #+4]
   \   00000008   ....               LDR.N    R2,??DataTable20  ;; 0x40010400
   \   0000000A   8958               LDR      R1,[R1, R2]
   \   0000000C   0268               LDR      R2,[R0, #+0]
   \   0000000E   0A43               ORRS     R2,R2,R1
   \   00000010   0179               LDRB     R1,[R0, #+4]
   \   00000012   ....               LDR.N    R3,??DataTable20  ;; 0x40010400
   \   00000014   CA50               STR      R2,[R1, R3]
     66          
     67              /* Clear Rising Falling edge configuration */
     68              EXTI->RTSR &= ~EXTI_InitStruct->EXTI_Line;
   \   00000016   ....               LDR.N    R1,??DataTable11  ;; 0x40010408
   \   00000018   0968               LDR      R1,[R1, #+0]
   \   0000001A   0268               LDR      R2,[R0, #+0]
   \   0000001C   9143               BICS     R1,R1,R2
   \   0000001E   ....               LDR.N    R2,??DataTable11  ;; 0x40010408
   \   00000020   1160               STR      R1,[R2, #+0]
     69              EXTI->FTSR &= ~EXTI_InitStruct->EXTI_Line;
   \   00000022   ....               LDR.N    R1,??DataTable13  ;; 0x4001040c
   \   00000024   0968               LDR      R1,[R1, #+0]
   \   00000026   0268               LDR      R2,[R0, #+0]
   \   00000028   9143               BICS     R1,R1,R2
   \   0000002A   ....               LDR.N    R2,??DataTable13  ;; 0x4001040c
   \   0000002C   1160               STR      R1,[R2, #+0]
     70              
     71              /* Select the trigger for the selected external interrupts */
     72              if (EXTI_InitStruct->EXTI_Trigger == EXTI_Trigger_Rising_Falling)
   \   0000002E   4179               LDRB     R1,[R0, #+5]
   \   00000030   1029               CMP      R1,#+16
   \   00000032   0CD1               BNE.N    ??EXTI_Init_1
     73              {
     74                /* Rising Falling edge */
     75                EXTI->RTSR |= EXTI_InitStruct->EXTI_Line;
   \   00000034   ....               LDR.N    R1,??DataTable11  ;; 0x40010408
   \   00000036   0968               LDR      R1,[R1, #+0]
   \   00000038   0268               LDR      R2,[R0, #+0]
   \   0000003A   0A43               ORRS     R2,R2,R1
   \   0000003C   ....               LDR.N    R1,??DataTable11  ;; 0x40010408
   \   0000003E   0A60               STR      R2,[R1, #+0]
     76                EXTI->FTSR |= EXTI_InitStruct->EXTI_Line;
   \   00000040   ....               LDR.N    R1,??DataTable13  ;; 0x4001040c
   \   00000042   0968               LDR      R1,[R1, #+0]
   \   00000044   0268               LDR      R2,[R0, #+0]
   \   00000046   0A43               ORRS     R2,R2,R1
   \   00000048   ....               LDR.N    R1,??DataTable13  ;; 0x4001040c
   \   0000004A   0A60               STR      R2,[R1, #+0]
   \   0000004C   10E0               B.N      ??EXTI_Init_2
     77              }
     78              else
     79              {
     80                *(u32 *)(EXTI_BASE + (u32)EXTI_InitStruct->EXTI_Trigger)|= EXTI_InitStruct->EXTI_Line;
   \                     ??EXTI_Init_1:
   \   0000004E   4179               LDRB     R1,[R0, #+5]
   \   00000050   ....               LDR.N    R2,??DataTable20  ;; 0x40010400
   \   00000052   8958               LDR      R1,[R1, R2]
   \   00000054   0268               LDR      R2,[R0, #+0]
   \   00000056   0A43               ORRS     R2,R2,R1
   \   00000058   4179               LDRB     R1,[R0, #+5]
   \   0000005A   ....               LDR.N    R3,??DataTable20  ;; 0x40010400
   \   0000005C   CA50               STR      R2,[R1, R3]
   \   0000005E   07E0               B.N      ??EXTI_Init_2
     81              }
     82            }
     83            else
     84            {
     85              /* Disable the selected external lines */
     86              *(u32 *)(EXTI_BASE + (u32)EXTI_InitStruct->EXTI_Mode)&= ~EXTI_InitStruct->EXTI_Line;
   \                     ??EXTI_Init_0:
   \   00000060   0179               LDRB     R1,[R0, #+4]
   \   00000062   ....               LDR.N    R2,??DataTable20  ;; 0x40010400
   \   00000064   8958               LDR      R1,[R1, R2]
   \   00000066   0268               LDR      R2,[R0, #+0]
   \   00000068   9143               BICS     R1,R1,R2
   \   0000006A   0279               LDRB     R2,[R0, #+4]
   \   0000006C   ....               LDR.N    R3,??DataTable20  ;; 0x40010400
   \   0000006E   D150               STR      R1,[R2, R3]
     87            }
     88          }
   \                     ??EXTI_Init_2:
   \   00000070   7047               BX       LR               ;; return
     89          
     90          /*******************************************************************************
     91          * Function Name  : EXTI_StructInit
     92          * Description    : Fills each EXTI_InitStruct member with its reset value.
     93          * Input          : - EXTI_InitStruct: pointer to a EXTI_InitTypeDef structure
     94          *                    which will be initialized.
     95          * Output         : None
     96          * Return         : None
     97          *******************************************************************************/

   \                                 In section .XML, align 4, keep-with-next
     98          void EXTI_StructInit(EXTI_InitTypeDef* EXTI_InitStruct)
     99          {
    100            EXTI_InitStruct->EXTI_Line = EXTI_LineNone;
   \                     EXTI_StructInit:
   \   00000000   0021               MOVS     R1,#+0
   \   00000002   0160               STR      R1,[R0, #+0]
    101            EXTI_InitStruct->EXTI_Mode = EXTI_Mode_Interrupt;
   \   00000004   0021               MOVS     R1,#+0
   \   00000006   0171               STRB     R1,[R0, #+4]
    102            EXTI_InitStruct->EXTI_Trigger = EXTI_Trigger_Falling;
   \   00000008   0C21               MOVS     R1,#+12
   \   0000000A   4171               STRB     R1,[R0, #+5]
    103            EXTI_InitStruct->EXTI_LineCmd = DISABLE;
   \   0000000C   0021               MOVS     R1,#+0
   \   0000000E   8171               STRB     R1,[R0, #+6]
    104          }
   \   00000010   7047               BX       LR               ;; return
    105          
    106          /*******************************************************************************
    107          * Function Name  : EXTI_GenerateSWInterrupt

⌨️ 快捷键说明

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