0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

炫彩LED灯带的制作

454398 来源:网络整理 作者:网络整理 2019-11-27 09:58 次阅读

概述

永恒的时尚标准,带有声音感应,全彩LED动画,并可以通过手机无线控制。

受约翰G启发,此经典Ampli-Tie的更新使用了 Circuit Playground Bluefruit 和 Neopixel LED ,可将领带变成便携式的,可自定义的灯光秀-无需焊接。这肯定会在舞池和绝大多数正式活动中引起您的注意。

您需要什么

电路场Bluefruit-低功耗蓝牙

产品ID:4333

电路游乐场Bluefruit是电路游乐场系列中的第三块板,朝着完美介绍电子学和编程迈出了一步。我们已经。..

$ 24.95

进货

添加到购物车

炫彩LED灯带的制作

Adafruit NeoPixel LED点链-20“,间距2”

产品ID:3630

将NeoPixel条形连接到服装上可能会很费力,因为柔性PCB弯曲得过多时会破裂,因此如何添加少量的颜色点呢?搁浅的NeoPixel点!。..

$ 27.50

入库存

添加到购物车

USB电缆-USB A到Micro-B

产品ID:592

这是您的标准A到Micro-B USB电缆,用于USB 1.1或2.0,非常适合将PC连接到Metro,Feather,Raspberry Pi或其他dev-board或。..

$ 2.95

进货

添加到购物车

电路场的螺栓固定套件, micro:bit,Flora或Gemma

产品ID:4103

您有一个Circuit Playground Express,想连接一些电线以添加LED或传感器或扬声器吗?您可以使用我们的。..

$ 1.50

入库存

添加到购物车

1 x 锂离子聚合物电池-3.7v 1200mAh

力量

添加到购物车

1 x 剥线钳

用于暴露引线

添加到购物车

1 x 剪刀

用于修剪电线,螺纹等

添加到购物车

1 x 口袋螺丝刀

用于固定电线

添加到购物车

1 x 缝制针

缝制这些像素

添加到购物车

Plus…

分离式或夹式领带-如果您想要一个不错的领带,请参见

织物(用于电池袋)

螺纹

10毫米下摆带

铁和熨衣板

iPhone/iPad(iOS 11.3或更高版本)或带有BLE的Android设备(Android 4.4或更高版本)

Circuit Playground Bluefruit上的CircuitPython

安装或更新CircuitPython

按照以下快速分步操作,在Circuit Playground Bluefruit上安装或更新CircuitPython。

Circuit Playground Bluefruit需要CircuitPython 5.0+。 CircuitPython 5.0当前处于Alpha状态。这意味着我们仍在努力添加功能并解决问题。如果遇到任何问题,请通过#help-with-circuitpython频道的Discord(https://adafru.it/discord)与我们联系,或者在GitHub上通过https://github.com/adafruit/提交问题。

此外,如果要使用要使用此开发板的蓝牙(BLE)功能,您需要adafruit_ble库的预发行版本。从https://github.com/adafruit/Adafruit_CircuitPython_BLE/releases

中选择最新的预发布版本,可通过circuitpython.org 《

点击链接上方并下载最新的UF2文件

下载并将其保存到桌面(或任何方便的地方)

使用已知的具有良好数据功能的USB电缆将Circuit Playground Bluefruit插入计算机。

许多人最终使用仅可充电的USB电缆,这非常令人沮丧!因此,请确保您拥有知道对数据同步有用的USB电缆。

双击CPB中间的小 Reset 小按钮(由表示图片中的红色箭头)。十个NeoPixel LED将全部变为红色,然后全部变为绿色。如果它们全部变为红色并保持红色,请检查USB电缆,尝试使用另一个USB端口,等等。USB连接器旁边的红色LED指示灯将呈红色闪烁-可以!

如果双击鼠标不第一次没有工作,请再试一次。有时可能需要一些尝试才能使节奏正确!

(如果双击不起作用,请单击一下!)

您将看到一个名为 CPLAYBTBOOT 的新磁盘驱动器

将 adafruit_circuitpython_etc.uf2 文件拖到 CPLAYBTBOOT。

LED将变为红色。然后, CPLAYBTBOOT 驱动器将消失,并出现一个名为 CIRCUITPY 的新磁盘驱动器。

就这样,您就完成了! :)

软件

现在在CPB上安装了 CircuitPython ,我们可以继续安装项目软件。

安装Bluefruit Connect和Neopixel库

项目代码需要两个代码库才能协助蓝牙通讯。 点击下面的链接以下载CircuitPython库捆绑包:

库捆绑包

解压缩库捆绑包,然后打开其中的 lib 文件夹。

找到名为 adafruit_bluefruit_connect 的文件夹和名为的文件neopixel.mpy – 两者复制并将它们粘贴到 CIRCUITPY 驱动器的 lib 文件夹。

安装BLE库

要下载我们需要的最后一个库,请单击下面的按钮:

BLE库

解压缩,已下载的zip文件,并打开其中的 lib 文件夹。复制名为 adafruit_ble 的文件夹,并将其粘贴到 CIRCUITPY 驱动器的 lib 文件夹中。

您的CIRCUITPY驱动器的文件结构现在应该看起来像这样:

上传代码

复制下面的代码并将其粘贴到新文本文件中。

将文本文件另存为 code.py 到 CIRCUITPY的根目录中驱动器。

下载:Project Zip 或代码.py | 在Github上查看

复制代码

“”“

LED Disco Tie with Bluetooth

=========================================================

Give your suit an sound-reactive upgrade with Circuit

Playground Bluefruit & Neopixels. Set color and animation

mode using the Bluefruit LE Connect app.

Author: Collin Cunningham for Adafruit Industries, 2019

”“”

# pylint: disable=global-statement

import time

import array

import math

import audiobusio

import board

import neopixel

from adafruit_ble.uart_server import UARTServer

from adafruit_bluefruit_connect.packet import Packet

from adafruit_bluefruit_connect.color_packet import ColorPacket

from adafruit_bluefruit_connect.button_packet import ButtonPacket

uart_server = UARTServer()

# User input vars

mode = 0 # 0=audio, 1=rainbow, 2=larsen_scanner, 3=solid

user_color= (127,0,0)

# Audio meter vars

PEAK_COLOR = (100, 0, 255)

NUM_PIXELS = 10

CURVE = 2

SCALE_EXPONENT = math.pow(10, CURVE * -0.1)

NUM_SAMPLES = 160

# Restrict value to be between floor and ceiling.

def constrain(value, floor, ceiling):

return max(floor, min(value, ceiling))

# Scale input_value between output_min and output_max, exponentially.

def log_scale(input_value, input_min, input_max, output_min, output_max):

normalized_input_value = (input_value - input_min) / \

(input_max - input_min)

return output_min + \

math.pow(normalized_input_value, SCALE_EXPONENT) \

* (output_max - output_min)

# Remove DC bias before computing RMS.

def normalized_rms(values):

minbuf = int(mean(values))

samples_sum = sum(

float(sample - minbuf) * (sample - minbuf)

for sample in values

return math.sqrt(samples_sum / len(values))

def mean(values):

return sum(values) / len(values)

def volume_color(volume):

return 200, volume * (255 // NUM_PIXELS), 0

# Set up NeoPixels and turn them all off.

pixels = neopixel.NeoPixel(board.A1, NUM_PIXELS, brightness=0.1, auto_write=False)

pixels.fill(0)

pixels.show()

mic = audiobusio.PDMIn(board.MICROPHONE_CLOCK, board.MICROPHONE_DATA,

sample_rate=16000, bit_depth=16)

# Record an initial sample to calibrate. Assume it‘s quiet when we start.

samples = array.array(’H‘, [0] * NUM_SAMPLES)

mic.record(samples, len(samples))

# Set lowest level to expect, plus a little.

input_floor = normalized_rms(samples) + 10

# Corresponds to sensitivity: lower means more pixels light up with lower sound

input_ceiling = input_floor + 500

peak = 0

def wheel(wheel_pos):

# Input a value 0 to 255 to get a color value.

# The colours are a transition r - g - b - back to r.

if wheel_pos 《 0 or wheel_pos 》 255:

r = g = b = 0

elif wheel_pos 《 85:

r = int(wheel_pos * 3)

g = int(255 - wheel_pos*3)

b = 0

elif wheel_pos 《 170:

wheel_pos -= 85

r = int(255 - wheel_pos*3)

g = 0

b = int(wheel_pos*3)

else:

wheel_pos -= 170

r = 0

g = int(wheel_pos*3)

b = int(255 - wheel_pos*3)

return (r, g, b)

def rainbow_cycle(delay):

for j in range(255):

for i in range(NUM_PIXELS):

pixel_index = (i * 256 // NUM_PIXELS) + j

pixels[i] = wheel(pixel_index & 255)

pixels.show()

time.sleep(delay)

def audio_meter(new_peak):

mic.record(samples, len(samples))

magnitude = normalized_rms(samples)

# Compute scaled logarithmic reading in the range 0 to NUM_PIXELS

c = log_scale(constrain(magnitude, input_floor, input_ceiling),

input_floor, input_ceiling, 0, NUM_PIXELS)

# Light up pixels that are below the scaled and interpolated magnitude.

pixels.fill(0)

for i in range(NUM_PIXELS):

if i 《 c:

pixels[i] = volume_color(i)

# Light up the peak pixel and animate it slowly dropping.

if c 》= new_peak:

new_peak = min(c, NUM_PIXELS - 1)

elif new_peak 》 0:

new_peak = new_peak - 1

if new_peak 》 0:

pixels[int(new_peak)] = PEAK_COLOR

pixels.show()

return new_peak

pos = 0 # position

direction = 1 # direction of “eye”

def larsen_set(index, color):

if index 《 0:

return

else:

pixels[index] = color

def larsen(delay):

global pos

global direction

color_dark = (int(user_color[0]/8), int(user_color[1]/8),

int(user_color[2]/8))

color_med = (int(user_color[0]/2), int(user_color[1]/2),

int(user_color[2]/2))

larsen_set(pos - 2, color_dark)

larsen_set(pos - 1, color_med)

larsen_set(pos, user_color)

larsen_set(pos + 1, color_med)

if (pos + 2) 《 NUM_PIXELS:

# Dark red, do not exceed number of pixels

larsen_set(pos + 2, color_dark)

pixels.write()

time.sleep(delay)

# Erase all and draw a new one next time

for j in range(-2, 2):

larsen_set(pos + j, (0, 0, 0))

if (pos + 2) 《 NUM_PIXELS:

larsen_set(pos + 2, (0, 0, 0))

# Bounce off ends of strip

pos += direction

if pos 《 0:

pos = 1

direction = -direction

elif pos 》= (NUM_PIXELS - 1):

pos = NUM_PIXELS - 2

direction = -direction

def solid(new_color):

pixels.fill(new_color)

pixels.show()

def map_value(value, in_min, in_max, out_min, out_max):

out_range = out_max - out_min

in_range = in_max - in_min

return out_min + out_range * ((value - in_min) / in_range)

speed = 6.0

wait = 0.097

def change_speed(mod, old_speed):

new_speed = constrain(old_speed + mod, 1.0, 10.0)

return(new_speed, map_value(new_speed, 10.0, 0.0, 0.01, 0.3))

while True:

# While BLE is *not* connected

if not uart_server.connected:

# OK to call again even if already advertising

uart_server.start_advertising()

# While BLE is connected

else:

if uart_server.in_waiting:

packet = Packet.from_stream(uart_server)

# Received ColorPacket

if isinstance(packet, ColorPacket):

user_color = packet.color

# Received ButtonPacket

elif isinstance(packet, ButtonPacket):

if packet.pressed:

if packet.button == ButtonPacket.UP:

speed, wait = change_speed(1, speed)

elif packet.button == ButtonPacket.DOWN:

speed, wait = change_speed(-1, speed)

elif packet.button == ButtonPacket.BUTTON_1:

mode = 0

elif packet.button == ButtonPacket.BUTTON_2:

mode = 1

elif packet.button == ButtonPacket.BUTTON_3:

mode = 2

elif packet.button == ButtonPacket.BUTTON_4:

mode = 3

# Determine animation based on mode

if mode == 0:

peak = audio_meter(peak)

elif mode == 1:

rainbow_cycle(0.001)

elif mode == 2:

larsen(wait)

elif mode == 3:

solid(user_color)

“”“

LED Disco Tie with Bluetooth

=========================================================

Give your suit an sound-reactive upgrade with Circuit

Playground Bluefruit & Neopixels. Set color and animation

mode using the Bluefruit LE Connect app.

Author: Collin Cunningham for Adafruit Industries, 2019

”“”

# pylint: disable=global-statement

import time

import array

import math

import audiobusio

import board

import neopixel

from adafruit_ble.uart_server import UARTServer

from adafruit_bluefruit_connect.packet import Packet

from adafruit_bluefruit_connect.color_packet import ColorPacket

from adafruit_bluefruit_connect.button_packet import ButtonPacket

uart_server = UARTServer()

# User input vars

mode = 0 # 0=audio, 1=rainbow, 2=larsen_scanner, 3=solid

user_color= (127,0,0)

# Audio meter vars

PEAK_COLOR = (100, 0, 255)

NUM_PIXELS = 10

CURVE = 2

SCALE_EXPONENT = math.pow(10, CURVE * -0.1)

NUM_SAMPLES = 160

# Restrict value to be between floor and ceiling.

def constrain(value, floor, ceiling):

return max(floor, min(value, ceiling))

# Scale input_value between output_min and output_max, exponentially.

def log_scale(input_value, input_min, input_max, output_min, output_max):

normalized_input_value = (input_value - input_min) / \

(input_max - input_min)

return output_min + \

math.pow(normalized_input_value, SCALE_EXPONENT) \

* (output_max - output_min)

# Remove DC bias before computing RMS.

def normalized_rms(values):

minbuf = int(mean(values))

samples_sum = sum(

float(sample - minbuf) * (sample - minbuf)

for sample in values

return math.sqrt(samples_sum / len(values))

def mean(values):

return sum(values) / len(values)

def volume_color(volume):

return 200, volume * (255 // NUM_PIXELS), 0

# Set up NeoPixels and turn them all off.

pixels = neopixel.NeoPixel(board.A1, NUM_PIXELS, brightness=0.1, auto_write=False)

pixels.fill(0)

pixels.show()

mic = audiobusio.PDMIn(board.MICROPHONE_CLOCK, board.MICROPHONE_DATA,

sample_rate=16000, bit_depth=16)

# Record an initial sample to calibrate. Assume it’s quiet when we start.

samples = array.array(‘H’, [0] * NUM_SAMPLES)

mic.record(samples, len(samples))

# Set lowest level to expect, plus a little.

input_floor = normalized_rms(samples) + 10

# Corresponds to sensitivity: lower means more pixels light up with lower sound

input_ceiling = input_floor + 500

peak = 0

def wheel(wheel_pos):

# Input a value 0 to 255 to get a color value.

# The colours are a transition r - g - b - back to r.

if wheel_pos 《 0 or wheel_pos 》 255:

r = g = b = 0

elif wheel_pos 《 85:

r = int(wheel_pos * 3)

g = int(255 - wheel_pos*3)

b = 0

elif wheel_pos 《 170:

wheel_pos -= 85

r = int(255 - wheel_pos*3)

g = 0

b = int(wheel_pos*3)

else:

wheel_pos -= 170

r = 0

g = int(wheel_pos*3)

b = int(255 - wheel_pos*3)

return (r, g, b)

def rainbow_cycle(delay):

for j in range(255):

for i in range(NUM_PIXELS):

pixel_index = (i * 256 // NUM_PIXELS) + j

pixels[i] = wheel(pixel_index & 255)

pixels.show()

time.sleep(delay)

def audio_meter(new_peak):

mic.record(samples, len(samples))

magnitude = normalized_rms(samples)

# Compute scaled logarithmic reading in the range 0 to NUM_PIXELS

c = log_scale(constrain(magnitude, input_floor, input_ceiling),

input_floor, input_ceiling, 0, NUM_PIXELS)

# Light up pixels that are below the scaled and interpolated magnitude.

pixels.fill(0)

for i in range(NUM_PIXELS):

if i 《 c:

pixels[i] = volume_color(i)

# Light up the peak pixel and animate it slowly dropping.

if c 》= new_peak:

new_peak = min(c, NUM_PIXELS - 1)

elif new_peak 》 0:

new_peak = new_peak - 1

if new_peak 》 0:

pixels[int(new_peak)] = PEAK_COLOR

pixels.show()

return new_peak

pos = 0 # position

direction = 1 # direction of “eye”

def larsen_set(index, color):

if index 《 0:

return

else:

pixels[index] = color

def larsen(delay):

global pos

global direction

color_dark = (int(user_color[0]/8), int(user_color[1]/8),

int(user_color[2]/8))

color_med = (int(user_color[0]/2), int(user_color[1]/2),

int(user_color[2]/2))

larsen_set(pos - 2, color_dark)

larsen_set(pos - 1, color_med)

larsen_set(pos, user_color)

larsen_set(pos + 1, color_med)

if (pos + 2) 《 NUM_PIXELS:

# Dark red, do not exceed number of pixels

larsen_set(pos + 2, color_dark)

pixels.write()

time.sleep(delay)

# Erase all and draw a new one next time

for j in range(-2, 2):

larsen_set(pos + j, (0, 0, 0))

if (pos + 2) 《 NUM_PIXELS:

larsen_set(pos + 2, (0, 0, 0))

# Bounce off ends of strip

pos += direction

if pos 《 0:

pos = 1

direction = -direction

elif pos 》= (NUM_PIXELS - 1):

pos = NUM_PIXELS - 2

direction = -direction

def solid(new_color):

pixels.fill(new_color)

pixels.show()

def map_value(value, in_min, in_max, out_min, out_max):

out_range = out_max - out_min

in_range = in_max - in_min

return out_min + out_range * ((value - in_min) / in_range)

speed = 6.0

wait = 0.097

def change_speed(mod, old_speed):

new_speed = constrain(old_speed + mod, 1.0, 10.0)

return(new_speed, map_value(new_speed, 10.0, 0.0, 0.01, 0.3))

while True:

# While BLE is *not* connected

if not uart_server.connected:

# OK to call again even if already advertising

uart_server.start_advertising()

# While BLE is connected

else:

if uart_server.in_waiting:

packet = Packet.from_stream(uart_server)

# Received ColorPacket

if isinstance(packet, ColorPacket):

user_color = packet.color

# Received ButtonPacket

elif isinstance(packet, ButtonPacket):

if packet.pressed:

if packet.button == ButtonPacket.UP:

speed, wait = change_speed(1, speed)

elif packet.button == ButtonPacket.DOWN:

speed, wait = change_speed(-1, speed)

elif packet.button == ButtonPacket.BUTTON_1:

mode = 0

elif packet.button == ButtonPacket.BUTTON_2:

mode = 1

elif packet.button == ButtonPacket.BUTTON_3:

mode = 2

elif packet.button == ButtonPacket.BUTTON_4:

mode = 3

# Determine animation based on mode

if mode == 0:

peak = audio_meter(peak)

elif mode == 1:

rainbow_cycle(0.001)

elif mode == 2:

larsen(wait)

elif mode == 3:

solid(user_color)

项目代码一旦保存 到 CIRCUITPY 作为 code.py, 软件已全部设置好了–是时候继续组装硬件

准备NeoPixels

首先要做的是修剪Neopixel LED条以使其与领带的长度相匹配。 20“分离式领带的长度可以为 9 NeoPixels 。如果使用其他领带,请确保在切割前找到合适的长度。

《表类=“ build-table”》

常规剪刀可以被拖拉或损坏,因此请确保使用一对钢丝钳或专为切割金属而设计的剪刀。

我们将在下图中用红色虚线表示的两个点处剪切条。

剪切输入线

从条形板上剪下公型插针连接器(将2根多余的电线垂到一侧)。切近连接器本身以增加长度。这是将要连接到Circuit Playground蓝果的条带的末端。

使用剥线钳移除大约 15mm 》从每根刚切割的导线的末端开始绝缘。

轻轻地扭曲每捆线束,以防止它们磨损。

删除多余的新像素

从您刚剪切的一端开始,算出长度为 9 NeoPixels 。

剪切第九个 neopixel之后的条带,并留有尽可能多的尾巴。

不要在此末端剥皮或分开导线。

完成后,完成条应类似于上图。

添加电池袋

为了安全地容纳脂电池,我们将在领带的背面创建一个简单的袋。 p》

此口袋将使用热激活下摆带固定在领带上,但您可以根据需要使用传统缝制轻松地重新制作它。

剪切并排列材料

切一块布 60mm 尺寸 x 75mm 。

剪切4条下摆带 2 x 75mm ,和 2 x 15mm

将下摆带的各部分按照领带的底部附近的口袋形状排列后缝。

小心地小心地将放在口袋顶部的中间位置,在口袋底部的中间留出空隙。 。 确保胶带在口袋的外边缘–熨烫后将无法重新放置它。

铁袋就位

轻轻地放置一块在所有物品上刮擦织物,以在熨烫时保护袖珍织物。

用热铁施加确定压力 10次到20秒来回移动熨斗,将口袋均匀地固定到位。

完成后,请检查并确保口袋完全紧贴到领带。

组装和接线

用针和线以及一点点接线组装所有组件。

位置新像素带

找到领带的垂直中心线并标记

将条带沿中心线放置,使大约一英寸的导线悬挂领带的尖端。

塞住靠近脖子的金属丝条的多余的尾巴到领带的结。

缝制NeoPixel s

通过将线程穿过织物的顶层并将其包裹起来,将每个NeoPixel缝合到位NeoPixel胶囊的一端。然后对胶囊的另一端进行相同操作。

要在工作时保持条带对齐,请先缝制NeoPixels的顶部,底部和中间。

附加赛道游乐场Bluefruit

安装螺栓到CPB的 GND , VOUT 和 A1 焊盘。将它们稍稍松动,以便稍后可以轻松地将电线绕在螺钉上。

将CPB放在扎带背面的底部,以便微型USB端口稍微扎在扎带的折线下方。

通过将 GND 和 3.3V 焊盘牢固地缝合到织物的顶层,将CPB缝制到位。

接线图

下面是显示所有需要进行的电气连接。单击图像可查看大图。

连接NeoPixel地带

NeoPixel带中的三根导线连接到CPB上的以下焊盘:

红色导线- 》 VOUT

中间线-》 A1

剩余线-》 GND

弯曲在绑带底部边缘上的导线,并固定 裸露的导线 》用小螺丝刀拧紧螺栓。

将脂状电池滑入口袋,同时将其电线连接器穿过口袋末端的开口。

将电池连接到CPB上的黑色JST端口。

祝贺您-您的新领带已经通电并且可以穿了!

使用

下载应用

Adafruit的Bluefruit LE Connect应用是免费的,这是多方面的Bluetooth LE工具包,我们将使用它来控制领带的照明和动画。在以下移动设备上下载并安装该应用:

iOS版下载

Android版下载

通过BLE连接

确保您的移动设备已启用蓝牙,然后启动该应用。启动屏幕将显示该应用可以连接到的附近蓝牙LE设备的列表。

查找名称以 CIRCUITPY 开头的设备,然后单击右侧按钮上的连接。

连接后,点击标题为 Controller 的表格行。这是我们用来控制领带的颜色和动画的模块。

更改动画

领带具有4种动画模式:

Audio Meter -CPB检测到的现场声音水平

彩虹周期-所有LED在整个光谱范围内都会褪色

拉森扫描器-LED上下移动,呈“赛隆”风格

单色-全部相同颜色的LED

在 Controller 视图中,点击 Control Pad 。游戏控制器按钮界面将会出现。

以下是每个控制面板按钮的功能细分:

按钮1 –更改为音频计模式

按钮2 –更改为彩虹周期模式

按钮3 –更改为Larsen Scanner模式

按钮4 –更改为纯色模式

向上箭头按钮-加快Larsen Scanner

向下箭头按钮-放慢Larsen Scanner

更改颜色

在控制器视图中,点击拾色器 –将出现色轮界面。 Color Picker (颜色选择器)可让您更改 Larsen Scanner 和 Solid Color 动画模式的颜色。

触摸色轮上的一个点以选择一种色调,然后拖动下面的滑块来调整颜色亮度。按下发送按钮,将颜色数据发送到领带。
责任编辑:wv

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • led
    led
    +关注

    关注

    242

    文章

    23141

    浏览量

    658534
收藏 人收藏

    评论

    相关推荐

    揭秘LED功率:深入理解每米功率的科学

    在现代照明设计中,LED以其灵活性和节能特性,成为营造室内氛围的重要工具。本文将深入探讨LED
    的头像 发表于 08-03 15:45 1476次阅读

    LED断点续传是什么意思

    led跑马灯分带断点续传和不带断点续传的。断点续传是指采用双信号线交叉传输的方案,当其中一个信号中断后,另一条备用信号线能绕开故障
    发表于 07-18 18:20

    解析LED显示条屏一般是分单和双吗?

    ,单和双是两种常见的类型,它们各有特点,适用于不同的使用场景。  单LED显示条屏,主要是指单色显示的LED条屏,通常以红色或绿色为主
    的头像 发表于 06-13 14:20 1155次阅读

    数能低压恒流IC全集(适用于LED,车灯照明,UVC消毒LED商业照明,高端轨道照明等应用)

    、模组、筒灯,、格珊 LED广告灯箱, LED柜台灯, LED 手電筒/閃光燈,商场广告灯箱模组,广告亮化产品RGB 装饰
    发表于 05-10 10:46

    LED控制器H802RA直连麦爵士madrix软件教程

    认识类型(麦爵士是错误的叫法,其实所有都可以接入麦爵士,麦爵士只是一款电脑上应用的实
    的头像 发表于 02-27 17:16 1453次阅读
    幻<b class='flag-5'>彩</b><b class='flag-5'>LED</b>控制器H802RA直连麦爵士madrix软件教程

    低成本12V24V48V条高性能可变色调光芯片方案NU403

    NU403恒流芯片+普通调光器可变色温调光 ,面对LED市场成本要求高的用户端打造的一款芯片,,LED
    的头像 发表于 02-19 10:55 584次阅读
    低成本12V24V48V<b class='flag-5'>灯</b><b class='flag-5'>带</b><b class='flag-5'>灯</b>条高性能可变色调光芯片方案NU403

    全光谱和普通led的区别

    全光谱和普通led的区别  全光谱和普通LED是目前市场上常见的两种照明产品,它们在使用
    的头像 发表于 02-18 18:07 7703次阅读

    深入解析:DLT8SA04A芯片驱动的24V幻RGB动态软设计

    这款24V幻RGB动态软,搭载了先进的DLT8SA04A芯片,代表了智能照明领域的一次技术革新。其核心芯片DLT8SA04A,以其简化的电路设计和卓越的稳定性,为
    的头像 发表于 01-21 11:58 6184次阅读
    深入解析:DLT8SA04A芯片驱动的24V幻<b class='flag-5'>彩</b>RGB动态软<b class='flag-5'>灯</b><b class='flag-5'>带</b>设计

    LED的优点和用途

    LED是一种能效高、寿命长的照明产品,具有许多优点,并且在各个领域有广泛的用途。下面将介绍LED的优点和用途。 一、LED
    的头像 发表于 01-15 14:42 2860次阅读

    常见LED闪光电路图讲解

    LED闪光就是使用发光二极管(LED制作的闪光。它与传统的闪光相比,有体积小、色彩丰富、
    的头像 发表于 01-05 17:28 5885次阅读
    常见<b class='flag-5'>LED</b>闪光<b class='flag-5'>灯</b>电路图讲解

    护栏/点光源/软条专用LED驱动芯片推荐:SM16703P

    随着LED技术的不断发展,越来越多的应用场景开始使用LED作为照明光源。而在护栏、点光源、软条等特殊照明场景中,对LED驱动芯片有着更高
    的头像 发表于 12-20 15:54 984次阅读

    LED芯片:SM16703SP单点单控 断点续传

    LED芯片SM16703SP3是一款单点单控断点续传的芯片,它采用了先进的技术,可以实现灯光的变化和控制。这款芯片不仅仅可以提供各种丰富多彩的灯光效果,还有断点续传功能,
    发表于 12-18 14:45

    高压和低压的优缺点 高压和低压带到底有什么区别?

    高压和低压是两种常见的LED,它们在照明
    的头像 发表于 12-14 17:10 1.9w次阅读

    LED闪烁的原因 LED闪烁故障解决方法

    LED闪烁的原因 LED闪烁故障解决方法 LED闪烁是指在正常使用过程中,
    的头像 发表于 12-11 15:31 7477次阅读

    LED失效分析

    分析 1)对LED表面两处异常位置进行外观观察,两处位置均呈现片状发绿现象。 #LED7位置: #LED10位置: 2)将异常位置表面树
    的头像 发表于 12-11 10:09 715次阅读
    <b class='flag-5'>LED</b><b class='flag-5'>灯</b><b class='flag-5'>带</b>失效分析