Linux内核 GPIO操作部分API

2023-07-12,,

内核中关于GPIO的操作API主要集中在<linux/of_gpio.h>和<linux/gpio.h>中,前者主要是GPIO直接与设备树相关的操作,在Linux 设备树操作API中已经记录过,后者主要是针对GPIO本身的操作,常用的有下面几个。

//linux/gpio.h
/**
* gpio_request_one - request a single GPIO with initial configuration
* @gpio: the GPIO number
* @flags: GPIO configuration as specified by GPIOF_*
* @label: a literal description string of this GPIO
*/
int gpio_request_one(unsigned gpio, unsigned long flags, const char *label) /* 判断gpio是否有效 */
bool gpio_is_valid(int number) /**
* 功能:设置指定gpio的工作模式为输入模式
* @gpio - 编号(要找的是那个cell)
* 失败:负数,绝对值错误码,成功:0
*/
int gpio_direction_input(unsigned gpio) /**
* 功能:设置指定gpio的工作模式为输出模式
* gpio - 编号(要找的是那个cell)
* 失败:负数,绝对值错误码,成功:0
*/
int gpio_direction_output(unsigned gpio, int value) /* 设置GPIO的值 */
void gpio_set_value(unsigned gpio, int value) /* 获取GPIO的值 */
int gpio_get_value(unsigned gpio) /* 申请软中断到GPIO引脚 */
int gpio_to_irq(unsigned int gpio) /* 释放GPIO */
gpio_free(unsigned gpio)

Linux内核 GPIO操作部分API的相关教程结束。

《Linux内核 GPIO操作部分API.doc》

下载本文的Word格式文档,以方便收藏与打印。