- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
在我的钢琴和 python 的帮助下,我正在尝试用 adafruit 点亮我的 dotstar led strip!
我正在从键盘获取我需要的信息,然后我尝试用 python 点亮它。唯一的问题是,这是一个巨大的延迟。如果我一次按下多个键,输入的信息就会变得太慢。
如果我删除点亮我的 LED 的代码,它运行良好,完全没有延迟。有什么办法可以加快速度吗?
我是 python 的新手,所以任何提示都会非常有帮助!
到目前为止,这是我的代码:
import pygame.midi
import board
import adafruit_dotstar as dotstar
dots = dotstar.DotStar(board.MOSI, board.SCK, 120, brightness=1)
def print_devices():
for n in range(pygame.midi.get_count()):
print (n,pygame.midi.get_device_info(n))
if __name__ == '__main__':
pygame.midi.init()
print_devices()
def number_to_note(number):
notes = ['c', 'c#', 'd', 'd#', 'e', 'f', 'f#', 'g', 'g#', 'a', 'a#', 'b']
return notes[number%12]
def number_to_note(number):
notes = ['c', 'c#', 'd', 'd#', 'e', 'f', 'f#', 'g', 'g#', 'a', 'a#', 'b']
return notes[number%12]
def readInput(input_device):
while True:
if input_device.poll():
event = input_device.read(1)[0]
data = event[0]
timestamp = event[1]
note_number = data[1]
velocity = data[2]
print (number_to_note(note_number), velocity)
dots[0] = (100, 255, 100)
if __name__ == '__main__':
pygame.midi.init()
my_input = pygame.midi.Input(3)
readInput(my_input
最佳答案
尝试线程化led函数
import threading
Import time
lock = threading.Lock()
def feedLED(dots,color):
with lock:
Start=time.time()
dots[0] = color
print('led', time.time()-Start)
在While
循环中实现
...
timestamp = event[1]
note_number = data[1]
velocity = data[2]
print (number_to_note(note_number), velocity)
color = (100, 255, 100)
threading.Thread(target = feedLED, args = (dots,color)).start()
...
但是,我感觉你设置有误,因为这个操作应该很快。
关于python - 用python点亮led灯,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54784512/
我正在尝试学习 MVVM Light 并将其用于我的 Windows Phone 8 应用程序。它工作得很好,但我找不到任何教程或示例如何使用带有 MVVM 模式的推送通知。 在我的 MainPage
我得到了一些代码来分析。此代码启用键盘上的 numLock 和scrollLock LED。我理解这段代码的大部分,但是我不理解循环部分(0104)。我知道这是为了等待输入缓冲区为空。但有必要吗?如果
我有一部运行 Android 8 的手机,我开始使用 Android Studio 进行 Android 编程。当收到通知时,Snapchat 或 Facebook 等一些应用程序会让我的手机点亮带有
我有一个用java编写的2D瓦片 map (使用libgdx,没有瓦片 map 编辑器),由正方形组成,我希望瓦片逐渐变暗,直到它们不可见。所以基本上我不想要圆形光。我知道的唯一选择是使用 Alpha
我的应用程序的用户需要能够安排特定任务在特定时间运行(例如,仅一次、每分钟、每小时等)。我的计划是让 cron 每分钟运行一个脚本来检查应用程序是否有要执行的任务。如果是,则执行任务。 问题: 每分钟
我有一个 USB 供电的小灯。我希望能够使用软件打开和关闭它。我会将它附加到 Linux 计算机上。我有一个 Atmel ATtiny2313来自previous project ,但我宁愿通过简单的
是否可以使用 Python 开发一个读取浏览器中可用的数字证书的网页?例如使用 pyOpenSSL? 我进一步解释: 我想开发一个网页,提示用户并要求他选择浏览器中可用的数字证书之一,然后打印其中包含
如何在运行时在three.js 中添加和删除不同的灯光类型? 我有一些复选框,每个复选框代表一种灯光类型,我想在选中它的复选框时向场景添加某种灯光类型,并在未选中时删除灯光。 我试过:scene.re
我有一个典型的 MVVM 结构。一个主窗口由一些标签和一个 View 模型(绑定(bind)为 ContentControl)组成。这个 View 模型有一个列表框,我可以在其中添加条目。随着列表的增
我正在使用 lightSlider,我想在同一页面的其他地方使用另一个。我在这里使用这个 slider 形式 http://sachinchoolur.github.io/lightslider/我为
我正在关注这个 netbean 指南 https://netbeans.org/kb/docs/php/configure-php-environment-ubuntu.html#createDocu
是否执行以下技术: for(int light=GL_LIGHT0; light == GL_LIGHT0 + n 关于c++ - gl.h #defines 灯,我们在Stack Overflow上
我想创建一个程序来使用键盘的 LED 表示二进制数。如何使用 C 语言控制这些 LED 灯? 最佳答案 对于 Linux,这会很有帮助 setleds 更全面的内部结构和几个命令行实用程序描述 Key
在我的应用中,我使用了 Google Material Light 库。 而且我不想检查我的输入(直到某些逻辑正确),这就是我添加这样的指令的原因: app.directive('updLink',
我正在使用 mvvm light 来构建 Silverlight 应用程序。 是否有代码片段显示如何从另一个 View 模型或用户控件的代码中访问 View 模型的属性或命令? 我想这很简单,但不知何
感谢您花时间阅读我的问题。非常感谢任何指导。 我在我的 LOB 应用程序中使用 SL3 导航框架。我目前使用 MVVM Light 作为框架指南。 我有一个由员工组成的数据网格,当“用户”单击数据网格
我的办公室里到处都是飞利浦 HUE 灯,我一直在努力寻找一种方法,让它们在低于设定的勒克斯/环境光发光时打开,这样我们就不必等到有人意识到它太暗了并将它们全部打开。如果他们按照设置补充提供给太阳的照明
我想控制 MacBook 或 iMac 上的“ sleep ”灯。 也就是说,我希望能够让它打开、关闭和跳动。 我很高兴在用户模式或内核模式下这样做。我想我需要root。 有什么想法吗? 最佳答案 您
无论我怎么试,都没有通知灯。我正在运行 Android 26 Oreo。我的手机仅在收到消息和未接来电时显示闪烁灯。 String CHANNEL_ID = "my_channel_01"; Noti
我正在创建的 Web 应用程序使用 jquery lights out 并有一个内部表单的 html iframe。使用此应用程序的任何人都必须按下提交按钮。有没有一种方法可以链接提交按钮周围的自由空
我是一名优秀的程序员,十分优秀!