![]() |
RUI3 (RAK Unified Interface 3) - RAK4631
|
Provide a hardware independent GPIO driver layer for API layer to use. More...
Go to the source code of this file.
Typedefs | |
typedef void(* | gpio_isr_func) (uint32_t irq_num) |
Enumerations | |
enum | gpio_dir_t { GPIO_DIR_IN = 0, GPIO_DIR_OUT = 1 } |
enum | gpio_pull_t { GPIO_PULL_DOWN = 0, GPIO_PULL_UP = 1, GPIO_PULL_NONE = 2, GPIO_PULL_ERROR = 3 } |
enum | gpio_logic_t { GPIO_LOGIC_LOW = 0, GPIO_LOGIC_HIGH = 1 } |
enum | gpio_intc_trigger_mode_t { GPIO_INTC_HIGH_LEVEL = 2, GPIO_INTC_RISING_EDGE = 3, GPIO_INTC_LOW_LEVEL = 4, GPIO_INTC_FALLING_EDGE = 5, GPIO_INTC_RISING_FALLING_EDGE = 6 } |
Functions | |
void | udrv_gpio_init (uint32_t pin, gpio_dir_t dir, gpio_pull_t pull, gpio_logic_t logic) |
Initialize a GPIO pin. More... | |
void | udrv_gpio_set_dir (uint32_t pin, gpio_dir_t dir) |
Set GPIO direction. More... | |
void | udrv_gpio_set_pull (uint32_t pin, gpio_pull_t pull) |
Setup GPIO input pull down or pull up or none. More... | |
void | udrv_gpio_set_logic (uint32_t pin, gpio_logic_t logic) |
Setup GPIO output logic. More... | |
gpio_logic_t | udrv_gpio_get_logic (uint32_t pin) |
Get GPIO logic status. More... | |
void | udrv_gpio_toggle_logic (uint32_t pin) |
Toggle GPIO output logic. More... | |
void | udrv_gpio_intc_trigger_mode (uint32_t pin, gpio_intc_trigger_mode_t mode) |
Setting gpio interrupt trigger mode. More... | |
int32_t | udrv_gpio_register_isr (uint32_t pin, gpio_isr_func handler) |
Setting an interrupt handler that interrupt occurs. More... | |
void | udrv_gpio_intc_clear (uint32_t pin) |
clear the interrupt trigger. More... | |
void | udrv_gpio_set_wakeup_enable (uint32_t pin) |
Enable GPIO wake up pmu. More... | |
void | udrv_gpio_set_wakeup_disable (uint32_t pin) |
Disable GPIO wake up pmu. More... | |
void | udrv_gpio_set_wakeup_disable_all (void) |
Disable all GPIO wake up pmu. More... | |
void | udrv_gpio_set_wakeup_mode (gpio_intc_trigger_mode_t mode) |
Set the wakeup trigger mode. More... | |
void | udrv_gpio_suspend () |
Suspend GPIO hardware before entering sleep mode. More... | |
void | udrv_gpio_resume () |
Resume GPIO hardware after leaving sleep mode. More... | |
void | udrv_gpio_handler_handler (void *pdata) |
Provide a hardware independent GPIO driver layer for API layer to use.
typedef void(* gpio_isr_func) (uint32_t irq_num) |
enum gpio_dir_t |
enum gpio_pull_t |
enum gpio_logic_t |
void udrv_gpio_init | ( | uint32_t | pin, |
gpio_dir_t | dir, | ||
gpio_pull_t | pull, | ||
gpio_logic_t | logic | ||
) |
Initialize a GPIO pin.
pin | GPIO pin number. |
dir | The GPIO direction(in or out). |
pull | GPIO pull up or down. |
logic | GPIO logic high or low. |
void udrv_gpio_set_dir | ( | uint32_t | pin, |
gpio_dir_t | dir | ||
) |
Set GPIO direction.
pin | GPIO pin number. |
dir | The GPIO direction(in or out). |
void udrv_gpio_set_pull | ( | uint32_t | pin, |
gpio_pull_t | pull | ||
) |
Setup GPIO input pull down or pull up or none.
pin | GPIO pin number. |
pull | GPIO pull up or down. |
void udrv_gpio_set_logic | ( | uint32_t | pin, |
gpio_logic_t | logic | ||
) |
Setup GPIO output logic.
pin | GPIO pin number. |
logic | GPIO logic high or low. |
gpio_logic_t udrv_gpio_get_logic | ( | uint32_t | pin | ) |
Get GPIO logic status.
pin | GPIO pin number. |
void udrv_gpio_toggle_logic | ( | uint32_t | pin | ) |
Toggle GPIO output logic.
pin | GPIO pin number. |
void udrv_gpio_intc_trigger_mode | ( | uint32_t | pin, |
gpio_intc_trigger_mode_t | mode | ||
) |
Setting gpio interrupt trigger mode.
pin | GPIO pin number. |
mode | gpio input interrupt trigger mode. |
int32_t udrv_gpio_register_isr | ( | uint32_t | pin, |
gpio_isr_func | handler | ||
) |
Setting an interrupt handler that interrupt occurs.
pin | GPIO pin number. |
handler | A pointer to an interrupt handler that interrupt occurs. |
void udrv_gpio_intc_clear | ( | uint32_t | pin | ) |
clear the interrupt trigger.
pin | GPIO pin number. |
void udrv_gpio_set_wakeup_enable | ( | uint32_t | pin | ) |
Enable GPIO wake up pmu.
pin | GPIO pin number. |
void udrv_gpio_set_wakeup_disable | ( | uint32_t | pin | ) |
Disable GPIO wake up pmu.
pin | GPIO pin number. |
void udrv_gpio_set_wakeup_disable_all | ( | void | ) |
Disable all GPIO wake up pmu.
void udrv_gpio_set_wakeup_mode | ( | gpio_intc_trigger_mode_t | mode | ) |
Set the wakeup trigger mode.
mode | Interrupt mode. |
void udrv_gpio_suspend | ( | ) |
Suspend GPIO hardware before entering sleep mode.
void udrv_gpio_resume | ( | ) |
Resume GPIO hardware after leaving sleep mode.
void udrv_gpio_handler_handler | ( | void * | pdata | ) |