diff options
| author | Bernard Xiong <[email protected]> | 2018-02-09 17:21:29 +0800 |
|---|---|---|
| committer | GitHub <[email protected]> | 2018-02-09 17:21:29 +0800 |
| commit | a30a52d78d32f54199340465d3fd33bbd6a25963 (patch) | |
| tree | ff2ee82bab6105747e703953436f9d3b26834cd7 | |
| parent | 40fc0fa50d83edddf0395b7f2db32f7e8e5b20d0 (diff) | |
| parent | 3ea5cd0bdbe882bb63925302210cd0e4f2d328b6 (diff) | |
Merge pull request #1219 from uestczyh222/master
[Bsp]增强F10x_HAL的GPIO中断逻辑
| -rw-r--r-- | bsp/stm32f10x-HAL/drivers/drv_gpio.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/bsp/stm32f10x-HAL/drivers/drv_gpio.c b/bsp/stm32f10x-HAL/drivers/drv_gpio.c index e0701e663b..a61f5ab2ab 100644 --- a/bsp/stm32f10x-HAL/drivers/drv_gpio.c +++ b/bsp/stm32f10x-HAL/drivers/drv_gpio.c @@ -772,18 +772,20 @@ rt_err_t stm32_pin_irq_enable(struct rt_device *device, rt_base_t pin, index->rcc(); /* Configure GPIO_InitStructure */ GPIO_InitStruct.Pin = index->pin; - GPIO_InitStruct.Pull = GPIO_NOPULL; GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_HIGH; switch (pin_irq_hdr_tab[irqindex].mode) { case PIN_IRQ_MODE_RISING: GPIO_InitStruct.Mode = GPIO_MODE_IT_RISING; + GPIO_InitStruct.Pull = GPIO_PULLDOWN; break; case PIN_IRQ_MODE_FALLING: GPIO_InitStruct.Mode = GPIO_MODE_IT_FALLING; + GPIO_InitStruct.Pull = GPIO_PULLUP; break; case PIN_IRQ_MODE_RISING_FALLING: GPIO_InitStruct.Mode = GPIO_MODE_IT_RISING_FALLING; + GPIO_InitStruct.Pull = GPIO_NOPULL; break; } HAL_GPIO_Init(index->gpio, &GPIO_InitStruct); |
