问题标签 [neopixel]
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.
arduino - Arduino - 未检测到 USB 设备
我正在研究 Arduino Leonardo,我遇到了一个我花了一些时间解决的问题(我认为这个问题可能涉及其他类型的 Arduino)。我想和你分享这个有几个原因:
- 在这种情况下,它可能对其他人有用;
- 除了产生的问题之外,我具体不知道问题是什么。
- 我发现了问题的来源以及如何纠正它,但我不知道它为什么会出现以及为什么后果如此重要。
对于我的项目,我正在研究一个继承自Adafruit_NeoPixel
. 有一次我的 Arduino IDE 没有检测到我的 Arduino Leonardo(它没有出现在我 Mac 上的 USB 端口列表中,在另一台计算机上尝试时结果相同)。不知道它是从哪里来的,我尝试了几次操作,我换了电缆,我把它切换到 DFU 模式,等等......什么都没有......
我终于记得我在某个地方读到过,有时可以在上传开始时编译代码后按下“重新启动”按钮。操作奏效了,我的 Arduino Leonardo 重新出现在我的串口列表中。
我多次重现该问题,直到找到源头。这是因为在我的.cpp
文件中,当我实例化我的 NeoPixel 类时,我调用了该show()
方法。删除此行后,我的代码将毫无问题地编译和上传。
如上所述,我发现了是什么产生了这个问题,但我不知道为什么这条线会产生这种效果,而且为什么它会使计算机无法检测到 Arduino。
所以如果你有解释我很感兴趣!
谢谢
python - LED 条纹仅在使用 neopixel 库的每秒输入时起作用
我目前正在尝试使用我的 Raspberry Pi 控制我的 LED 灯条。此刻我遇到的问题是,我每第二次调用show()
第一个 LED 时,第一个 LED 亮起白色,其余的则关闭。每隔一段时间,LED 条纹都能正常工作,所以这不是问题。
这是我正在运行以重现我的问题的代码。(注意我运行了两次):
只需调用show()
两次也可以很好地重现我的问题。
我不知道这可能是如何出现的,或者是什么原因造成的。欢迎任何帮助!
c++ - 将代码移至类时,Arduino NeoPixel 代码行为异常
因此,在尝试划分我为 Arduino/NeoPixel 应用程序编写的一些测试代码时,我遇到了一个奇怪的问题。有两个场景:场景 A,我的移动前的代码,场景 B,我的移动后的代码。测试代码在场景 A 中按预期工作(红灯穿过我的 8x8 LED 矩阵)。同样的代码,当移动到容器类(场景 B)时会导致奇怪的行为(出现随机颜色的 LED 斑点并且不移动)。不过,将功能从一个地方简单地移动到另一个地方似乎不会引起这些症状,所以我有点迷茫。
我附上了下面两种不同场景的代码。为了清楚起见,我删除了部分代码并包含尚未引用的部分。
当谈到 Arduino/C++ 时,我或多或少还是个爱好者,所以也可以随意指出一些小事。
方案 A
程序.ino
硬件.h
屏幕.h
方案 B
程序.ino
硬件.h
和上面一样。
屏幕.h
和上面一样。
测试应用程序.h
python - 树莓派 Python Neopixel WS281x 脚本突然改变 LED 颜色
对于我的 Python 脚本,我正在使用这个库。我尝试为所有 60 像素设置一种单一的、永久的颜色。当我使用两个 LED 灯条(一个在 GPIO18 和一个在 GPIO 13)时,我的代码同时处理它们。
问题是代码一个接一个地更改像素颜色,并且介于两者之间的某个位置,所有 2 x 60 LED 的 LED 颜色都变为白色。
例如:两个灯条上的前 53 个 LED 获得正确的颜色,并且在瞬间,所有 LED 都是白色并保持白色。
奇怪的是,我认为它与颜色本身有关。颜色 Color(0,0,255) 完美无缺。但是我的颜色 Color(100,149,237) 有这种奇怪的行为。
我需要在我的代码中更改什么来解决这个问题并保持颜色稳定?
arrays - ENUM 和数组声明使用枚举创建对象数组
我正在为 neopixel 库编写一个包装器。我正在添加我的程序的完整源代码:
我创建了自己的自定义函数 toggle_led_strip,它使用了 neopixelbus led 条库中的函数。
通常,当我想创建一个颜色变量时,我必须以这种方式创建它:
但是,我正在学习创建颜色对象的不同方法,有人建议我使用 ENUM 和数组方法:
据我了解,上面的代码会将枚举的第一个变量(蓝色)设置为 {0,0,255},将枚举的第二个变量(黑色)设置为 {0},因此结果应该与我的完全相同用过的
这是正确的理解吗?
然后我尝试将颜色传递给函数,如下所示:
但是在使用枚举和数组方法时它不起作用,并且与第一种方法完美配合
python - 在 3 种颜色之间随机更改新像素,在每个像素上随机更改
所以我目前有 2x 12 像素 Neopixel 环,从 pi 零 W 开始运行。
LED 都按预期工作,通过电平转换器等,并且都按预期反应。
使用python的总菜鸟,但我可以控制像素并让它们做我想做的事,但是我目前想让每个环上的每个像素在随机时间在3种颜色之间随机切换。基本上具有闪烁效果,但仅在该颜色范围内。
目前我只是在一个函数中手动更改每个像素,该函数从我的脚本中调用,循环一定时间。它工作正常,但有点不雅。
使用它在函数中循环 x 秒。(播放声音时)
我对时间部分很满意,它只是颜色闪烁。如果有人知道如何更干净地做到这一点,那就太棒了。
感谢您的关注
python - ws2812b 像素 LED 不适用于 Raspberry Pi。先打开白色,然后随机变为绿色/蓝色/红色然后关闭
我已经尝试了尽可能多的指南来在树莓派上设置一系列 ws2812b LED。出于某种原因,灯似乎不响应任何类型的代码。我已经运行了 strandtest.py 并尝试通过 python 终端手动执行它。没有错误,所以我无法知道我的代码/设置是否有问题。条带中只有两个 LED,我将其设置如下:
有来自 GPIO18 的数据线和来自 Raspberry Pi (3B) 的 5V 线和 GND 以及用于将 3.3V 数据线转换为 5V 数据线的电平转换器(似乎没有任何区别) . 我的 LED 还没有单独的电源,但是当我只尝试使用两个 LED(每个 60mA)进行测试时,我认为这不是问题。所有接线都是正确的(根据我检查过的许多指南),并且数据是从 LED 板上的 Din 垫输入的,它们是菊花链式的。所有焊点都已用万用表检查,以确保也没有短路。见下图:
就代码而言,即使是这样简单的事情也无济于事:
我正在使用 sudo 和 python 3.7 并更新了树莓派和所有相关软件包。我也试过不同的频率也无济于事。我尝试过的一些指南(基本上是 rpi_ws281x python 包):
https://dordnung.de/raspberrypi-ledstrip/ws2812
https://tutorials-raspberrypi.com/connect-control-raspberry-pi-ws2812-rgb-led-strips/
当 LED 连接时,它们只是坐在那里关闭。有时其中一个随机亮起亮白色,然后在几秒钟后变为绿色,然后变为蓝色,然后变为红色,然后关闭。我的代码没有任何响应。任何帮助将非常感激!
python - 有没有办法在网络上的套接字之间同步发送信息?
我正在用 python 编程 ada 果环 LED 灯,我已经为 midi 控制器设置了一个本地网络,以将数据读入我的 Raspberry Pi 3 并通过网络套接字发送到 3 Pi Zero W。我遇到了一个问题,即我在线程上运行的某些功能将彼此不同步。换句话说,其中一个 LED 灯将以稍快或稍慢的速度运行,最终看起来不同步。我很好奇是否有人遇到过这样的问题,或者我是否只是以不正确的方式使用线程和事件。
这是我的一些服务器端代码:
这是我的一些客户端代码:
当我敲击键盘并执行该功能时,我将数据发送到两个 PI,它们同时启动,但随着时间的推移会不同步。感谢所有帮助。
arduino - 控制两个 LED 灯串时,ESP32 内核冻结
所以在上周,我一直在处理我的 ESP32 的问题。有关背景信息,我正在从事 Music Meter 项目。我的目标是让 ESP32 对两个音频信号进行采样,并让两组 LED 灯串对两个相应的音频信号做出反应。我在同时使用两个内核(使用 Arduino IDE)时遇到的问题是,当我对音频进行采样时,其中一个内核经常冻结。我知道核心正在冻结并且它不会卡在循环中,因为我设置了一个条件,即如果长时间没有任何活动,其中一个 LED 将改变颜色,并且它从未改变颜色.
同样奇怪的是作为基线测试,我想看看我是否可以控制 LED,但有一个简单的 for 循环可以打开和关闭每个条带,效果很好。只有当我开始在多个内核上采样音频并让 LED 做出反应时才会出现问题。如果我单独做每个核心,那么核心永远不会冻结,它会按照我想要的方式工作。
其他需要注意的事项:当 ESP 通过 WiFi.mode( WIFI_MODE_NULL ) 处于“Music Visualizer”模式时,WiFi 已断开连接。我已将所有可能发生变化的变量设置为 volatile,以查看是否会使其变得更好。它稍微改进了它,但并没有解决问题。
在这一点上,我的绳子用完了,我不知道如何解决这个问题。我当前的代码如下: