linux gpio c api

linux gpio c api,第1张

概述我有一个运行3.2内核的powerpc板.使用sysfs访问gpio按预期工作,例如 > echo 242 > /sys/class/gpio/export> cat /sys/class/gpio/gpio242/value> 1 是否没有API直接从用户空间访问gpio引脚?我必须处理基于文本的sysfs接口吗? 我找到类似的东西: gpio_set(int no,int val); 谢 我有一个运行3.2内核的powerpc板.使用sysfs访问gpio按预期工作,例如

> echo 242 > /sys/class/gpio/export> cat /sys/class/gpio/gpio242/value>  1

是否没有API直接从用户空间访问gpio引脚?我必须处理基于文本的sysfs接口吗?

我找到类似的东西:
gpio_set(int no,int val);

谢谢
 克劳斯

解决方法 编辑:不推荐使用对GPIO的sysfs直接访问,新的方法是通过libgpiod进行编程

sysfs是您在最近的内核中 *** 作GPIO的最低级别.它可能有点乏味但它提供了几个优于旧式API的优点:

>没有丑陋的ioctl
>可以很容易编写脚本(想想启动脚本)
>对于输入,“值”文件可以很容易地轮询上升/下降/两个边沿,它将对硬件中断非常敏感

我目前没有示例代码,但是当通过C代码访问它们时,我经常实现一个非常简单的包装器 *** 作文件描述符并具有以下接口的变体:

int gpio_open(int number,int out); /* returns handle (fd) */int gpio_close(int gpio);int gpio_set(int gpio,int up);int gpio_get(int gpio,int *up);int gpio_poll(int gpio,int rising_edge,int timeout);

从那时起,实现非常简单.

总结

以上是内存溢出为你收集整理的linux gpio c api全部内容,希望文章能够帮你解决linux gpio c api所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/1032374.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-24
下一篇 2022-05-24

发表评论

登录后才能评论

评论列表(0条)

保存