尾部-f fashon中的实时监视/ dev文件

时间:2017-04-14 14:34:33

标签: android linux linux-device-driver hardware

我有一个基于andriod的设备上有一个物理按钮,它的状态可以通过这个文件读取:/sys/class/gpio/gpio8/value带有1或0("设备文件& #34;?这种文件有一个特殊的词吗?)。

我想知道是否有办法观看此文件,但没有轮询。我知道我可以用很短的间隔做watch,但这对我来说似乎是不好的做法/必须采用另一种方式。

然后下一步将确定如何将其传输到Android应用程序中。

值得注意的是,我不相信这些按钮已集成到android传感器api / lib中,否则我只会使用

我正在寻找如何进行的方向。实际上没有办法真正观察按钮状态,当按下按钮并且电路完成时,没有事件被推送到操作系统,操作系统本身必须轮询。

谢谢!

1 个答案:

答案 0 :(得分:1)

如果GPIO驱动程序通过sysfs_notify()机制支持可轮询属性,那么您可以在程序中使用poll()等待状态更改。我只知道如何检查这两种方法:a)阅读驱动程序的源代码和b)进行测试,看看它是否适合你。

Some upcoming sysfs enhancements