Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/57.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C/C++select如何在Linux下与gpio一起工作?_C++_C_Linux_Select_Gpio - Fatal编程技术网

C/C++select如何在Linux下与gpio一起工作?

C/C++select如何在Linux下与gpio一起工作?,c++,c,linux,select,gpio,C++,C,Linux,Select,Gpio,select如何在Linux下与gpio一起工作 是否可以使用select创建一种中断驱动程序, 也许需要一些线索的帮助 当我使用select调用时,我应该考虑什么 谢谢 注: 我已经阅读了select的手册页,但我想我需要更多关于这个主题的帮助 man 3posix选择 男2选择 男2选择图 更新:gpio在sysfs gpio块中公开。但是我不知道我是否可以将它与select一起使用。应该可以编写多线程程序来查找中断,并在中断发生时执行某些操作。突出显示当您遇到select的限制时可以执行的

select如何在Linux下与gpio一起工作

是否可以使用select创建一种中断驱动程序, 也许需要一些线索的帮助

当我使用select调用时,我应该考虑什么

谢谢

注: 我已经阅读了select的手册页,但我想我需要更多关于这个主题的帮助

man 3posix选择 男2选择 男2选择图
更新:gpio在sysfs gpio块中公开。但是我不知道我是否可以将它与select一起使用。

应该可以编写多线程程序来查找中断,并在中断发生时执行某些操作。突出显示当您遇到select的限制时可以执行的操作。我没有使用过GPIO,但据我所知,GPIO与上述博客中讨论的电话/网卡应该没有太大区别。

显然,您可以在通过sysfs公开的GPIO上使用select,但前提是可以将其配置为生成中断。您的平台可能有此功能,也可能没有


不过,您要阅读的是内核源代码中的文档/gpio.txt,其中提到了如果内核驱动程序允许,如何为pin启用中断。

我对gpio不是很熟悉,但它似乎与硬件相关。您是否能够获取指向GPIO设备的文件描述符?如果是这样,您可以将其与select一起使用。如果无法获取文件描述符(也称为int类型句柄),则无法使用select。您的设备是否将GPIO作为文件描述符公开给用户空间?顺便说一句,你错过了选择图2。@ninjalj:谢谢你的选择图2,看起来不错,一定要读那个。