3) 例程运行
a) HelloWorld程序获取
双击打开CDK,点击工具栏最右侧的平头哥图标,在弹出来的搜索栏里输入HelloWorld,在结果里选择ch2601_HelloWorld,点击右侧的【创建工程】。
b) 编译
右键点击Ch2601_HelloWorld工程,选择build,进行编译,直到结束。
编译完成后,可以在工程目录下obj文件夹里找到ch2601_HelloWorld.elf可执行文件。
c)下载
点击flash菜单,选择【Download】子菜单,进行镜像下载。
下载完成后可以看到以下对话框信息。
d)运行
按照RVB2601板子上的RST复位键,程序会自动执行。
在串口客户端里可以看到以下打印信息,说明程序已经正确执行。
5)设备接入阿里云
a)物联网平台介绍
阿里云物联网平台是一个集成了设备管理、数据安全通信和消息订阅等能力的一体化平台。向下支持连接海量设备,采集设备数据上云;向上提供云端API,服务端可通过调用云端API将指令下发至设备端,实现远程控制。物联网平台与设备、服务端、客户端的消息通信流程如下。
物联网平台链接:https://iot.console.aliyun.com/lk/summary/new
① 登录物联网平台控制台。然后在实例概览页面,单击【公共实例】。物联网平台界面如下:
② 在左侧导航栏,选择【设备管理】>【产品】,单击【创建产品】。根据自己的实际情况创建产品,例如创建一个简单的灯。
③ 创建完产品,可以在设备页面添加设备。
④ 在设备详情页面,单击DeviceSecret右侧【查看】,获取设备证书。
b)设备端开发
跟其他功能开发一样,下载demo:ch2601_webplayer_demo。
下载到本地后编译,如有未下载的SDK库文件,右键下载。
无错误,无警告后,下载例程到开发板,按RST重启设备。连接串口助手,除了启动信息之外,隔一会就会打印数据w800_apidishandle:2。
① 首先需要给设备联网,再观察启动日志,发现这么一段代码。
[2.650]<I>netmgr_WiFissid{CSKY-T},psk{test1234}
在工程中找到这段代码,修改相应的WiFi名和密码。如下,其中123和12345678分别对应WiFi名和密码。
#ifdef CONFIG_KV_SMART if( aos_kv_get(KV_WiFi_SSID,config->ssid_psk.ssid,&config->ssid_psk.ssid_length)< 0 || aos_kv_get(KV_WiFi_PSK,config->ssid_psk.psk,&config->ssid_psk.psk_length)< 0){ strcpy(config->ssid_psk.ssid,"123"); config->ssid_psk.ssid_length = 6; strcpy(config->ssid_psk.psk,"12345678"); config->ssid_psk.psk_length = 8; } #endif slist_add_tail((slist_t *)node,&netmgr->dev_list); hal_WiFi_init(node->dev); }
② 再次编译下载、运行。在串口中输入ifconfig命令,发现设备已经联网成功。
③ 完成联网后,下一步就是上云了,可以使用阿里云生活物联网平台
如上图,在产品中直接点物联网IOT,右边还有两个物联网平台,这个AT指令集只是阿里云物联网平台的。
可以用阿里云物联网平台方式设置设备五元组,其实如果只是物联网平台,只用设置三元组。
参考两条AT指令,设置设备五元组:
AT+IDMAU="PRODUCT_KEY","DEVICE_NAME","DEVICE_SECRET","PRODUCT_SECRET" 连接+IDMCON
AT+IDMCON
④ 添加后编译下载,复位开发板。
进入【设备管理】->【设备】,在线了,就可以使用了。
⑤ 流程已经通了,设备也能配网上云了,产品思路基本能实现,接下来就可以做些便捷开发,配网通过串口或者其他软件配置,数据能上云,云端能控制设备。