gpt4 book ai didi

python - Raspberry Pi 和 Django - 后台检查 GPIO 按钮

转载 作者:行者123 更新时间:2023-11-30 22:47:16 27 4
gpt4 key购买 nike

我在让这件事发挥作用时遇到了麻烦。基本上我有我的树莓派,apache和django运行良好,在我看来,我可以使用gpiozero打开和关闭LED,我几乎可以做所有输出的事情想要带有 GPIO 引脚。

但是有件事我不能做:如何从 gpio 引脚获取输入

我尝试设置 Celery,但有 2 个问题,我无法让它按照我想要的方式工作(经过 3 天的测试,查看 10 个不同的指南,甚至是官方指南),而且它并没有完全按照我想要的方式工作。 Celery 仅当在 django View 中调用时才能执行后台进程。

我想要做的是有一个24/24运行的后台进程来监视引脚输入事件。简单的例子:当按下 GPIO 23 上连接的按钮时,更改 django 模型中的值或打开另一个 GPIO 引脚。

有人指点一下吗?谢谢大家!

最佳答案

我使用过 Django 和 Celery,但没有使用过 Raspberry Pi,所以这可能不是一个理想的解决方案。由于您尚未提供代码,我将尝试概述您将如何创建此功能。

  1. 设置 Django 应用程序和 Celery 集成

  2. 创建 Celery 任务以在调用时修改 django 模型值

  3. 创建一个新脚本并从 Django 项目导入 celery 任务

  4. 在脚本中实现触发 Celery 作业的函数

  5. 创建一个按钮对象并将对函数的调用添加到 on_pressed 方法(见下文)

  6. 运行脚本

基于 this 中的代码文章。

from gpiozero import Button
from signal import pause

def trigger_celery_task():
# Add the code to create a new task here

button = Button(2)

button.when_pressed = trigger_celery_task

# Wait for events
pause()

关于python - Raspberry Pi 和 Django - 后台检查 GPIO 按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40577544/

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