概述
本文讲解如何移植Link SDK到Windows操作系统,在Windows下运行demo程序连接到阿里云物联网平台,本文的示例中将涉及以下功能点:
- 使用MQTT连接阿里云物联网平台,连接使用TLS进行加密。
- 使用一机一密方式对设备进行认证。
- 如何使用MQTT TOPIC进行数据收发。
- 如何实现相关HAL。
开发环境描述
操作系统版本 | Win7 |
---|---|
IDE | Eclipse IDE for C/C++ Developers,版本:2019-03 (4.11.0) |
包管理工具 | MSYS2 |
Toolchain | mingw-w64-x86_64-toolchain |
TLS库 | openssl,版本1.1.1.b-1 |
说明 若用户未安装Eclipse开发环境,可参考Eclipse开发工具的官网。
请确认开发环境中openssl已安装,在MSYS2的命令行工具中输入。
pacman -Sl |grep openssl
确保输出的内容中,如下图框选的openssl库显示![](https://cdn.nlark.com/yuque/0/2019/png/288961/1557040186068-2a908a53-3727-43a7-958b-6054fae775f2.png#align=left&display=inline&height=245&originHeight=284&originWidth=599&status=done&width=516)
已安装
。![](https://cdn.nlark.com/yuque/0/2019/png/288961/1557040186068-2a908a53-3727-43a7-958b-6054fae775f2.png#align=left&display=inline&height=245&originHeight=284&originWidth=599&status=done&width=516)
前置文档
在开始实际开发之前请务必阅读以太网设备接入过程说明,了解基本概念。
示例产品功能描述
示例产品连接到阿里云物联网平台之后,将会订阅TOPIC “/${ProductKey}/${deviceName}/user/get”的数据,然后每4秒发送一个消息到该topic,意味着这个消息会被发送到物联网平台,然后由于设备自己订阅了这个topic,因此设备发送到物联网平台的消息将会被平台发送给设备。![](https://cdn.nlark.com/yuque/0/2019/png/288961/1557045098872-ed59edf6-c08f-4a50-93b8-99faf1ad6860.png#align=left&display=inline&height=128&originHeight=160&originWidth=575&status=done&width=460)
![](https://cdn.nlark.com/yuque/0/2019/png/288961/1557045098872-ed59edf6-c08f-4a50-93b8-99faf1ad6860.png#align=left&display=inline&height=128&originHeight=160&originWidth=575&status=done&width=460)
因此从设备的角度来看,示例产品的功能就是将消息发送到物联网平台,并将其接收回来。
云端操作
- 创建以太网产品。
- 创建调试设备。
- 修改Topic属性。
示例代码中使用到的Topic “/${ProductKey}/${deviceName}/user/get”默认只有“订阅权限”,需要将其修改为“发布和订阅”,因为设备将会发送消息到这个topic。修改后的显示如下所示。
说明 用户创建的产品用于ProductKey将会与示例不同,因此上图中Topic中的a1a840P0BS3将会显示用户创建产品的ProductKey。
设备端开发过程
文档参考
当设备可以连接到物联网平台之后,用户会进行自己的产品逻辑的编写,请参考下面的章节了解更多细节。