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

EMW3060 AliOS Things 阿里智能生活平台代码讲解

[复制链接]

7

主题

8

帖子

68

积分

注册会员

Rank: 2

积分
68
发表于 2018-12-1 16:23:57 | 显示全部楼层 |阅读模式
本帖最后由 银尔达-杨洋 于 2019-3-29 01:45 编辑



(资料点击上图获取)

EMW3060 AliOS Things 阿里智能生活平台代码讲解
yinerda_mixchip_kit_led 工程分析
yinerda_mixchip_kit_led 是在linkkitapp基础上修改的。
根据readme可知,linkkitapp 默认情况下只会编译linkkit_example_solo.c和app_entry.c文件,linkkit_example_solo.c 文件中使用了data/solo_tsl.data 里面的TSL_STRING 物模型数值。
8.1、创建产品
在智能生活平台创建一个项目,在项目里面创建一个产品,这个产品的名称是银尔达球泡灯

8.2、添加数据节点
增加一个数据节点RGB

8.3、新增设备
在设备调试界面新增调试设备,每个设备都有三元素,是设备的凭证,需要保密。

8.4、修改 solo_tsl.data
需要把设备的tsl数据赋值给TSL_STRING 数组,其来源是8.2 节中查看JSON里面的数据经过压缩转义后得到的
压缩转义工具连接:https://www.sojson.com/yasuo.html

8.5、修改linkkit_example_solo.c
8.5.1、包含驱动头文件
工程中yinerda 文件夹里面包含了led和按键的操作

8.5.2、修改设备元素
根据自己增加的设备和产品信息替换下面4个参数。

8.5.3、添加按键状态变量和设备user key按键检查函数

8.5.4、修改thing_prop_changed 函数,获取APP控制开关LightSwitch的状态
LightSwitch 是数据节点,当LightSwitch 被设置为0,熄灭LED,如果设置为1,点亮LED


8.5.5、在linkkit_example函数中,在循环里面添加函数处理

8.5.6、CheckDevcieSwitch函数的实现,获取到按键的状态,当按键按下了,如果LED是熄灭状态,就点亮LED,如果是点亮状态就熄灭。然后调用linkkit_set_value和linkkit_post_property 函数把LightSwitch数据节点的最新值上报给云端,gswitchState 变量是与APP下发控制的同一个变量,用于本地控制和云端控制同步。


8.5.7、修改app_entry.c
app_entry.c 文件基本可以不修改,但是为了增加现象,当配网按键ELINK按下的时候,点亮led1,当长按ELINK 清除配网信息的时候,点亮led2


8.5.8、修改board/mk3060/board.c
AliOS-Things在EMW3060的配网管脚是BOOT管脚,这个管脚在MIXCHIP KIT 开发板上面的WIFI转接板上面,操作有点不方便。这里改成ELINK 按键。在board 目录下再找到mk3060,打开board.c,把KEY_BOOT 的宏定义改成2。


根据上述的修改基本就能够完成修改了设备连接云操作了。

8.6、设备调试
在设备远程调试的界面,可以监控到设备上报的日志,同时也能下发控制命令。

8.7、参考资料
参看智能生活平台开发文档,WIFI开发基本上面使用这篇文档能够解决问题。


回复

使用道具 举报

0

主题

9

帖子

35

积分

新手上路

Rank: 1

积分
35
发表于 2018-12-9 16:00:27 | 显示全部楼层
这个例程还好,比较简单,uart的看不了
回复

使用道具 举报

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

本版积分规则

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