作品是基于涂鸦CBU模组的DIV幻彩灯,主控板使用Arduino UNO,手机APP使用涂鸦智能APP。
1、多种情景模式
2、定时关灯操作
3、本地音乐模式
4、颜色控制
https://github.com/nickzhuang0613/colour-led.git
硬件:altium designer 2015
软件:Visual Studio 2017 + Arduino IDE + Arduino IDE for Visual Studio
https://www.bilibili.com/video/BV1wU4y157B8/
a.打开涂鸦IOT页面【https://iot.tuya.com/】
b.点击“创建产品”
c.依次选择 “照明”、“幻彩灯带”创建产品
d.根据提示完成产品的方案选择和产品信息,然后点击"创建产品"
e. 进入产品开发页面,完成产品控制面板等开发,复制产品PID备用
查找灯珠资料,评估灯珠功耗和模组的功耗以及主控的电源系统驱动能力,确定方案的灯珠数目;以及产品整体表现形式。【我自己的:模组集成在灯板上,方便后期裁剪做成球泡灯】\
(1)制作PCB需要用到的封装【CBU模组和WS2812灯珠】
a.WS2812灯珠
b.CBU模组
(2)PCB设计
(3)外发打板
按照原理图购置需要的物料和主控板
(1)焊接,确保所有模块电源系统没有焊接出错
(2)通电,确保模块工作起来后主板电源系统稳定而且保证灯组通电也会稳定
根据原理图完成对板载LED的控制,以实现调试代码的时候作为指示。
class LED
{
public:
LED(uint8_t pin = 13);
~LED();
void led_on(void);
void led_off(void);
void led_toggle(void);
public:
bool led_status;
private:
uint8_t led_pin;
};
(1)安装“Adafruit_NeoPixel”库
(2)继承“Adafruit_NeoPixel”库,完成对WS2812灯珠的基本驱动
class WS2812 : public Adafruit_NeoPixel
{
public:
WS2812(uint16_t n, uint16_t pin = 6, neoPixelType type = NEO_GRB + NEO_KHZ800);
~WS2812();
void ws2812_fill(uint32_t color);
void ws2812_fill(uint32_t color, uint32_t interinterval);
void ws2812_fill(const uint32_t *color, uint16_t n);
void ws2812_fill(const uint32_t *color, uint16_t n, uint32_t interinterval);
void ws2812_rainbow();
void ws2812_data_ctl(const unsigned char value[], uint16_t length);
public:
private:
uint16_t ctl_pin;
uint16_t led_num;
};
(1)安装涂鸦的WIFI库“Tuya_WiFi_MCU_SDK”
(2)参考DataPointType实例,完成CBU模组的驱动
(3)涂鸦IOT生成App,借助Arduino串口完成CBU模组驱动的调试
综合所有模块,完成需要的功能
涂鸦模组MCU SDK进行开发比较简单,步骤也比较明晰。适合需要快速接入云实现产品落地的公司。
您正在浏览的内容为涂鸦开发者平台注册用户自主发布,版权归原作者所有,涂鸦开发者平台不拥有其著作权,亦不承担相应法律责任,涂鸦开发者平台不对该等内容作出不违反、不侵权的陈述与保证。您应知晓并了解您对于该等内容的复制、改编、转发传播等任何其他使用行为应当符合法律法规并应取得相关权利人的许可,您的该等行为所造成的全部相应后果(包括但不限于侵权、违约、受损、与第三方的纠纷等)均应由您个人承担。内容知识产权相关条款可查看《涂鸦开发者平台用户协议》。如果您发现有涉嫌侵权的内容,请立即通过平台上的联系方式联系平台进行举报并发送有关证据,一经查实,平台将立刻删除涉嫌侵权内容。