voidgpio_set_value(unsigned gpio,intvalue) 功能:设置GPIO控制值 参数:gpio:管脚号;value:控制值,0或1 五、获取GPIO输入值 intgpio_get_value(unsigned gpio) 功能:获取GPIO输入值 参数:gpio:管脚号 返回值:0或1 六、释放GPIO voidgpio_free(unsigned gpio) 功能:释放注册的GPIO 参数:gpio:管脚号
最近改驱动程序,看到驱动代码中既有gpio_direction_output也有gpio_set_value。 结论 作用相同,但有差别: gpio_direction_output (port_num,0/1),在某个GPIO口写上某个值的同时,把端口设置为输出模式。 gpio_set_value(port_num,0/1)一般只是在这个GPIO口的寄存器上写上某个值,至于这个端口是否设置为输出,它...
•函数原型:int __gpio_get_value(unsigned gpio) •作用:获取 gpio 电平值 (gpio 已为 input/output 状态)。 •参数: •gpio:gpio 编号。 •返回: •返回 gpio 对应的电平逻辑,1 表示高, 0 表示低。 4.2.6 __gpio_set_value •函数原型:void __gpio_set_value(unsigned gpio, in...
int gpio_direction_output(unsigned gpio, int value) 函数功能:配置GPIO引脚为输出功能,并且输出一个value值(1高电平/0低电平) 参数: gpio:GPIO硬件对应的软件编号 value:输出的值 int gpio_direction_input(unsigned gpio) 函数功能:配置GPIO为输入功能 int gpio_set_value(unsigned gpio, int value) 函数功能...
#define EXYNOS4_GPZ(_nr)(EXYNOS4_GPIO_Z_START + (_nr)) /* the end of the EXYNOS4 specific gpios */ 7.4示例代码 #include <linux/kernel.h> //内核头文件 #include <linux/module.h> //模块 #include <linux/miscdevice.h> #include <linux/fs.h> ...
static inline void gpio_set_value(unsigned int gpio, int value) { __gpio_set_value(gpio, value); } 当我们将GPIO的方向设置为输入时,可以使用上面的函数gpio_get_value()来获取当前的IO口电平值,当GPIO的方向设置为输出时,使用函数gpio_set_value()可以设置IO口的电平值。
Linux的GPIO子系统中可以通过如下函数配置GPIO。 int gpio_request(unsigned gpio, const char *label);void gpio_free(unsigned gpio);int gpio_direction_input(unsigned gpio);int gpio_direction_output(unsigned gpio, int value);int gpio_get_value(unsigned gpio);void gpio_set_value(unsigned gpio, int ...
• 函数原型:int __gpio_get_value(unsigned gpio) • 作用:获取 gpio 电平值 (gpio 已为 input/output 状态)。 • 参数: • gpio:gpio 编号。 • 返回: • 返回 gpio 对应的电平逻辑,1 表示高, 0 表示低。 4.2.6 __gpio_set_value ...
(structgpio_chip*chip,unsignedoffset,intvalue);int(*set_debounce)(structgpio_chip*chip,unsignedoffset,unsigneddebounce);void(*set)(structgpio_chip*chip,unsignedoffset,intvalue);int(*to_irq)(structgpio_chip*chip,unsignedoffset);/*...*/intbase;//gpio在内核中的编号,申请gpio口时就是根据这个编号...
static inline void gpio_set_value(unsigned int gpio, int value) { __gpio_set_value(gpio, value); } led_drv.c驱动代码 #include <linux/init.h> #include <linux/kernel.h> #include <linux/module.h> #include <linux/fs.h> #include <linux/cdev.h> ...