完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
摘要(Abstract) 本文档仅介绍如何使用MiCOKit开发套件(MiCOKit-3288或MiCOKit-3165)开发一个简单的,通过微信读取温湿度传感器数值的应用实例过程。 适合读者(Suitable Readers) 本文适用于所有MiCOKit开发套件的开发者, 并适合所有MiCO-物联网(IoT)设备开发者参考。 版权声明(Copyright Notice) Copyright (c) 2015 MDWG Trust and the persons identified as the document authors. All rights reserved. 目录 微信读取温湿度传感器数值开发实例 1. 概述 2. 准备工作 3. 开发流程 4. 详细步骤 4.1. 注册开发者账号 4.2. 使用个人微信号开通测试公众号 4.3. 在FogCloud上创建、定义自己的产品 4.4. 在FogCloud上创建产品对应的微信APP 4.5. Github上创建微信APP代码托管仓库 4.6. 配置微信APP以及微信测试公众号 4.7. 使用MiCO SDK开发固件 4.8. 用IAR或MDK工具开发MiCOKit固件代码(代码注释) 4.9. 使用Github工具托管APP代码 4.10. FogCloud上生成设备二维码 4.11. 使用手机微信扫码,测试“Airkiss”配网功能以及设备控制功能 5. 版本更新 1. 概述 本文档仅介绍如何使用MiCOKit开发套件(MiCOKit-3288或MiCOKit-3165)开发一个简单的,通过微信读取温湿度传感器数值的应用实例过程。 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开发固件; 8. 用IAR或MDK工具开发MiCOKit固件代码(代码注释); 9. 使用Github工具托管APP代码; 10. 在FogCloud上生成设备微信二维码; 11. 手机微信扫码,测试Airkiss配网功能、设备控制功能。 4. 详细步骤 4.1. 注册开发者账号 登录www.fogcloud.io直接注册账号即可。该账号将用来管理你的产品及APP。 4.2. 使用个人微信号开通测试公众号 浏览器打开http://mp.weixin.qq.com/debug/cgi-bin/sandbox?t=sandbox/login,点击登录,使用手机微信扫码,进入后即开通了测试公众号。 获得微信号、appID、appsecrect,用于后续在FogCloud上创建产品对应的微信APP。 4.3. 在FogCloud上创建、定义自己的产品 根据提示填写相关信息,创建完成后,如下 点击产品名称,进入详细信息: 产品ID/KEY会写到设备固件代码中; 创建产品的数据模型,数据模型是用来在云端定义产品功能、性能等特征数据的标准格式,可以储存设备监控、收集、控制、用户行为等数据,从而对数据进行分析,提升产品服务,开发案例过程中定义数据模型,能够有效帮助开发者将APP、云端与设备端的关键功能、特征数据等同步,避免开发过程出错。 本实例读取温度与湿度数据,所需创建的数据点为: 1)温度(temp) 读写属性为0 时间序列为否 2)湿度(humi) 读写属性为0 时间序列为否 *属性名和描述可按个人习惯添加 注意:在创建数据点时,“时间序列”选项:选中时云端保存历史数据;不选时云端只保存最新的数据。数据模型的具体作用在后面的进阶教程中详细讲解。 4.4. 在FogCloud上创建产品对应的微信APP 根据提示,填写相关信息,其中:微信号、AppID/AppSecret从步骤2中开通的微信测试公众号中获得。 4.5. Github上创建微信APP代码托管仓库 请登录github.com自行创建新仓库。并克隆到本地,克隆方法详见《上传文件到GitHub》。该步骤的目的是获得一个可以在任何地方访问的git仓库,后面会使用该仓库托管微信APP的代码(其他类似git仓库托管工具也可以)。 获得仓库地址,例如:https://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-f ... ylink.io/wechat.php 下划线部分作为JS接口安全域名和授权回调页面域名。域名中不包含http:// 和 /wechat.php!!! 开通微信测试号的所有测试功能,如下图1,2 点击4修改,填写网页授权域名,打开如下: 同“JS接口安全域名”,格式为前面提供的URL的域名部分,如xxxx.app.easylink.io,其中“xxxx”为FogCloud上创建的微信APP的id。 4.7. 使用MiCO SDK开发固件 (a) 登陆MiCO开发者网站mico.io,去MiCO社区注册账号,并登陆; (b) 重新打开mico.io英国威廉希尔公司网站 ,开发者中心 ==> Wiki中心—MiCOKit发布中心,下载MiCOKit SDK。 (c) 打开MiCOKit SDK中的微信开发实例工程: 1),开发者手中拿到的可能是硬件平台可能是MiCOKit3288或者MiCOKit3165,在编译工程时要先选择硬件平台; 2)将FogCloud上创建的产品ID/KEY写入固件(必须替换): 3)修改版本号,这样才能把新的产品ID/KEY烧入FLASH 4)添加读取温湿度代码: 5)改为从开发板上读取温湿度数据后,打包成JSON格式,并上传到FogCloud。 6)错误代码参考:在运行过程中如果出现错误,可在user_log中查看错误代码。 7)MiCOKit SDK固件烧录。(详细固件烧录方法及步骤请参考http://mico.io wiki中心) 选择使用的烧录工具J-Link或者ST-LINK: 8)编译/连接: 9)烧录/下载: 4.8. 用IAR或MDK工具开发MiCOKit固件代码(代码注释) //应用程序入口在application_start(void),一系列动作(如配网、连接云等)以后,用户程序入口在这里。 OSStatus user_main( mico_Context_t * const mico_context ) { user_log_trace(); OSStatus err = kUnknownErr; json_object *send_json_object = NULL; const char *upload_data = NULL; uint8_t ret = 0; uint8_t dht11_temperature = 0; uint8_t dht11_humidity = 0; // 将温度与湿度数值同步显示在OLED上 char oled_show_line[OLED_DISPLAY_MAX_CHAR_PER_ROW+1] = {' |