前言 7 K" t$ v1 U4 U [. A4 I 阿里云物联网平台(原名物联网套件,下文两者通用)是阿里云专门为物联网领域的开发人员推出的,其目的是帮助开发者搭建安全且性能强大的数据通道,方便终端(如传感器、执行器、嵌入式设备或智能家电等等)和云端的双向通信(http://cn.aliyun.com/product/iot)。本文描述了基于 STM32 系列 MCU 连接阿里云的方案,详细说明了如何使用集成了阿里云物联网套件的 STM32 扩展开发包。 硬件概述 * V7 ?2 s; k) ]# g2 e/ [, z STM32 NUCLEO-L476RG ! C; z% d! }4 |* l+ w3 s/ h% v6 n' Y; _ 从 www.st.com 搜索关键字 NUCLEO-L476RG 可以得到此开发板的详细介绍。
% X% A7 h, F6 D' i) e MXCHIP EMW3080 WiFi 扩展板 + p9 K) D" E+ |8 e# d EMW3080 WiFi 扩展板也集成了 Arduino 接口扩展插座,可与 NUCLEO-L476RG 开发板连接。但是 Wifi 扩展板上的 wifi 模块 收、发引脚接在了 Arduino 插座的 D0 和 D1 管脚,即下图中的 RXD 和 TXD;而在 NUCLEO-L476RG 开发板上,Arduino 接 口插座的 D0 与 D1 管脚默认对应的 MCU(L476)的 PA2 和 PA3 管脚,正好是是 USART2 接口的 Tx和 Rx,并已经连接至 STLink,以实现 STLINK 的 USB 桥接串口的虚拟串口功能。 我们希望保留 STLink 虚拟串口功能,供调试打印用。因此,需 要将 Wifi 扩展板上 Arduino 接口的 D0 与 D1 管脚,即 WiFi 模块的收、发引脚,与 MCU 的 USART1 连接(PA9 和 PA10)。 + A! N2 z, g- U2 {& [. \% s- O5 t - U. X/ O; ~: o B d% E 8 m" ^0 V7 t7 v: I 跳线如下: · WiFi 扩展板的 RxD 连接 morpho 插座 (CN10)的管脚 33。 · WiFi 扩展板的 TxD 连接 morpho 插座 (CN10)的管脚 21。 实际连接如图所示: 板子上原来的跳线都不需要改变,也不需要吹焊solder bridge(默认状态母板上 D0、D1 没有连到MCU 的 UART1), 只需要几根连接线就可以完成连接。 软件环境和工具 7 b. W4 Y/ R2 k; d8 D
阿里云物联网套件 SDK * Y, R8 R2 w& Z2 x, ~( j7 \8 H 1 k$ ]2 k" _3 F 阿里云物联网套件主页:http://cn.aliyun.com/product/iot 阿里云物联网套件 SDK 源代码则已经开放在 http://github.com/aliyun/iotkit-embedded 。 ; [" |& s4 [* N2 [( e' ~/ l/ L' s& _ 基于 STM32 的阿里云物联网套件方案开发包已经集成了 Ali 物联网套件 SDK2.03 http://github.com/aliyun/iotkit embedded/releases/tag/RELEASED_V2.03。在集成过程中,整个 SDK 目录文件结构保持不变,方便用户在将来自行替换更 高版本的 Ali 物联网套件,如下图: 在云端开通 Ali 物联网套件 # `8 c8 M( I- C6 ? 8 x ^4 y N; o 将设备接入云端,第一步是要在云端开通物联网套件,注册产品和设备。用户可参照阿里云帮助文档里的“阿里云物联网套6 q3 j; O3 z# f0 [* B 件 > 控制台使用手册 > 产品管理 > 设备接入准备”的详细说明,也可以参照以下步骤:
一步一步创建完成后,用户也可以从控制台中的设备管理,点击相应的设备,查看设备基本信息,就可以一次性获得productKey, 设备名称(deviceName)以及 deviceSecret。 / P. a8 c! v' r. J$ ~/ ? , `! _ i& x8 p ...6 I- c; ]" X- E 5 t. |* j+ |: f$ e P4 m/ M/ d 了解更多,请下载后阅读) r( p9 u/ E/ }# I 下载地址1>> 下载地址2>> 更多实战经验>>2 j$ m) B$ a2 }: _9 ]4 c 8 R7 P, L/ L7 I! \ |
点评