所以我要看看sysfs。我正在寻找一个模块/守护进程,它可以读取i2c设备和其他一些东西,并在我们的主应用程序的文件系统中导出信息。
例如我们的一个io扩展器用作板卡ID,它是一个tca7408,但我不需要GPIO接口。我只需要将其作为输入读取并将0xXX编号导出为用户空间应用程序的ID。
只是添加到此...有没有办法向sysfs添加自定义数据?或者将应用程序数据导出到类似于sysfs的功能的文件中?
答案 0 :(得分:0)
如果您的所有设备都在i2c上,我建议您使用易于使用的API创建一个库,例如:
BoardId_t getBoardId();
然后,您可以隐藏库中的所有i2c详细信息,并在需要时重复使用。
http://elinux.org/Interfacing_with_I2C_Devices
我倾向于只为实际需要设备驱动程序的东西编写设备驱动程序,在这种情况下,i2c已经有了设备驱动程序,所以你可以使用它。这将使您的代码更容易移植到不同版本的Linux内核,甚至不同的操作系统,并且不需要使用sysfs。