Edit online

HAL 层接口设计

1. hal_gpio_set_func
函数原型 int hal_gpio_set_func(unsigned int group, unsigned int pin, unsigned int func)
功能说明 设置 Pin 的 Function 模式
参数定义 group:group idpin:offset in groupfunc: 0 = 关闭, 1 = 通用 gpio, 2~8 = 专用功能
返回值 操作是否成功 (0=OK, other=Error)
注意事项 -
2. hal_gpio_get_func
函数原型 int hal_gpio_get_func(unsigned int group, unsigned int pin, unsigned int *pfunc)
功能说明 获取 Pin 的 Function 模式
参数定义 group:group idpin:offset in groupfunc: 0 = 关闭, 1 = 通用 gpio, 2~8 = 专用功能
返回值 操作是否成功 (0=OK, other=Error)
注意事项 -
3. hal_gpio_direction_input
函数原型 int hal_gpio_direction_input(unsigned int group, unsigned int pin)
功能说明 设置 Pin 为输入模式
参数定义 group:group idpin:offset in group
返回值 操作是否成功 (0=OK, other=Error)
注意事项 -
4. hal_gpio_direction_output
函数原型 int hal_gpio_direction_output(unsigned int group, unsigned int pin)
功能说明 设置 Pin 为输出模式
参数定义 group:group idpin:offset in group
返回值 操作是否成功 (0=OK, other=Error)
注意事项 -
5. hal_gpio_set_bias_pull
函数原型 int hal_gpio_set_bias_pull(unsigned int group, unsigned int pin, unsigned int pull)
功能说明 设置 Pin 的上下拉模式
参数定义 group:group idpin:offset in grouppull: 0 = 关闭, 2 = 下拉, 3 = 上拉
返回值 操作是否成功 (0=OK, other=Error)
注意事项 -
6. hal_gpio_set_drive_strength
函数原型 int hal_gpio_set_drive_strength(unsigned int group, unsigned int pin, unsigned int strength)
功能说明 设置 Pin 的驱动能力
参数定义 group:group idpin:offset in groupstrength: 0 ~ 7
返回值 操作是否成功 (0=OK, other=Error)
注意事项 -
7. hal_gpio_set_debounce
函数原型 int hal_gpio_set_debounce(unsigned int group, unsigned int pin, unsigned int debounce)
功能说明 设置 Pin 的防抖能力
参数定义 group:group idpin:offset in groupdebounce: 0 ~ 0xFFF
返回值 操作是否成功 (0=OK, other=Error)
注意事项 -
8. hal_gpio_set_irq_mode
函数原型 int hal_gpio_set_irq_mode(unsigned int group, unsigned int pin, unsigned int irq_mode)
功能说明 设置 Pin 的防抖能力
参数定义 group:group idpin:offset in groupirq_mode: 0 = 下降沿,1 = 上升沿,2 = 低电平,3 = 高电平,4 = 双沿
返回值 操作是否成功 (0=OK, other=Error)
注意事项 -