色婷婷AⅤ一区二区三区|亚洲精品第一国产综合亚AV|久久精品官方网视频|日本28视频香蕉

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > STM32學習之--外部中斷

          STM32學習之--外部中斷

          作者: 時間:2016-11-26 來源:網(wǎng)絡 收藏
          misc.h中定義的NVIC_InitTypeDef類型的結構體:

          typedef struct
          {
          uint8_t NVIC_IRQChannel;//中斷向量

          本文引用地址:http://cafeforensic.com/article/201611/321815.htm

          uint8_t NVIC_IRQChannelPreemptionPriority;//中斷搶占優(yōu)先級

          uint8_t NVIC_IRQChannelSubPriority;//中斷向量優(yōu)先級

          FunctionalState NVIC_IRQChannelCmd;//中斷使能(ENABLE or DISABLE)
          } NVIC_InitTypeDef;

          中斷優(yōu)先級組stm32中用4位來決定。



          外部中斷初始化

          1.開啟時鐘(外部中斷要開啟GPIO時鐘和AFIO時鐘)

          2.配置嵌套向量中斷控制器NVIC

          <1>選擇中斷優(yōu)先級組NVIC_PriorityGroup_0~NVIC_PriorityGroup_4。

          調用函數(shù)NVIC_PriorityGroupConfig(uint32_t NVIC_PriorityGroup)完成優(yōu)先級組設定。

          <2>配置中斷源

          配置中斷向量NVIC_IRQChannel;

          配置中斷向量搶占優(yōu)先級NVIC_IRQChannelPreemptionPriority;

          配置中斷向量響應優(yōu)先級NVIC_IRQChannelSubPriority;

          使能中斷NVIC_IRQChannelCmd; (ENABLE or DISABLE)

          調用函數(shù) NVIC_Init(NVIC_InitTypeDef* NVIC_InitStruct)完成配置。

          3.GPIO口初始化

          GPIO口選擇GPIO_Pin

          外部中斷GPIO口為輸入模式,GPIO_Speed不用設置。

          GPIO輸入模式GPIO_Mode

          調用 GPIO_Init(GPIO_TypeDef* GPIOx, GPIO_InitTypeDef* GPIO_InitStruct) 完成配置。

          4.配置EXTI中斷線工作模式。

          調用GPIO_EXTILineConfig(uint8_t GPIO_PortSource, uint8_t GPIO_PinSource);設置EXTI輸入線。

          配置輸入線EXTI_Line;

          配置輸入線模式為中斷模式.EXTI_Mode = EXTI_Mode_Interrupt;

          配置中斷觸發(fā)方式.EXTI_Trigger = EXTI_Trigger_Falling;

          使能中斷.EXTI_LineCmd = ENABLE;

          調用函數(shù) EXTI_Init(EXTI_InitTypeDef* EXTI_InitStruct)。



          關鍵詞: STM32外部中

          評論


          技術專區(qū)

          關閉