gpt4 book ai didi

c++ - 检测树莓派 - Qt5 中的 GPIO 引脚变化

转载 作者:太空宇宙 更新时间:2023-11-04 11:31:32 24 4
gpt4 key购买 nike

我是树莓派的新手。

我的问题的实质如下:

我有一个 GPIO 引脚变化,必须对其进行监控(连续轮询)以查看它是否发生变化。如果它发生变化,我必须使用加载程序在我的 Qt5 项目中加载一个新的 QML 文件。考虑到它相当简单,我知道如何做装载机部分。我需要一种方法来轮询 GPIO 引脚并收到更改通知。

我读到 QSocketNotifier 类可能有帮助。但坦率地说,我对如何做到这一点一无所知。

如果您提供任何帮助来弄清楚如何做到这一点,我们将不胜感激。谢谢:)

编辑:我正在构建一种主菜单,以便在 GUI 上为在 Debian 上运行的基于树莓派的系统选择不同的选项。它大致就像一个机顶盒。相当于屏幕上基于 GUI 的按钮,它应该能够从连接到 GPIO 引脚的外部按钮获取基于硬件的中断,从而导致新页面加载/新事件开始。

如果我理解正确,代码的 C++ 部分必须捕获此引脚更改,并将其转发给 QML 部分。我需要能够做到这一点。

最佳答案

您对环境和其他需要做的事情只字不提。如果没有其他任务或操作系统,也许这就是您想要的?:

int last_state = -1;   // impossible state so change is noticed the first time
for (;;) // do forever
{
int state = get_gpio (THE_EVENT);
if (state == last_state)
{
sleep (100);
continue;
}
do_loader_stuff();
last_state = state;
}

关于c++ - 检测树莓派 - Qt5 中的 GPIO 引脚变化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24605439/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com