WS63 SDK 文档 7021f4f@fbb_ws63
ws63 和 ws63e 解决方案的 SDK 文档
载入中...
搜索中...
未找到
hal_gpio.h 文件参考
#include <stdint.h>
#include <stdbool.h>
#include "common_def.h"
#include "errcode.h"
#include "platform_core.h"
#include "gpio_porting.h"
hal_gpio.h 的引用(Include)关系图:
此图展示该文件直接或间接的被哪些文件引用了:

浏览源代码.

结构体

struct  gpio_context_t
 GPIO模块配置信息。 更多...
 
struct  hal_gpio_context_t
 GPIO HAL层模块配置信息。 更多...
 

宏定义

#define HAL_GPIO_MAX_CHANNEL   GPIO_CHANNELS_NUM
 
#define HAL_GPIO_CHANNEL_OFFSET   32
 
#define PIN_MAX_NUMBER   PIN_NONE
 GPIO最大PIN管脚数量。
 
#define GPIO_INTERRUPT_RISING_EDGE   0x00000001
 GPIO中断类型。
 
#define GPIO_INTERRUPT_FALLING_EDGE   0x00000002
 
#define GPIO_INTERRUPT_LOW   0x00000004
 
#define GPIO_INTERRUPT_HIGH   0x00000008
 
#define GPIO_INTERRUPT_DEDGE   (GPIO_INTERRUPT_RISING_EDGE | GPIO_INTERRUPT_FALLING_EDGE)
 

类型定义

typedef enum gpio_direction gpio_direction_t
 GPIO输入输出方向。
 
typedef enum gpio_level gpio_level_t
 GPIO高低电平。
 
typedef enum gpio_intr_type gpio_intr_type_t
 GPIO INTTYPE.
 
typedef enum gpio_polarity gpio_polarity_t
 GPIO POLARITY.
 
typedef enum gpio_dedge gpio_dedge_t
 GPIO双边沿使能或去使能。
 
typedef enum hal_gpio_ctrl_id hal_gpio_ctrl_id_t
 GPIO控制ID定义。
 
typedef void(* gpio_callback_t) (pin_t pin, uintptr_t param)
 GPIO回调的类型定义,它返回发起中断的PIN的编号。
 
typedef errcode_t(* hal_gpio_ctrl_t) (pin_t pin, hal_gpio_ctrl_id_t id)
 HAL层GPIO控制接口。
 

枚举

enum  gpio_direction { GPIO_DIRECTION_INPUT , GPIO_DIRECTION_OUTPUT }
 GPIO输入输出方向。 更多...
 
enum  gpio_level { GPIO_LEVEL_LOW , GPIO_LEVEL_HIGH }
 GPIO高低电平。 更多...
 
enum  gpio_intr_type { GPIO_LVL_LEVEL_SENSITIVE , GPIO_LVL_EDGE_SENSITIVE }
 GPIO INTTYPE. 更多...
 
enum  gpio_polarity { GPIO_ACTIVE_LOW , GPIO_ACTIVE_HIGH }
 GPIO POLARITY. 更多...
 
enum  gpio_dedge { GPIO_DEDGE_DISABLED , GPIO_DEDGE_ENABLED }
 GPIO双边沿使能或去使能。 更多...
 
enum  hal_gpio_ctrl_id {
  GPIO_CTRL_TOGGLE = 0 , GPIO_CTRL_ENABLE_INTERRUPT , GPIO_CTRL_DISABLE_INTERRUPT , GPIO_CTRL_CLEAR_INTERRUPT ,
  GPIO_CTRL_SUSPEND , GPIO_CTRL_RESUME , GPIO_CTRL_MAX
}
 GPIO控制ID定义。 更多...
 

函数

void hal_gpio_init (void)
 HAL层GPIO的初始化接口。
 
void hal_gpio_deinit (void)
 HAL层GPIO去初始化接口。
 
errcode_t hal_gpio_setdir (pin_t pin, gpio_direction_t dir)
 HAL层GPIO设置输入输出方向接口。
 
gpio_direction_t hal_gpio_getdir (pin_t pin)
 HAL层GPIO获取输入输出方向接口。
 
errcode_t hal_gpio_ctrl (pin_t pin, hal_gpio_ctrl_id_t id)
 HAL层GPIO控制接口。
 
errcode_t hal_gpio_output (pin_t pin, gpio_level_t level)
 HAL层GPIO的output接口 。
 
gpio_level_t hal_gpio_get_outval (pin_t pin)
 HAL层获取GPIO的output值接口 。
 
gpio_level_t hal_gpio_get_inval (pin_t pin)
 HAL层GPIO的input接口 。
 
errcode_t hal_gpio_register (pin_t pin, uint32_t trigger, gpio_callback_t callback, bool need_callback)
 HAL层GPIO的注册中断接口。
 
errcode_t hal_gpio_unregister (pin_t pin)
 HAL层GPIO的注册中断接口。
 
uintptr_t hal_gpio_base_addrs_get (uint32_t i)
 获取指定Channel GPIO寄存器的基地址。
 
void hal_gpio_regs_init (void)
 初始化GPIO,设置寄存器的基地址。