版主
最后登录1970-1-1
在线时间 小时
注册时间2015-12-2
|
发表于 2017-7-27 09:17:35
|
显示全部楼层
IO中断不建议共用同一条中断线,IO怎么配置看这个例程《10-EXTI—外部中断》,初始化的时候已经明确是哪一个IO口的中断- void EXTI_Key_Config(void)
- {
- GPIO_InitTypeDef GPIO_InitStructure;
- /*开启按键GPIO口的时钟*/
- KEY1_INT_GPIO_CLK_ENABLE();
- KEY2_INT_GPIO_CLK_ENABLE();
- /* 选择按键1的引脚 */
- GPIO_InitStructure.Pin = KEY1_INT_GPIO_PIN;
- /* 设置引脚为输入模式 */
- GPIO_InitStructure.Mode = GPIO_MODE_IT_RISING;
- /* 设置引脚不上拉也不下拉 */
- GPIO_InitStructure.Pull = GPIO_NOPULL;
- /* 使用上面的结构体初始化按键 */
- HAL_GPIO_Init(KEY1_INT_GPIO_PORT, &GPIO_InitStructure);
- /* 配置 EXTI 中断源 到key1 引脚、配置中断优先级*/
- HAL_NVIC_SetPriority(KEY1_INT_EXTI_IRQ, 0, 0);
- /* 使能中断 */
- HAL_NVIC_EnableIRQ(KEY1_INT_EXTI_IRQ);
- /* 选择按键2的引脚 */
- GPIO_InitStructure.Pin = KEY2_INT_GPIO_PIN;
- /* 其他配置与上面相同 */
- HAL_GPIO_Init(KEY2_INT_GPIO_PORT, &GPIO_InitStructure);
- /* 配置 EXTI 中断源 到key1 引脚、配置中断优先级*/
- HAL_NVIC_SetPriority(KEY2_INT_EXTI_IRQ, 0, 0);
- /* 使能中断 */
- HAL_NVIC_EnableIRQ(KEY2_INT_EXTI_IRQ);
- }
复制代码
|
|