MQTT 协议应用实例
基于 NuMaker-IoT-M487 平台,轻松完成云连接
NuMaker-IoT-M487 开发板提供多元连网方式与接口。基于NuMaker-IoT-M487 开发板,通过与 Wi-Fi 模块进行 AT 指令串口通信,可快速实现与云连接的 IoT物联典型开发应用实例。入门教程包含如何在您的计算机获取开发软件、实例编译、固件下载以及连网、连接云测试。
NuMaker-IoT-M487 开发板整合常用组件,内建多轴传感器,提供兼容 Arduino UNO 与 mikroBUS™ 接口,不论是 GPIO、UART、ADC、PWM、SPI 或 I2C 等等都能连接;外挂 SPI Flash 及提供 microSD 卡插槽。
软件需求
Window 7/8/10 操作系统
Arm Keil MDK v5 – 工程编译软件
Tera Term – 终端联机工具
阿里巴巴 AliOS Things 开发包(https://github.com/wosayttn/AliOS-Things/tree/numicro)
硬件需求
NuMaker-IoT-M487 开发工具包
USB Micro 数据传输线 1 条
可连接网际网络的 Wi-Fi Router 1 台
第一步
从 Github website 下载开发软件
请进入代码仓库页面,操作步骤如图所示:最后,解压缩下载的档案。仓库代码页面地址:https://github.com/wosayttn/AliOS-Things/tree/numicro
第二步
mqttapp 工程编译
进入解压缩的目录
\AliOS-Things\projects\Keil\mqttapp@numicro-iotm487\keil_project
并打开 mqttapp@numaker-iot-m487 Keil 工程并进行工程重新建置。
Keil工程重新建置成功后,输出的二进制映像档案输出路径
\AliOS-Things\projects\Keil\mqttapp@numicro-iotm487\keil_project\Objects\mattapp@numaker-iot-m487.bin
第三步
固件下载
简易的下载方法: 透过拖拉二进制映像档案(mattapp@numaker-iot-m487.bin)到 NuMicro MCU 虚拟磁盘或是使用传送到 NuMicro MCU 虚拟磁盘的方式,即可完成固件下载。
(1) NuMicro MCU 虚拟磁盘
首先,配置 NuMaker-IOT-M487上的 ISW1,将四个开关拨到 ‘ON’ 的位置,如 图 1 所示。配置完成后,将开发板使用 Micro USB 连接线连接计算机(图2),我的计算机将出现一个 NuMicro MCU 虚拟磁盘。接下来,我们将使用这个虚拟磁盘来进行固件下载。(注意:若需要进行 IAR/MDK 源码除错功能,需要将第 4 个指拨开关切换回到 OFF 的位置。)
图1:NuMaker-IoT-M487 开发板 ISW1 配置
图2:NuMaker-IoT-M487 连接计算机 USB 端口
(2) 刻录二进制执行档案
拖拉二进制映像档案至 NuMicro MCU 磁盘,完成固件下載。mqttapp示例的二进制映像档案mqttapp@numaker-iot-m487.bin 整体路径如下。
\AliOS-Things\projects\Keil\mqttapp@numicro-iotm487\keil_project\Objects\mattapp@numaker-iot-m487.bin
(3) 测试Wi-Fi本地端连网
使用 Tera Term 终端软件,操作 AliOS Things 的命令行功能。串口的配置如图所示。(注意:
Nuvoton Virtual Com Port 对应的串口编号可在设备管理器内找到。例如: 串口编号为 COM30。)
打开串口通信后并且按下板子的 Reset 键。待系统重置后,Tera Term 终端画面印出开机信息。
首次启动时需要手动配网,配网命令如下
netmgr connect ssid password open|wep|wpa|wpa2
ex: ssid: NT_ZY_BUFFALO, password: 12345678
第四步
测试连接阿里云云端服务
连接阿里云 MQTT 云端服务器,需要申请三元组信息、并在 mqtt_example.c 代码内配置三元组信息,mqttapp 代码默认的三元组信息為测试使用。在成功连结 Wi-Fi 局端网络后,mqttapp 示例将自动联机至阿里云 MQTT 云端服务器。使用自行申请的三元组信息进行产品开发与测试,关于阿里云三元组信息的申请、配置,可请参照 AliOS Things 官方的说明文件。
阿里云三元组信息配置示例
成功连接阿里云 MQTT 云端服务器示例
|