使用如下函数读写:1 2 int gpiod_ get_value_cansleep(const struct gpio_desc *desc) void gpiod_set_value_cansleep(struct gpio_desc *desc, int value)4、#active-low和raw-valueactive-low & raw value有些设备采用低电平有效的方式输出逻辑
1)基于描述符(descriptor-based)的,函数前缀"gpiod_",使用gpio_desc结构体来表示一个引脚; 2)基于老(legacy)的,函数前缀"gpio_",使用一个整数来表示一个引脚。 操作一个GPIO引脚,要先get(获取)引脚,然后设置方向、读值、写值。 下面是2套接口简要说明: descriptor-based #include <linux/gpio/consumer.h> ...
gpiod_get_array_optiona gpiod_get_direction gpiod_get_index gpiod_get_index_optiona gpiod_get_optional gpiod_get_raw_value gpiod_get_raw_value_can gpiod_get_value gpiod_get_value_canslee gpiod_is_active_low gpiod_put gpiod_put_array gpiod_set_array_value gpiod_set_array_value_c...
gpiod_export() 函数 *//* [gpio][4] 设置/获取 值 *//* 使用 gpiod_set_value() 或 gpiod_get_value() 等等函数 *//* [gpio][5] 转中断,注册中断 *//* 使用 gpiod_set_value() 和 request_irq() 函数 *//* [gpio][6] 释放引脚 *//* 使用 gpiod_put() 或 gpiod_put() 函数 ...
3.设置GPIO读写函数 bit_data->setsda = i2c_gpio_setsda_val; bit_data->setscl = i2c_gpio_setscl_val; if (!pdata->scl_is_output_only) bit_data->getscl = i2c_gpio_getscl; bit_data->getsda = i2c_gpio_getsda; sda读写 gpiod_set_value_cansleep设置GPIO sda数据为0/1 gpiod_get...
int gpio_get_value(unsigned gpio); /* GPIO OUTPUT */ void gpio_set_value(unsigned gpio, int value); 1. 2. 3. 4. 此函数需要注意三个问题:第一、value的值是布尔类型(boolean),0表示低,非0表示高;第二:返回的值和输出值有可能不匹配,需要考虑wire-OR情况以及输出延时;第三、这两个函数不需要...
legacy API:integer-based GPIO interface,形式为 gpio_xxx(),例如 void gpio_set_value(unsigned gpio, int value),不推荐使用该 API; 推荐API: descriptor-based GPIO interface,形式为 gpiod_xxx(),例如 void gpiod_set_value(struct gpio_desc *desc, int value),新添加的驱动代码一律采用这套 API。 示...
gpiod_set_value_canslee gpiod_to_irq gpiod_unexport #获取gpio描述符和释放 使用一下两个函数获取GPIO设备,多个设备时需要附带index参数。函数返回一个GPIO描述符,或一个错误编码,可以使用IS_ERR()进行检查: 或者也可以使用如下两个函数获取可用设备: 使用如下函数同时获取多个设备: 该函数返回一个GPIO描述结构...
_get gp iod_get_array gp iod_get_array_o ptio na gpi od_get_directi on gpi od_get_i ndex gpi od_get_i ndex_ op ti ona gpi od_get_ op ti onal gpi od_get_raw_value gp iod_get_raw_value_ca n gpi od_get_value gpi od_get_value_ca nslee gpi od_is_active_low gpiod_...