91 lines
2.4 KiB
C
91 lines
2.4 KiB
C
|
/**
|
|||
|
******************************************************************************
|
|||
|
* @file bsp_exti.c
|
|||
|
* @author fire
|
|||
|
* @version V1.0
|
|||
|
* @date 2019-xx-xx
|
|||
|
* @brief I/O<EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>Ӧ<EFBFBD><EFBFBD>bsp
|
|||
|
******************************************************************************
|
|||
|
* @attention
|
|||
|
*
|
|||
|
* ʵ<EFBFBD><EFBFBD>ƽ̨:Ұ<EFBFBD><EFBFBD> STM32H750 <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
* <EFBFBD><EFBFBD>̳ :http://www.firebbs.cn
|
|||
|
* <EFBFBD>Ա<EFBFBD> :http://firestm32.taobao.com
|
|||
|
*
|
|||
|
******************************************************************************
|
|||
|
*/
|
|||
|
|
|||
|
#include "./key/bsp_exti.h"
|
|||
|
#include "./led/bsp_led.h"
|
|||
|
#include "./usart/bsp_debug_usart.h"
|
|||
|
|
|||
|
/**
|
|||
|
* @brief <EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƕ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>жϿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>NVIC
|
|||
|
* @param <EFBFBD><EFBFBD>
|
|||
|
* @retval <EFBFBD><EFBFBD>
|
|||
|
*/
|
|||
|
static void NVIC_Configuration(void)
|
|||
|
{
|
|||
|
/* <20><><EFBFBD><EFBFBD>NVICΪ<43><CEAA><EFBFBD>ȼ<EFBFBD><C8BC><EFBFBD>1 */
|
|||
|
HAL_NVIC_SetPriorityGrouping(NVIC_PRIORITYGROUP_1);
|
|||
|
/*<2A><><EFBFBD><EFBFBD>1<EFBFBD>ж<EFBFBD><D0B6><EFBFBD><EFBFBD>ã<EFBFBD><C3A3><EFBFBD>ռ<EFBFBD><D5BC><EFBFBD>ȼ<EFBFBD>0<EFBFBD><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȼ<EFBFBD>Ϊ0*/
|
|||
|
HAL_NVIC_SetPriority(KEY1_INT_EXTI_IRQ, 1 ,1);
|
|||
|
HAL_NVIC_EnableIRQ(KEY1_INT_EXTI_IRQ);
|
|||
|
/*<2A><><EFBFBD><EFBFBD>2<EFBFBD>ж<EFBFBD><D0B6><EFBFBD><EFBFBD>ã<EFBFBD><C3A3><EFBFBD>ռ<EFBFBD><D5BC><EFBFBD>ȼ<EFBFBD>0<EFBFBD><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȼ<EFBFBD>Ϊ0*/
|
|||
|
HAL_NVIC_SetPriority(KEY2_INT_EXTI_IRQ, 1 ,1);
|
|||
|
HAL_NVIC_EnableIRQ(KEY2_INT_EXTI_IRQ);
|
|||
|
}
|
|||
|
|
|||
|
/**
|
|||
|
* @brief <EFBFBD><EFBFBD><EFBFBD><EFBFBD> KEY1<EFBFBD><EFBFBD>KEY2Ϊ<EFBFBD>жϣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȼ<EFBFBD>
|
|||
|
* @param <EFBFBD><EFBFBD>
|
|||
|
* @retval <EFBFBD><EFBFBD>
|
|||
|
*/
|
|||
|
void EXTI_Key_Config(void)
|
|||
|
{
|
|||
|
GPIO_InitTypeDef GPIO_InitStructure;
|
|||
|
|
|||
|
/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>GPIO<49>ڵ<EFBFBD>ʱ<EFBFBD><CAB1>*/
|
|||
|
KEY1_INT_GPIO_CLK_ENABLE();
|
|||
|
KEY2_INT_GPIO_CLK_ENABLE();
|
|||
|
|
|||
|
/* <20><><EFBFBD><EFBFBD> NVIC */
|
|||
|
NVIC_Configuration();
|
|||
|
/*ѡ<><EFBFBD><F1B0B4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
|
|||
|
GPIO_InitStructure.Pin = KEY1_INT_GPIO_PIN;
|
|||
|
/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>ģʽ*/
|
|||
|
GPIO_InitStructure.Mode = GPIO_MODE_IT_RISING;
|
|||
|
/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ų<EFBFBD><C5B2><EFBFBD><EFBFBD><EFBFBD>Ҳ<EFBFBD><D2B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
|
|||
|
GPIO_InitStructure.Pull = GPIO_NOPULL;
|
|||
|
/*ʹ<><CAB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ľṹ<C4BD><E1B9B9><EFBFBD><EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
|
|||
|
HAL_GPIO_Init(KEY1_INT_GPIO_PORT, &GPIO_InitStructure);
|
|||
|
HAL_SYSCFG_AnalogSwitchConfig(SYSCFG_SWITCH_PA0, SYSCFG_SWITCH_PA0_CLOSE);
|
|||
|
|
|||
|
/*ѡ<><EFBFBD>2<EFBFBD><32><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
|
|||
|
GPIO_InitStructure.Pin = KEY2_INT_GPIO_PIN;
|
|||
|
/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>ģʽ*/
|
|||
|
GPIO_InitStructure.Mode = GPIO_MODE_IT_RISING;
|
|||
|
/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ų<EFBFBD><C5B2><EFBFBD><EFBFBD><EFBFBD>Ҳ<EFBFBD><D2B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
|
|||
|
GPIO_InitStructure.Pull = GPIO_NOPULL;
|
|||
|
/*ʹ<><CAB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ľṹ<C4BD><E1B9B9><EFBFBD><EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
|
|||
|
HAL_GPIO_Init(KEY2_INT_GPIO_PORT, &GPIO_InitStructure);
|
|||
|
}
|
|||
|
|
|||
|
/**
|
|||
|
* @brief EXTI line detection callbacks.
|
|||
|
* @param GPIO_Pin: Specifies the pins connected EXTI line
|
|||
|
* @retval None
|
|||
|
*/
|
|||
|
void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin)
|
|||
|
{
|
|||
|
LED_BLUE;
|
|||
|
if(GPIO_Pin==KEY1_INT_GPIO_PIN)
|
|||
|
printf("\r\n KEY1 <20><><EFBFBD><EFBFBD><EFBFBD>жϻ<D0B6><CFBB><EFBFBD> \r\n");
|
|||
|
else if(GPIO_Pin==KEY2_INT_GPIO_PIN)
|
|||
|
printf("\r\n KEY2 <20><><EFBFBD><EFBFBD><EFBFBD>жϻ<D0B6><CFBB><EFBFBD> \r\n");
|
|||
|
else
|
|||
|
{}
|
|||
|
}
|
|||
|
|
|||
|
/*********************************************END OF FILE**********************/
|