Browse Source

添加两个gpio辅助方法

transmit_disinfection
zhaohe 11 months ago
parent
commit
bed34d48c7
  1. 9
      basic/zgpio.c
  2. 5
      basic/zgpio.h

9
basic/zgpio.c

@ -1,6 +1,7 @@
#include "zgpio.h"
#include "zlog.h"
#include "zdelay.h"
#include "zlog.h"
static bool gpio_enable_clock(GPIO_TypeDef *m_gpio) {
#ifdef GPIOA
@ -308,6 +309,12 @@ void zaf_gpio_write(zaf_gpio_t *gpio, bool level) {
}
void zaf_gpio_toggle(zaf_gpio_t *gpio) { HAL_GPIO_TogglePin(gpio->gpio, gpio->pinoff); }
void zaf_enable_clock(Pin_t pin) {
GPIO_TypeDef *gpio = _chip_get_gpio(pin);
gpio_enable_clock(gpio);
}
GPIO_TypeDef *chip_get_gpio(Pin_t pin) { return _chip_get_gpio(pin); }
int chip_get_pinoff(Pin_t pin) { return _chip_get_pinoff(pin); }
void EXTI0_IRQHandler() { HAL_GPIO_EXTI_IRQHandler(GPIO_PIN_0); }
void EXTI1_IRQHandler() { HAL_GPIO_EXTI_IRQHandler(GPIO_PIN_1); }

5
basic/zgpio.h

@ -1,7 +1,6 @@
#pragma once
#include "zbase.h"
typedef enum {
kxs_gpio_nopull, //
kxs_gpio_pullup, //
@ -34,3 +33,7 @@ void zaf_gpio_init_as_output(zaf_gpio_t *gpio, Pin_t pin,zaf_gpio_mode_t mode, b
bool zaf_gpio_read(zaf_gpio_t *gpio);
void zaf_gpio_write(zaf_gpio_t *gpio, bool level);
void zaf_gpio_toggle(zaf_gpio_t *gpio);
void zaf_enable_clock(Pin_t pin);
GPIO_TypeDef *chip_get_gpio(Pin_t pin);
int chip_get_pinoff(Pin_t pin);
Loading…
Cancel
Save