对于一个项目,我需要设计和开发一个执行以下操作的应用程序,其中包括GPIO处理。读/写以输入/输出,在边缘触发事件等。
有一个特定的GPIO,将其设置为1时会以很高的功耗为放大器供电。对于安全和功耗问题,如果我的应用崩溃,我想拥有的一种方法是将该特定的GPIO状态“重置为0”(我也不在乎是否也重置了其他状态),这可能会在早期开发(希望如此)。
据我所知,我以前使用的GPIO sysfs接口/sys/class/gpio
在Linux中(自4.8开始)已弃用,并将在2020年删除。
我试图了解新字符设备界面和libgpiod
库的好处,引起了我的注意。不幸的是,我找不到很好的资源来提供有关这两个界面之间主要区别的详尽信息。
不过,如演示文稿中所读,具有旧界面“如果应用程序崩溃,则GPIO仍保持导出状态”。这是否意味着当我的应用因新的char设备而崩溃时,这意味着该行将关闭,GPIO会重置为其原始状态吗?
那将是巨大的。无需开发监视工具,该应用程序会在我的应用程序死机并重置后触发。
谢谢您的帮助。