123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051 |
- #include "stm32f0xx_hal.h"
- #include "button.h"
- #include "led.h"
- #include "tim.h"
- #include "misc.h"
- //
- void button_init(void)
- {
- GPIO_InitTypeDef GPIO_InitStructure = {0};
- __HAL_RCC_GPIOB_CLK_ENABLE();
- GPIO_InitStructure.Mode = GPIO_MODE_IT_FALLING;
- GPIO_InitStructure.Pull = GPIO_PULLUP;
- GPIO_InitStructure.Pin = GPIO_PIN_1;
- HAL_GPIO_Init(GPIOB, &GPIO_InitStructure);
-
- HAL_NVIC_SetPriority(EXTI0_1_IRQn, 2, 0);
- HAL_NVIC_EnableIRQ(EXTI0_1_IRQn);
- }
- //
- void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin)
- {
- uint16_t tmp = 0;
-
- if (GPIO_Pin == GPIO_PIN_1)
- {
- tmp = get_pulse_len();
-
- led_signal_on();
- led_inf_on();
-
- tim_signal_start();
- tim_inf_set_time(tmp*10);
-
- //led_togle();
-
- }
- }
- //
- void EXTI0_1_IRQHandler(void)
- {
- HAL_GPIO_EXTI_IRQHandler(GPIO_PIN_1);
- }
|