请选择 进入手机版 | 继续访问电脑版
查看: 315|回复: 0

使用ESP8266驱动WS2812B型RGB LED简单3步打造智能灯

[复制链接]

18

帖子

18

主题

62

积分

版主

Rank: 7Rank: 7Rank: 7

积分
62
发表于 2017-6-29 15:39:40 | 显示全部楼层 |阅读模式
前言:本文描述了如何仅使用一片esp8266的1个GPIO驱动WS2812B型全彩RGB LED,底层驱动参考了https://github.com/cnlohr/ws2812esp8266,驱动程序还移植Adafruit_NeoPixel的应用库,可实现多种常用特效。在此基础上还连接到了机智云物联网平台,利用其强大的代码自动生成工具,简单三步即完成了一个智能灯的开发。
视频:
Step1:在开发者中心新建产品;
Step2:添加数据点,可使用微信宠物屋Demo模板导入,删除不需要的即可;
Step3:在MCU开发栏目选择SoC方案生成代码SDK;
Step4: 下载通用版本调试APP,支持安卓和IOS:

Step5:把下载的SDK改个名字,原来的有点长,不方便,我这里改为SoC_ESP8266_WS2812B_SmartLEDs
然后添加WS2812B型RGB LED的驱动文件(可在附件源码中找到这2个驱动文件):
把Adafruit_NeoPixel.c文件放到SoC_ESP8266_WS2812B_SmartLEDs\app\driver下

把Adafruit_NeoPixel.h文件放到SoC_ESP8266_WS2812B_SmartLEDs\app\include\driver下
本驱动提供如下功能:

Step6:用文本编辑器如notepad++、SubelimeText等打开目录SoC_ESP8266_WS2812B_SmartLEDs\app\user下的user_main.c文件,然后做如下修改;

首先添加头文件:
我们此次使用的是gokit3SoC开发板,由于驱动LED的GPIO是GPIO0(Gokit3 SoC开发板上对应D6),而生成的代码包默认使用了GPIO0连接到了Gokit3 SoC版的按键key1,因此把按键1相关删除,一般不需要使用产测功能,若自己使用esp8266-12f搭建最小系统,可保留此功能:
然后在主函数里面调用LED的初始化:
Step7:打开目录SoC_ESP8266_WS2812B_SmartLEDs\app\Gizwits下的gizwits_product.c文件;

首先添加头文件:
然后在有userhandle注释的地方添加用户代码:

如下是ESP8266接收到手机APP指令后执行的动作;

源码开发环境搭建,固件烧录教程查看:


加入汇思锐,和智能生活沟通零距离! 用科技改变生活,用想法构思未来!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

论坛灌水区开通公告上一条 /1 下一条

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表