xt-sdk 文档 v1.0.3
xt-sdk 嵌入式 SDK API 参考
载入中...
搜索中...
未找到
xt_hal_gpio(GPIO 驱动)

XTINY HAL GPIO 模块接口 更多...

宏定义

#define XT_HAL_GPIO_INVALID_ID   (0xFF)
#define XT_HAL_GPIO_INPUT   0x00
#define XT_HAL_GPIO_OUTPUT   0x01
#define XT_HAL_GPIO_PULLUP   0x02
#define XT_HAL_GPIO_PULLDOWN   0x04
#define XT_HAL_GPIO_OD   0x08
#define XT_HAL_GPIO_RISING_EDGE   0x10
#define XT_HAL_GPIO_FALLING_EDGE   0x20
#define XT_HAL_GPIO_BOTH_EDGE   (XT_HAL_GPIO_RISING_EDGE | XT_HAL_GPIO_FALLING_EDGE)
#define XT_HAL_GPIO_WAKEUP   0x40
#define XT_HAL_GPIO_HIGH_LEVEL   0x80
#define XT_HAL_GPIO_LOW_LEVEL   0x0100
#define XT_HAL_GPIO_BOTH_LEVEL   (XT_HAL_GPIO_HIGH_LEVEL | XT_HAL_GPIO_LOW_LEVEL)

类型定义

typedef void(* xt_hal_gpio_cb_t) (uint8_t io, uint32_t event_id)
 GPIO 回调函数类型定义

枚举

enum  xt_hal_gpio_event_id { XT_HAL_GPIO_EVENT_INT = 0x00 , XT_HAL_GPIO_EVENT_WAKEUP }
 GPIO 事件 ID 枚举 更多...

函数

xt_err_t xt_hal_gpio_setup (uint8_t io, uint32_t mode, xt_hal_gpio_cb_t cb)
 初始化 GPIO
xt_err_t xt_hal_gpio_close (uint8_t io)
 关闭 GPIO
void xt_hal_gpio_set_level (uint8_t io, uint8_t level)
 设置 GPIO 输出电平
uint8_t xt_hal_gpio_get_level (uint8_t io)
 获取 GPIO 当前电平

详细描述

XTINY HAL GPIO 模块接口

宏定义说明

◆ XT_HAL_GPIO_BOTH_EDGE

#define XT_HAL_GPIO_BOTH_EDGE   (XT_HAL_GPIO_RISING_EDGE | XT_HAL_GPIO_FALLING_EDGE)

在文件 xt_hal_gpio.h 第 73 行定义.

◆ XT_HAL_GPIO_BOTH_LEVEL

#define XT_HAL_GPIO_BOTH_LEVEL   (XT_HAL_GPIO_HIGH_LEVEL | XT_HAL_GPIO_LOW_LEVEL)

在文件 xt_hal_gpio.h 第 77 行定义.

◆ XT_HAL_GPIO_FALLING_EDGE

#define XT_HAL_GPIO_FALLING_EDGE   0x20

在文件 xt_hal_gpio.h 第 72 行定义.

◆ XT_HAL_GPIO_HIGH_LEVEL

#define XT_HAL_GPIO_HIGH_LEVEL   0x80

在文件 xt_hal_gpio.h 第 75 行定义.

◆ XT_HAL_GPIO_INPUT

#define XT_HAL_GPIO_INPUT   0x00

在文件 xt_hal_gpio.h 第 66 行定义.

◆ XT_HAL_GPIO_INVALID_ID

#define XT_HAL_GPIO_INVALID_ID   (0xFF)

在文件 xt_hal_gpio.h 第 33 行定义.

◆ XT_HAL_GPIO_LOW_LEVEL

#define XT_HAL_GPIO_LOW_LEVEL   0x0100

在文件 xt_hal_gpio.h 第 76 行定义.

◆ XT_HAL_GPIO_OD

#define XT_HAL_GPIO_OD   0x08

在文件 xt_hal_gpio.h 第 70 行定义.

◆ XT_HAL_GPIO_OUTPUT

#define XT_HAL_GPIO_OUTPUT   0x01

在文件 xt_hal_gpio.h 第 67 行定义.

◆ XT_HAL_GPIO_PULLDOWN

#define XT_HAL_GPIO_PULLDOWN   0x04

在文件 xt_hal_gpio.h 第 69 行定义.

◆ XT_HAL_GPIO_PULLUP

#define XT_HAL_GPIO_PULLUP   0x02

在文件 xt_hal_gpio.h 第 68 行定义.

◆ XT_HAL_GPIO_RISING_EDGE

#define XT_HAL_GPIO_RISING_EDGE   0x10

在文件 xt_hal_gpio.h 第 71 行定义.

◆ XT_HAL_GPIO_WAKEUP

#define XT_HAL_GPIO_WAKEUP   0x40

在文件 xt_hal_gpio.h 第 74 行定义.

类型定义说明

◆ xt_hal_gpio_cb_t

typedef void(* xt_hal_gpio_cb_t) (uint8_t io, uint32_t event_id)

GPIO 回调函数类型定义

参数
ioIO 编号
event_id事件 ID,见 xt_hal_gpio_event_id

在文件 xt_hal_gpio.h 第 51 行定义.

枚举类型说明

◆ xt_hal_gpio_event_id

GPIO 事件 ID 枚举

枚举值
XT_HAL_GPIO_EVENT_INT 

GPIO 中断事件

XT_HAL_GPIO_EVENT_WAKEUP 

IO 唤醒事件

在文件 xt_hal_gpio.h 第 40 行定义.

函数说明

◆ xt_hal_gpio_close()

xt_err_t xt_hal_gpio_close ( uint8_t io)

关闭 GPIO

参数
ioIO 编号
返回
xt_err_t XT_EOK 成功,其他失败

◆ xt_hal_gpio_get_level()

uint8_t xt_hal_gpio_get_level ( uint8_t io)

获取 GPIO 当前电平

参数
ioIO 编号
返回
uint8_t 0 低电平,1 高电平

◆ xt_hal_gpio_set_level()

void xt_hal_gpio_set_level ( uint8_t io,
uint8_t level )

设置 GPIO 输出电平

参数
ioIO 编号
level电平值,0 低电平,1 高电平

◆ xt_hal_gpio_setup()

xt_err_t xt_hal_gpio_setup ( uint8_t io,
uint32_t mode,
xt_hal_gpio_cb_t cb )

初始化 GPIO

参数
ioIO 编号
modeGPIO 模式配置(XT_HAL_GPIO_* 宏的组合)
cb回调函数,见 xt_hal_gpio_cb_t
返回
xt_err_t XT_EOK 成功,其他失败