本帖最后由 bigfanofloT 于 2016-12-25 14:25 编辑
本应用基于 机智云gokit3 SOC硬件平台,演示了如何通过手机APP下发数值量和枚举值控制一个RGB全彩LED的应用。 分为以下三步: 1. 机智云开发者中心创建产品; 2. 机智云开发者中心生成SOC方案工程; 3. 移植RGB LED驱动,编写用户应用; 首先在机智云开发者中心创建产品: 填写好产品信息后新建数据点,我们建立如下数据点: (注意枚举的LED颜色需要用英文逗号隔开,不能有空格!!!)
然后我们在开发向导里面,生成soc工程:
下载生成的工程,解压后,其目录如下:
各个文件作用如下:
生成的工程包含了基本的框架,需要用户自己添加驱动和应用逻辑,本例来说就是RGB LED的底层驱动和应用,生成的工程文件夹名太长,为了方便改为soc_esp8266_RGBLED。
这里,我们从机智云官网下载Gokit3 SOC微信宠物屋源码,把里面的关于底板RGB5050 全彩LED的驱动文件hal_rgb_led.h和hal_rgb_led.c文件拷贝到我们的工程中来。
下载源码:
http://dev.gizwits.com/zh-cn/dev ... hardware?type=GoKit
解压后找到如下2个RGB LED驱动文件:
把它们拷贝到生成的工程里面对应位置:
接下来就是修改生成的工程源码了,我这里使用notepad++文本编辑器修改;
找到..\app\user目录的主函数user_main.c文件,首先添加RGB LED驱动头文件路劲:
把RGB LED初始化函数放到void ICACHE_FLASH_ATTR user_init(void)里面:
在按键回调函数里面添加如下代码,是为了适应测试APP的提示;
找到..\app\Gizwit目录下的gizwits_product.c文件,首先是包含RGB LED驱动头文件:
然后在int8_t ICACHE_FLASH_ATTR gizwitsEventProcess(eventInfo_t *info, uint8_t *data, uint32_t len)函数里面添加对手机APP下发枚举颜色变量和颜色数值变量的处理:
工程修改完毕后,按照教程
http://docs.gizwits.com/zh-cn/de ... BC%80%E5%8F%91.html
搭建开发环境、编译代码、烧录。
视频:
工程文件:
|