<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > STM32F107VCT6的外部中斷配置

          STM32F107VCT6的外部中斷配置

          作者: 時間:2016-11-10 來源:網(wǎng)絡 收藏
          存在的問題:如果將GPIO15管腳用于外部中斷功能,但中斷處理函數(shù)中默認找不到對應的中斷處理函數(shù)。
          main.c文件中

          int main(void)
          {
          SystemInit();

          __disable_irq();
          RCC_Configuration();
          EXTI_Configuration();
          __enable_irq();

          IWWDG_Configuration();

          while (1)
          {
          WDG_Func(); //每250ms喂狗一次
          }
          }

          本文引用地址:http://www.ex-cimer.com/article/201611/317519.htmhw_config硬件配置文件中

          void EXTI_Configuration(void)
          {
          EXTI_InitTypeDef EXTI_InitStructure;
          NVIC_InitTypeDef NVIC_InitStructure;
          GPIO_InitTypeDef GPIO_InitStructure;

          RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOD, ENABLE);

          GPIO_EXTILineConfig(GPIO_PortSourceGPIOD, GPIO_PinSource15);

          GPIO_InitStructure.GPIO_Pin = GPIO_Pin_15;
          GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN_FLOATING;//GPIO_Mode_IPU;//GPIO_Mode_IN_FLOATING
          GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
          GPIO_Init(GPIOD, &GPIO_InitStructure);

          EXTI_InitStructure.EXTI_Line = EXTI_Line15;
          EXTI_InitStructure.EXTI_Mode = EXTI_Mode_Interrupt;
          EXTI_InitStructure.EXTI_Trigger = EXTI_Trigger_Rising_Falling;
          EXTI_InitStructure.EXTI_LineCmd = ENABLE;
          EXTI_Init(&EXTI_InitStructure);

          NVIC_InitStructure.NVIC_IRQChannel = EXTI15_10_IRQn;
          NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0;
          NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0;
          NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;
          NVIC_Init(&NVIC_InitStructure);
          }

          startup_stm32f10x_cl.s文件中

          MODULE ?cstartup

          ;; Forward declaration of sections.
          SECTION CSTACK:DATA:NOROOT(3)

          SECTION .intvec:CODE:NOROOT(2)

          EXTERN __iar_program_start
          EXTERN SystemInit
          PUBLIC __vector_table

          DATA
          __vector_table
          DCD sfe(CSTACK)
          DCD Reset_Handler ; Reset Handler
          DCD NMI_Handler ; NMI Handler
          DCD HardFault_Handler ; Hard Fault Handler
          DCD MemManage_Handler ; MPU Fault Handler
          DCD BusFault_Handler ; Bus Fault Handler
          DCD UsageFault_Handler ; Usage Fault Handler
          DCD 0 ; Reserved
          DCD 0 ; Reserved
          DCD 0 ; Reserved
          DCD 0 ; Reserved
          DCD SVC_Handler ; SVCall Handler
          DCD DebugMon_Handler ; Debug Monitor Handler
          DCD 0 ; Reserved
          DCD PendSV_Handler ; PendSV Handler
          DCD SysTick_Handler ; SysTick Handler

          ; External Interrupts
          DCD WWDG_IRQHandler ; Window Watchdog
          DCD PVD_IRQHandler ; PVD through EXTI Line detect
          DCD TAMPER_IRQHandler ; Tamper
          DCD RTC_IRQHandler ; RTC
          DCD FLASH_IRQHandler ; Flash
          DCD RCC_IRQHandler ; RCC
          DCD EXTI0_IRQHandler ; EXTI Line 0
          DCD EXTI1_IRQHandler ; EXTI Line 1
          DCD EXTI2_IRQHandler ; EXTI Line 2
          DCD EXTI3_IRQHandler ; EXTI Line 3
          DCD EXTI4_IRQHandler ; EXTI Line 4
          DCD DMA1_Channel1_IRQHandler ; DMA1 Channel 1
          DCD DMA1_Channel2_IRQHandler ; DMA1 Channel 2
          DCD DMA1_Channel3_IRQHandler ; DMA1 Channel 3
          DCD DMA1_Channel4_IRQHandler ; DMA1 Channel 4
          DCD DMA1_Channel5_IRQHandler ; DMA1 Channel 5
          DCD DMA1_Channel6_IRQHandler ; DMA1 Channel 6
          DCD DMA1_Channel7_IRQHandler ; DMA1 Channel 7
          DCD ADC1_2_IRQHandler ; ADC1 and ADC2
          DCD CAN1_TX_IRQHandler ; CAN1 TX
          DCD CAN1_RX0_IRQHandler ; CAN1 RX0
          DCD CAN1_RX1_IRQHandler ; CAN1 RX1
          DCD CAN1_SCE_IRQHandler ; CAN1 SCE
          DCD EXTI9_5_IRQHandler ; EXTI Line 9..5
          DCD TIM1_BRK_IRQHandler ; TIM1 Break
          DCD TIM1_UP_IRQHandler ; TIM1 Update
          DCD TIM1_TRG_COM_IRQHandler ; TIM1 Trigger and Commutation
          DCD TIM1_CC_IRQHandler ; TIM1 Capture Compare
          DCD TIM2_IRQHandler ; TIM2
          DCD TIM3_IRQHandler ; TIM3
          DCD TIM4_IRQHandler ; TIM4
          DCD I2C1_EV_IRQHandler ; I2C1 Event
          DCD I2C1_ER_IRQHandler ; I2C1 Error
          DCD I2C2_EV_IRQHandler ; I2C2 Event
          DCD I2C2_ER_IRQHandler ; I2C1 Error
          DCD SPI1_IRQHandler ; SPI1
          DCD SPI2_IRQHandler ; SPI2
          DCD USART1_IRQHandler ; USART1
          DCD USART2_IRQHandler ; USART2
          DCD USART3_IRQHandler ; USART3
          DCD EXTI15_10_IRQHandler ; EXTI Line 15..10 將其拷貝到中斷處理函數(shù)中
          DCD RTCAlarm_IRQHandler ; RTC alarm through EXTI line
          DCD OTG_FS_WKUP_IRQHandler ; USB OTG FS Wakeup through EXTI line
          DCD 0 ; Reserved
          DCD 0 ; Reserved
          DCD 0 ; Reserved
          DCD 0 ; Reserved
          DCD 0 ; Reserved
          DCD 0 ; Reserved
          DCD 0 ; Reserved
          DCD TIM5_IRQHandler ; TIM5
          DCD SPI3_IRQHandler ; SPI3
          DCD UART4_IRQHandler ; UART4
          DCD UART5_IRQHandler ; UART5
          DCD TIM6_IRQHandler ; TIM6
          DCD TIM7_IRQHandler ; TIM7
          DCD DMA2_Channel1_IRQHandler ; DMA2 Channel1
          DCD DMA2_Channel2_IRQHandler ; DMA2 Channel2
          DCD DMA2_Channel3_IRQHandler ; DMA2 Channel3
          DCD DMA2_Channel4_IRQHandler ; DMA2 Channel4
          DCD DMA2_Channel5_IRQHandler ; DMA2 Channel5
          DCD ETH_IRQHandler ; Ethernet
          DCD ETH_WKUP_IRQHandler ; Ethernet Wakeup through EXTI line
          DCD CAN2_TX_IRQHandler ; CAN2 TX
          DCD CAN2_RX0_IRQHandler ; CAN2 RX0
          DCD CAN2_RX1_IRQHandler ; CAN2 RX1
          DCD CAN2_SCE_IRQHandler ; CAN2 SCE
          DCD OTG_FS_IRQHandler ; USB OTG FS

          stm32f10x_it.c中斷處理函數(shù)中

          void EXTI15_10_IRQHandler(void)
          {
          if (EXTI_GetITStatus(EXTI_Line15) != RESET)
          {
          REVERSE_LED(LED_GPIO, LED_PIN);
          EXTI_ClearITPendingBit(EXTI_Line15);
          }
          }




          評論


          技術專區(qū)

          關閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();