
本帖最后由 micolover2015 于 2015-7-31 11:44 编辑 微信控制RGB灯开发实例 摘要(Abstract) 本文档仅介绍如何使用MiCOKit开发套件(MiCOKit-3288或MiCOKit-3165)开发一个简单的,使用微信控制RGB LED灯的应用实例过程。 适用对象(Suitable Readers) 本实例适用于MiCOKit开发套件的开发者。 并适合所有MiCO-物联网(IoT)设备开发者参考。 版权声明(Copyright Notice) Copyright (c) 2015 MDWG Trust and the persons identified as the document authors. All rights reserved. 目 录 1. 概述 本文档仅介绍如何使用MiCOKit开发套件(MiCOKit-3288或MiCOKit-3165)开发一个简单的使用微信控制RGB LED灯的应用实例过程。 2. 准备工作注意:开始前请确定射频驱动为最新版本, 版本查询及升级方法请参考MiCO社区 → wiki中心 → MiCOKit板块射频驱动升级 1. MiCOKit-3288开发套件; 2. 开发工具请使用IAR7.3版本及以上; 3. FogCloud开发者账号(Fog云使用、开发必须); 4. SDK_MiCOKit_V2.2.0.3(最新版本下载请至:http://mico.io/wiki/doku.php?id=micokit_sdk); 5. 个人微信号(开通测试公众号); 6. github个人账号(托管微信APP代码); 7. 网页编辑工具(sublime等); 8. 大致了解MQTT协议及json格式。 3. 开发流程1. 注册FogCloud开发者账号; 2. 使用个人微信号开通测试公众号; 3. 在FogCloud上创建、定义自己的产品; 4. 在FogCloud上创建产品对应的微信APP; 5. Github上创建微信APP代码托管仓库; 6. 配置微信APP和微信测试公众号; 7. 使用MiCOKit SDK开发RGB LED灯的固件; 8. 用IAR或Keil MDK工具开发MiCOKit固件代码(代码注释部分); 9. 使用Github工具托管APP代码; 10. 在FogCloud上生成设备微信二维码; 11. 手机微信扫码,测试Airkiss配网功能、设备控制功能。 4. 详细步骤4.1. 注册开发者账号 登录www.fogcloud.io直接注册账号即可,该账号将用来管理你的产品及APP。 ![]() 浏览器打开http://mp.weixin.qq.com/debug/cgi-bin/sandbox?t=sandbox/login,点击登录,使用手机微信扫码,进入后即开通了测试公众号。 ![]() 获得微信号、appID、appsecrect,用于后续在FogCloud上创建产品对应的微信APP。 ![]() 4.3. 在FogCloud上创建、定义自己的产品 ![]() 根据提示填写相关信息,创建完成后,如下 ![]() 点击产品名称,进入详细信息: ![]() 产品ID/KEY会写到设备固件代码中; 创建产品的数据模型,数据模型是用来在云端定义产品功能、性能等特征数据的标准格式,可以储存设备监控、收集、控制、用户行为等数据,从而对数据进行分析,提升产品服务,开发案例过程中定义数据模型,能够有效帮助开发者将APP、云端与设备端的关键功能、特征数据等同步,避免开发过程出错。 ![]() 本实例仅控制MiCOKit-3288上的一个RGB LED灯,所需创建的控制数据点有: 1)开关(rgbled_switch) 读写属性为1 时间序列为否 2)色相(rgbled_hues) 读写属性为1 时间序列为否 3)饱和度(rgbled_saturation) 读写属性为1 时间序列为否 4)亮度(rgbled_brightness) 读写属性为1 时间序列为否 *属性名和描述可按个人习惯添加 注意:在创建数据点时,“时间序列”选项:选中时云端保存历史数据;不选时云端只保存最新的数据。 数据模型的具体作用在后面的进阶教程中详细讲解。 4.4. 在FogCloud上创建产品对应的微信APP ![]() 根据提示,填写相关信息,其中微信号、AppID/AppSecret从步骤2中开通的微信测试公众号中获得。 ![]() 4.5. Github上创建微信APP代码托管仓库 请登录github.com自行创建新仓库。并克隆到本地,克隆方法详见《上传文件到GitHub》。该步骤的目的是获得一个可以在任何地方访问的git仓库,后面会使用该仓库托管微信APP的代码(其他类似git仓库托管工具也可以)。 ![]() 获得仓库地址,例如:http://github.com/wangeshen/MiCOKit_test.git 4.6. 配置微信APP以及微信测试公众号 (a) FogCloud上的微信APP信息: ![]() 其中URL和Token会在后续配置微信测试号时用到。 (b)Git部署(同步微信APP代码到FogCloud) ![]() 其中: Repo即步骤5中创建的github仓库地址,填写后保存; Deploy key和Web Hook Url可添加到github仓库的设置中,以自动同步代码到FogCloud;也可以不添加,但是github仓库中代码更新后,需要手动点击“发布”按钮来同步代码,同步后右边可看到最新的代码提交记录。 ![]() (c) 微信菜单管理 通过FogCloud提供的微信公众号首页菜单定制功能,方便的定制手机端微信上的控制界面及功能;至少包含“Airkiss”按钮,打开微信Airkiss配网功能,“OAuth”按钮(名称可自定义)进入设备控制。 ![]() (d) 设置微信测试公众号 URL与Token在创建的APP信息中可以找到 修改配置信息: URL一般为:http://4addb71f-1b5c-XXXX-94c5 ... t.php 下划线部分作为JS接口安全域名和授权回调页面域名。域名中不包含http:// 和 /wechat.php!!! ![]() “开启”微信测试号的所有测试功能,如下图1,2,3: ![]() 点击4,修改“网页账号”,打开如下: ![]() 4.7. 使用MiCO SDK开发RGB LED灯的固件 (a)登陆MiCO开发者网站mico.io,去MiCO社区注册账号,并登陆; ![]() (b) 重新打开mico.io首页,开发者中心 ==> Wiki中心,下载MiCO SDK。 ![]() (c) 打开MiCO SDK中的微信开发实例工程: ![]() 1)开发者手中拿到的可能是硬件平台可能是MiCOKit3288或者MiCOKit3165,在编译工程时要先选择硬件平台; 2)将FogCloud上创建的产品ID/KEY写入固件(必须替换): ![]() 3)修改版本号,这样才能把新的产品ID/KEY烧入FLASH ![]() 4)添加LED灯控制代码: ![]() 5)改为收到云端消息后,解析JSON数据,并控制LED。 ![]() 6)错误代码参考:在运行过程中如果出现错误,可在user_log中查看错误代码。 ![]() ![]() 7)MiCO SDK固件烧录。(详细固件烧录方法及步骤请参考http://mico.io wiki中心) 选择使用的烧录工具J-Link或者ST-LINK: ![]() 编译/连接: ![]() 烧录/下载: ![]() 请移步:微信控灯11式(利用微信控制RGB LED灯)(2) https://www.stmcu.org.cn/module/ ... p;extra=#pid2106254 |