问题标签 [adafruit-circuitpython]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
80 浏览

python - 关于 CircuitPython simpleio.tone 函数的快速问题

使用 simpleio.tone(board, frequency, duration=),我知道如何使用 for 循环遍历频率参数中的频率列表。我将如何为持续时间参数执行此操作?我想用压电蜂鸣器播放一首歌,我需要不同的频率来播放不同的持续时间。

任何帮助表示赞赏,谢谢。

0 投票
3 回答
1172 浏览

python - 通过 api 从树莓派 (DHT22) 收集温度在第二次尝试时失败

我有一个 DHT22 连接到我的树莓派 4 型号 B,连接如下: 在此处输入图像描述

我为树莓派写了一个小脚本,它应该得到温度和湿度。我通过本地网络的 IP 地址使该脚本可用。为此,我使用了两个库来试图找出错误:Flask 和 Jaymon/Endpoints。

在本地运行脚本时,一切正常。当我使用 Postman 调用端点时,我得到了预期的温度和湿度。但是,当我第二次调用同一个端点时,我收到以下错误:

发生这种情况时,我需要重新启动网络服务器并重新启动:我可以调用 api 一次并获得正确的结果,但在第二次尝试时失败。

这是我尝试过的脚本之一:

该问题在调用 dht_device.temperature/dht_device.humidity 时特别出现。当我忽略它时,我可以毫无问题地调用端点。

需要明确的是:我确实在 Raspberry Pi 上安装了 libgpiod。 编辑:我安装了libgpiod2,作为建议的答案之一。

有人知道这里可能出现的问题吗?提前致谢!

0 投票
0 回答
257 浏览

python - 使用 Rapsberry Pi 4 设置 Adafruit PDM

我对使用 Raspberry pi、Adafruit 产品和 python 编码比较陌生。我一直在努力设置一个连接到我的 RPi 4 的 Adafruit PDM 麦克风,并尝试在 python 3 上运行它。到目前为止,Adafruits 教程非常棒,但我在为这个安装所有必需的模块和库时遇到了一些问题. 有没有办法将 Adafruit_zeroPDM 和 Adafruit_zeroDMA 安装到 python 中?我按照 github 下载链接尝试了几种使用 pip3 安装它们的方法,但是我反复收到有关缺少模块的错误,这些模块应该在 Adafruit 的电路 python 库中。Adafruit PDM 麦克风是否与 RPi 不兼容?

我一直在使用以下 python 代码,该代码直接取自 adafruit 网站(https://learn.adafruit.com/adafruit-pdm-microphone-breakout/circuitpython):

我无法解决库和模块问题。我已经下载了 Adafruit_circuitpython 库和 Adafruit_Blinka 库以及所需的 Adafruit_ZeroPDM 和 Adafruit_ZeroDMA 但是我不断收到以下错误。

任何帮助将不胜感激。

最好的

0 投票
1 回答
83 浏览

python-3.x - Coral EdgeTPU PWM 输出低平均电压问题与伺服电机

我们有一个 MG996R 型伺服电机。Coral 的 PWM 输出只有 2.5V 峰值,而且不是很强。为此,我们使用 HC4049 模型缓冲区。但这不起作用。我们无法运行我们的伺服电机。以前我们有 Raspberry PI 3 Model B,它运行良好。

我们正在关注两个库。
首先,Adafruit_CircuitPython_Motor
并且他们在这篇文章中已经解释了这种情况。https://learn.adafruit.com/circuitpython-on-google-coral-linux-blinka/pwm-outputs-servos
我们尝试了“伺服控制”部分的代码

二、python-peripheral

我们在两个库中都没有收到错误,但什么也没发生。有些人有这个问题,但没有解决办法。
Google EdgeTPU 无法让 PWM 与 Python 一起工作

参考。

您有增加 PWM 输出功率的想法吗?
谢谢。

0 投票
2 回答
336 浏览

python - 在while循环中自动创建函数的n个调用?

我一直在做一个项目,使用 circuitpython 和 neopixels 作为学习如何使用板载计时器的一种方式。我已经完成了我的功能待办事项列表的 90%,现在我担心我可能需要重建整个事情来获得最后的 10%。

该项目旨在以萤火虫图案闪烁 n 个新像素。每种萤火虫图案都有一个功能。在脚本开始时,我创建了与灯光一样多的变量。然后我遍历它们,根据计时器打开或关闭灯。

我设法手动完成所有这些(根据有多少灯创建'variable_1,variable_2,...'),现在我试图根据灯的数量自动产生变量的数量。我还想在每次脚本启动时随机分配闪烁模式给灯光,但我认为这是最后一块。

正如您从下面的代码中看到的那样,我已经设法根据顶部的灯光数量自动创建变量。但是,当我尝试在底部的 while 循环中做类似的事情时,事情就崩溃了。我的问题基本上是“这就是存在类的原因,所以重写整个事情以使用类”?还是有其他方法可以使这项工作?

谢谢!

0 投票
0 回答
121 浏览

python - 终端/腻子等中的 Python 交互式菜单

我想知道是否有办法在终端窗口中创建交互式菜单(在这种情况下为表格)?

一个粗略的例子将与此类似:

  • 第一行 & col 将是参考值;

  • <val>想在开始时成为默认值(例如填充 255),但这是我想用所需的值更改的值。

  • 这也必须使用 Python 的标准库来完成(我正在尝试使用 Micropython/Circuitpython 来实现它)。

可能我能给出的最好的例子就是这个人:跟随到 0:50 左右。

据我所知,他是用 Arduino/C++ 完成的。

0 投票
1 回答
240 浏览

python - 通过 TCP 使用 mlx90640 发送热图像

我的程序有问题我正在尝试发送从 MLX90640 收集的图像,这要归功于 Raspberry 在远程 PC 中处理它们。我使用 Raspberry 4 作为客户端,数据被路由到 PC。我正在使用套接字启动要接收图像和热图像的服务器。对于连接到相机的图像,我处理了它,我的问题是传输热图像。我目前正在使用与手机共享的 wifi 连接进行测试。如有必要,我将发布服务器代码。但是我有这个错误消息我尝试了很多解决方案但我没有找到它。实际上,Raspberry 是客户端,PC 是服务器。因此,我从树莓中收集数据,然后将其传输到 PC 进行处理。我想检测面部的温度,为此连接到 Raspberry 的 MLX90640 必须发送热数据。知道它收集了768个值,所以我希望将这些值传输或将最大值返回给PC。有人能帮我吗

0 投票
1 回答
56 浏览

python - Python 不一致问题 - Adafruit io

所以我有一个简单的代码块:

在一台运行 python 3.7.4 的 PC 上运行良好并运行 - 在我运行 3.8.5 的家用 PC 上,我收到此错误:

我真的不知道为什么。

0 投票
0 回答
403 浏览

linux - 如何在 Raspberry Pi 上禁用硬件 SPI 芯片启用/芯片选择?

我正在设置一个带有许多 Adafruit 芯片的 Raspberry Pi 4b,因此使用了他们的CircuitPython库来控制 SPI 通信。他们方便地设置了一种使用任何 GPIO 引脚作为芯片选择的方法,但结果我不知道 Raspi 上有两个硬件芯片选择(分别在 GPIO8 和 GPIO7 上的 CE0 和 CE1)。我已经连接了这些引脚(GPIO7&8),打算将它们用作 GPIO 输出,但我注意到我的 GPIO8/CE0 连接到 SPI 时钟。

Adafruit 实际上提到NO_CS 标志在他们的文档中不起作用,我似乎在网上找不到任何有用的东西。

如何禁用硬件 CS 引脚?我知道 SPI_MODE 中的 SPI_NO_CS 标志已经是 spi-bcm 库中的一个错误,我找到了这个补丁,但我不确定它是否可以工作(我认为 CircuitPython 使用了硬件 CS?),更不用说如何应用了它。

0 投票
1 回答
82 浏览

python - LMS303 的树莓派代码获取 mag.magnetic x,y,z (PYTHON3)

我目前正在做一个带有树莓派 3b+ 和一些传感器的项目。其中一个传感器是 adafruit LMS303 三轴加速度计+磁力计(指南针),我尝试做一些基本的示例代码,一切正常。我现在要做的是从 mag.magnetic 中获取值并提取 x、y、z 值并将它们用作数字罗盘。

该代码不起作用,因为 mag.magnetic.x 和 mag.magnetic.y 不存在(不是提取这些值的正确方法)。¿ 有人能指出提取 mag.magnetic.x 和 mag.magnetic.y 的正确方法是什么吗?