新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > stm32 外部PB8中斷

        stm32 外部PB8中斷

        作者: 時間:2018-07-24 來源:網絡 收藏

        一、初始化該引腳時鐘

        本文引用地址:http://www.104case.com/article/201807/383652.htm

        RCC_APB2PeriphClockCmd( RCC_APB2Periph_GPIOB ,ENABLE);

        二、初始化該引腳為外部中斷

        void GPIO_Config_Init(void)

        {

        GPIO_InitStructure.GPIO_Pin = GPIO_Pin_8; //PB8 dog_wake

        GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN_FLOATING;

        GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;

        GPIO_Init(GPIOB, GPIO_InitStructure);

        }

        三、初始化外部中斷函數

        void EXTI_Config_Init(void)

        {

        EXTI_InitTypeDef EXTI_InitStructure;

        EXTI_ClearITPendingBit(EXTI_Line8);//

        GPIO_EXTILineConfig(GPIO_PortSourceGPIOB,GPIO_PinSource8);//

        EXTI_InitStructure.EXTI_Line=EXTI_Line8; //

        EXTI_InitStructure.EXTI_Mode = EXTI_Mode_Interrupt; //

        EXTI_InitStructure.EXTI_Trigger = EXTI_Trigger_Falling; //

        EXTI_InitStructure.EXTI_LineCmd = ENABLE;//

        EXTI_Init(EXTI_InitStructure);

        }

        四、初始化中斷向量表

        void NVIC_Config_Init(void)

        {

        NVIC_InitStructure.NVIC_IRQChannel =EXTI9_5_IRQn;

        NVIC_InitStructure.NVIC_IRQChannelSubPriority = 1;//ÇÀÕ¼ÓÅÏȼ¶

        NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 2;//×ÓÓÅÏȼ¶

        NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;//ʹÄÜÍⲿÖжÏͨµÀ

        NVIC_Init(NVIC_InitStructure);

        }

        五、編寫外部中斷函數

        void EXTI9_5_IRQHandler(void)

        {

        if (EXTI_GetITStatus(EXTI_Line8) != RESET)

        {

        EXTI_ClearITPendingBit(EXTI_Line8); //

        GPIO_SetBits(GPIOB,GPIO_Pin_9);

        delay_ms(10);

        GPIO_ResetBits(GPIOB,GPIO_Pin_9);

        }

        }

        • STM32單片機中文官網
        • STM32單片機官方開發工具
        • STM32單片機參考設計


        關鍵詞: stm32 外部PB8中斷

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 淮阳县| 独山县| 六安市| 马龙县| 武定县| 大兴区| 湖北省| 晋宁县| 永嘉县| 双柏县| 蓝田县| 大兴区| 黄大仙区| 南岸区| 龙州县| 宜州市| 炎陵县| 韶关市| 惠东县| 长岛县| 北安市| 芷江| 绿春县| 鲁山县| 昌平区| 都江堰市| 义乌市| 抚顺市| 潼南县| 辽源市| 溆浦县| 巨鹿县| 东阿县| 三原县| 金秀| 友谊县| 平潭县| 山丹县| 平山县| 九龙城区| 固安县|