电子说
第1步:Digispark和PlatformIO
Digispark (每个克隆都涉及相同的8位微控制器)围绕AVR Attiny85构建的分线板,借助Micronucleus 引导程序,可以进行简单的USB通信。
请在其维基上找到更多信息:http://digistump.com/wiki/digispark
PlatformIO 是用于编程Digispark的生态系统。要使用它,您必须安装Visual Studio代码。
步骤2:原理图和接线
焊接:
将三条线连接到WS2812条(接地,电源输入和数据输入)
接地线和Vcc到5V和Digispark的GND引脚
将剩余线焊接到Digispark的P0引脚
将一个10KΩ电阻焊接到GND和P2引脚电路板
使用两根电线将LDR连接到5V和P2引脚(出于美观原因,我使用了几乎看不见的漆包线)
第3步:固件
在我的GitHub上找到这个项目的代码:https://github.com/fbattarra/attiny85_8bit_ldr_rai.。.
要知道:
使用PlatformIO时必须使用#include
参数,如引脚分配,WS2812 LED数量,彩虹轮速度以及LED和LDR的暗/亮阈值在代码的开头
Adafruit N. eopixel是用于控制WS2812 LED的库。
RunningMedian库用于使LDR读数更稳定;由于边界设置,映射LED亮度边界,这在低亮度条件下特别好,其中微小的波动可能导致恼人的闪烁
您将找不到任何锁定Attiny85的尝试,所以该项目将保持可编辑状态
一些提示(也出现在GitHub上的README.md文件中):
要上传代码,请确保每根引脚连接一根USB线:便宜的充电线通常只有+ 5V和接地线
从PlatformIO上传到DigiSpark需要你在编译后插上DigiSpark,即使控制台没有警告“现在是时候插上你的DigiSpark了,就像Arduino IDE那样。
快速解决从MacOS上的PlatformIO上传到DigiSpark的问题:PIO问题111
廉价的USB充电器可能会提供脏/噪声输出,这可能会使LED奇怪地闪烁,特别是在低亮度时:确保有一个干净的5VDC电源,或过滤器添加一个电容器(或更合适的电路)
步骤4:外壳和整理触摸
刻一个洞在您选择的托管项目的框中,插入USB线。请注意,微型USB连接器周围的孔越大,LED灯的光泄漏越多,除非您不提供一些不透明的密封。
为LDR开辟一个漏洞;确保使其指向不会被LED照亮的区域,否则自动调节将陷入环路
雕刻内表面为LED条形空间,就像你应该的那样
用LDR底部的不透明介质密封,以避免任何干扰传感环境的亮度造成的WS2812条
使用一滴不透明的油漆来掩盖Digispark电源,从而避免它在灯箱内闪亮。
胶水Digispark板,LED条,LDR和每根电缆,以避免空心盒内部看起来不整洁
预见带有开关的USB线,以便轻松打开和关闭灯
全部0条评论
快来发表一下你的评论吧 !