前言 $ R; T/ }& i0 L" E0 l: M x! }7 u6 q 阿里云物联网平台(原名物联网套件,下文两者通用)是阿里云专门为物联网领域的开发人员推出的,其目的是帮助开发者搭建安全且性能强大的数据通道,方便终端(如传感器、执行器、嵌入式设备或智能家电等等)和云端的双向通信(http://cn.aliyun.com/product/iot)。本文描述了基于 STM32 系列 MCU 连接阿里云的方案,详细说明了如何使用集成了阿里云物联网套件的 STM32 扩展开发包。 0 N! `% L6 F4 k1 }* x3 O5 N' h# E 硬件概述 6 V/ v4 {# J6 M" f E! ~* y Q$ }( x; U" y9 p STM32 NUCLEO-L476RG 从 www.st.com 搜索关键字 NUCLEO-L476RG 可以得到此开发板的详细介绍。 N0 P. b$ Y2 z3 q a
& U: V3 x7 m" E# G MXCHIP EMW3080 WiFi 扩展板 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)。 2 L. L& M; _/ ]6 m: Z% m4 M 8 B* S7 B/ i6 s2 }. r9 H' a 跳线如下: - ~: W3 j4 ^4 q% {- _% t· WiFi 扩展板的 RxD 连接 morpho 插座 (CN10)的管脚 33。 · WiFi 扩展板的 TxD 连接 morpho 插座 (CN10)的管脚 21。 2 A3 v' L* |+ e1 E* w. p: `实际连接如图所示: 板子上原来的跳线都不需要改变,也不需要吹焊solder bridge(默认状态母板上 D0、D1 没有连到MCU 的 UART1), 只需要几根连接线就可以完成连接。 * x1 t6 @/ V8 o) D& v软件环境和工具 / J. g# e! u4 z# R8 D& K
! Z6 W; p3 l l1 I 阿里云物联网套件 SDK : N8 E+ n- y( c; x5 q* N( J6 [; j- N+ ` " O3 M$ s) B: l) [3 i4 `& ? 阿里云物联网套件主页:http://cn.aliyun.com/product/iot ; d" e# h3 x8 w# { 阿里云物联网套件 SDK 源代码则已经开放在 http://github.com/aliyun/iotkit-embedded 。 基于 STM32 的阿里云物联网套件方案开发包已经集成了 Ali 物联网套件 SDK2.03 http://github.com/aliyun/iotkit embedded/releases/tag/RELEASED_V2.03。在集成过程中,整个 SDK 目录文件结构保持不变,方便用户在将来自行替换更4 F6 ?3 f3 j/ H1 J, [' @7 o1 h6 ? 高版本的 Ali 物联网套件,如下图: 在云端开通 Ali 物联网套件 1 |6 t- w# ~! k! W- Y 将设备接入云端,第一步是要在云端开通物联网套件,注册产品和设备。用户可参照阿里云帮助文档里的“阿里云物联网套 件 > 控制台使用手册 > 产品管理 > 设备接入准备”的详细说明,也可以参照以下步骤: 8 Z' Q( o* t1 _6 p
/ f% V* P8 a* I$ A9 {( _ 一步一步创建完成后,用户也可以从控制台中的设备管理,点击相应的设备,查看设备基本信息,就可以一次性获得productKey, 设备名称(deviceName)以及 deviceSecret。 & ]/ B9 O2 O3 s0 X# X7 o+ ^ - Y5 B. S' M4 b, d + Z- t$ u: ^1 v5 m. T ... 了解更多,请下载后阅读 # w9 U& A+ O1 I& u3 o" H, M 下载地址1>> 下载地址2>> 更多实战经验>> |
点评