XFusion API v1.3.0
载入中...
搜索中...
未找到
xf_hal_gpio.h 文件参考

xf_hal 的 gpio(通用输入输出) 设备抽象。 更多...

xf_hal_gpio.h 的引用(Include)关系图:

浏览源代码.

结构体

struct  _xf_hal_gpio_irq_t
 中断回调结构体。 更多...
 
struct  _xf_hal_gpio_config_t
 gpio 配置结构体。用于对接 gpio 设置的参数。 更多...
 

宏定义

#define XF_HAL_GPIO_NUM_NONE   ((xf_gpio_num_t)-1)
 无效 gpio 序号定义。
 

类型定义

typedef uint32_t xf_gpio_num_t
 gpio 序号。
 
typedef void(* xf_hal_gpio_irq_cb_t) (xf_gpio_num_t gpio_num, bool level, void *user_data)
 gpio 中断回调函数原型。
 
typedef enum _xf_hal_gpio_intr_type_t xf_hal_gpio_intr_type_t
 gpio 的中断类型。
 
typedef enum _xf_hal_gpio_dir_t xf_hal_gpio_dir_t
 gpio 的方向。
 
typedef enum _xf_hal_gpio_pull_t xf_hal_gpio_pull_t
 gpio 的上下拉。
 
typedef struct _xf_hal_gpio_irq_t xf_hal_gpio_callback_t
 中断回调结构体。
 
typedef enum _xf_hal_gpio_cmd_t xf_hal_gpio_cmd_t
 gpio 命令枚举。用于对接 gpio 设置的命令。
 
typedef struct _xf_hal_gpio_config_t xf_hal_gpio_config_t
 gpio 配置结构体。用于对接 gpio 设置的参数。
 

枚举

enum  _xf_hal_gpio_intr_type_t {
  _XF_HAL_GPIO_INTR_BASE = 0 , XF_HAL_GPIO_INTR_TYPE_DISABLE = _XF_HAL_GPIO_INTR_BASE , XF_HAL_GPIO_INTR_TYPE_RISING , XF_HAL_GPIO_INTR_TYPE_FALLING ,
  XF_HAL_GPIO_INTR_TYPE_ANY , _XF_HAL_GPIO_INTR_TYPE_MAX
}
 gpio 的中断类型。 更多...
 
enum  _xf_hal_gpio_dir_t {
  _XF_HAL_GPIO_DIR_BASE = 0 , XF_HAL_GPIO_DIR_IN = _XF_HAL_GPIO_DIR_BASE , XF_HAL_GPIO_DIR_OUT , XF_HAL_GPIO_DIR_OUT_OD ,
  _XF_HAL_GPIO_DIR_MAX
}
 gpio 的方向。 更多...
 
enum  _xf_hal_gpio_pull_t {
  _XF_HAL_GPIO_PULL_BASE = 0 , XF_HAL_GPIO_PULL_NONE = _XF_HAL_GPIO_PULL_BASE , XF_HAL_GPIO_PULL_UP , XF_HAL_GPIO_PULL_DOWN ,
  _XF_HAL_GPIO_PULL_MAX
}
 gpio 的上下拉。 更多...
 
enum  _xf_hal_gpio_cmd_t {
  XF_HAL_GPIO_CMD_DEFAULT = 0x0 , XF_HAL_GPIO_CMD_DIRECTION = 0x1 << 0 , XF_HAL_GPIO_CMD_PULL = 0x1 << 1 , XF_HAL_GPIO_CMD_SPEED = 0x1 << 2 ,
  XF_HAL_GPIO_CMD_INTR_ENABLE = 0x1 << 3 , XF_HAL_GPIO_CMD_INTR_TYPE = 0x1 << 4 , XF_HAL_GPIO_CMD_INTR_CB = 0x1 << 5 , XF_HAL_GPIO_CMD_INTR_ISR = 0x1 << 6 ,
  XF_HAL_GPIO_CMD_ALL = 0x7FFFFFFF
}
 gpio 命令枚举。用于对接 gpio 设置的命令。 更多...
 

函数

xf_err_t xf_hal_gpio_init (xf_gpio_num_t gpio_num, xf_hal_gpio_dir_t direction)
 gpio 初始化函数。使用 gpio 之前必须要进行初始化。
 
xf_err_t xf_hal_gpio_deinit (xf_gpio_num_t gpio_num)
 gpio 反初始化。恢复到未初始化状态且回收相关资源。
 
xf_err_t xf_hal_gpio_set_direction (xf_gpio_num_t gpio_num, xf_hal_gpio_dir_t direction)
 gpio 设置方向。
 
xf_err_t xf_hal_gpio_set_pull (xf_gpio_num_t gpio_num, xf_hal_gpio_pull_t pull)
 gpio 设置上下拉模式。
 
xf_err_t xf_hal_gpio_set_speed (xf_gpio_num_t gpio_num, uint32_t speed)
 gpio 速度设置。
 
xf_err_t xf_hal_gpio_set_intr_cb (xf_gpio_num_t gpio_num, xf_hal_gpio_irq_cb_t callback, void *user_data)
 gpio 设置中断回调。
 
xf_err_t xf_hal_gpio_set_intr_isr (xf_gpio_num_t gpio_num, xf_hal_gpio_irq_cb_t callback, void *user_data)
 gpio 设置中断服务。
 
xf_err_t xf_hal_gpio_set_intr_type (xf_gpio_num_t gpio_num, xf_hal_gpio_intr_type_t intr_type)
 设置 gpio 中断类型。
 
xf_err_t xf_hal_gpio_set_intr_enable (xf_gpio_num_t gpio_num)
 设置 gpio 启用中断。
 
xf_err_t xf_hal_gpio_set_intr_disable (xf_gpio_num_t gpio_num)
 设置 gpio 禁用中断。
 
xf_err_t xf_hal_gpio_set_level (xf_gpio_num_t gpio_num, bool level)
 设置 gpio 设置电平高低。
 
bool xf_hal_gpio_get_level (xf_gpio_num_t gpio_num)
 获取 gpio 电平高低。
 

详细描述

xf_hal 的 gpio(通用输入输出) 设备抽象。

作者
cangyu (sky.k.nosp@m.irto.nosp@m.@qq.c.nosp@m.om)
版本
0.1
日期
2024-05-13

在文件 xf_hal_gpio.h 中定义.