引言 本用户手册描述了IBM Watson IoT™(物联网)平台的STM32Cube软件扩展包的内容。8 j/ r3 L" ?$ c* b$ n STM32Cube的IBM ® IoT云软件扩展包(X-CUBE-WATSON)提供了将STMicroelectronics板连接到IBM Watson IoT™平台的应用示例。它使用IBM ® 嵌入式C客户端库,将其移植到相应的STM32设备。 X-CUBE-WATSON可运行于B-L475E-IOT01、32F413HDISCOVERY和32F769IDISCOVERY板。) N* j) w! U' t: U 可实现设备到云端数据上报,和云端向设备下发命令和通知。, k4 ?* D# P' r9 K# Y# t) `, M X-CUBE-WATSON提供了下列功能: • 通过Wi-Fi ® 和以太网连接IBM Watson ® 支持应用的快速评估和开发# }) H+ ^7 L R) c • 板配置接口* F4 L1 t, H4 }: J- Q" G • Wi-Fi ® 连接 • 连接到IBM Watson IoT™平台和各种回调注册7 |. c0 c7 Z3 A • B-L475E-IOT01板可测量和上报以下值:2 F- M- a2 l' G& n5 b – 湿度 – 温度 – 3D地磁数据 – 3D加速度4 G; V m# M) _ – 3D陀螺仪数据% C5 ~/ ]+ d6 ?" c9 e4 j1 f – 大气压力 – 接近% i" ?; R5 ]2 W( X * y4 F9 [7 O* I. w: ~/ i& k 1 概述 IBM Watson IoT™平台的X-CUBE-WATSON包在基于Arm ® Cortex ® -M处理器的STM32 32位微控制器上运行。+ b0 V8 C8 g0 v# z9 f u2 N , E* Y8 A- s. ]% Y8 A! ?% s$ [% z) |/ s 2 IBM Watson IoT™ 平台9 G# g# v" Q, P8 N* A 本章介绍IBM Watson IoT™平台。 X-CUBE-WATSON包使用了IBM ® 嵌入式C客户端库,可支持该开发板安全地连接到IBM WatsonIoT™平台。1 B$ a' ~4 @$ g5 o' t5 v" _ 用户可以使用智能手机或个人计算机连接到云端,并可以随时随地访问该板提供的信息。 图 1显示面向X-CUBE-WATSON包的IBM Watson IoT™生态系统。 / J0 E: a- w6 a8 h 3 软件包说明! w/ K" [' L( T% [" g 本章详细介绍了X-CUBE-WATSON软件包的内容和使用方法。. l6 F! M' o5 C& _# e7 o+ t 3.1 概述" b c/ F8 T% }: ~ X-CUBE-WATSON包为STM32微控制器提供了Bluemix ® 堆栈中间件。" f- j, ~3 E+ ?$ F 已经移植到了B-L475E-IOT01、32F413HDISCOVERY和32F769IDISCOVERY板,并可通过板载- j& p7 F3 ?8 ~& R 的网络接口连接到互联网。 • 通过板上集成的Inventek模块,B-L475E-IOT01支持Wi-Fi ® 。该板配备了一组能够报告+ Q- {# G& }' O$ [ {9 t; @ 湿度、温度、3D轴地磁数据、3D加速度、3D陀螺仪数据、大气压力、接近度和手势检 测(X-CUBE-WATSON没有使用手势检测功能)的传感器。2 v# `, N: B2 w2 q3 }$ V • 通过板上集成的Inventek模块,32F413HDISCOVERY支持Wi-Fi ® 。! X+ h$ }) t' f7 P4 [ o0 W1 x • 32F769IDISCOVERY本身提供了一个以太网接口。8 a+ j: p# |' L+ x# O! j. t' q$ m 该包分为以下组件:5 K* T) k: b; s( N+ k+ e# {6 } • 连接到IBM Watson IoT™的客户端库和示例 • mbedTLS • LwIP • FreeRTOS™ • Wi-Fi ® 驱动1 b: D7 ~9 w, f+ G" H • 用于32F769IDISCOVERY板的以太网驱动 • 用于B-L475E-IOT01板的传感器驱动4 x | z I) t( K; w2 B • STM32L4系列、STM32F4系列,和STM32F7系列HAL: o' h7 P6 q$ k9 x0 D @1 r9 Z/ h • Bluemix ® 应用程序示例 该软件以zip文档的形式提供,其中包含源代码。. \# ~1 U4 L' l& \! {/ T" c 可支持以下集成开发环境: • IAR Embedded Workbench ® for Arm ® (EWARM)8 E% r7 f) l- v! i. ~: ` • Keil ® 微控制器开发套件(MDK-ARM); l; N& J+ |/ ?! d, ^" h" f: I • System Workbench for STM32% z* ~, V4 T. D8 m2 _6 ]: J: J " h; @1 O% ^# ^% {7 l 3.2 架构: g2 L- Z# w0 ?: Y. k2 x* p 本节描述X-CUBE-WATSON包的软件组成部分。, T* t) z2 Q5 V% z X-CUBE-WATSON软件是对STM32Cube的扩展。其主要功能和特性如下:+ p: ?2 e+ f( R0 u6 ? • 完全兼容STM32Cube架构5 {3 ]# V$ d, F4 d. P • 为了能够开发应用程序来访问和使用IBM Watson IoT™ 平台,扩展了STM32Cube。 • 基于STM32微控制器的硬件抽象层STM32CubeHAL 应用软件访问和使用IBM Watson IoT™平台所用的软件组件如下:# h, b, F5 E* A% \1 \; p • STM32Cube HAL' x. d5 L9 |* U# j, X0 u! C HAL驱动层提供通用的多实例简单API组(应用程序编程接口),以便与上层(应用、库和协议栈)交互。 它由通用和扩展API构成。它直接围绕通用架构构建,允许在其基础上的软件层,例如中间件层,实现了它的功能又无需依赖给定微控制器单元(MCU)的特定硬件配置。此结构可提高库代码的可复用性,并确保可向其他设备轻松移植。' K9 _4 K7 ?5 T8 D • 板级支持包(BSP ) 除MCU之外,软件包需支持STM32板上的外设。板级支持包(BSP)中包含此软件。这是一个有限的API集,为板特有的某些外设(例如LED和用户按钮等)提供编程接口。 • Bluemix ® 中间件, D/ T* Q. c, p 它由Bluemix ® IoT hub客户端库、JSON解析器、JSON序列化程序、MQTT客户端(被IoT hub客户端库用作传输层)以及客户端库使用的各种C工具组成。 • mbedTLS0 C0 Q+ N0 @4 e Bluemix ® 中间件使用由mbedTLS库实现的TLS连接。 • TCP/IP TCP/IP连接可由Wi-Fi ® 模块(当使用Wi-Fi ® 连接时)或LwIP中间件(当使用以太网连接时)来处理。在X-CUBE-WATSON包中,只有32F769IDISCOVERY板可以通过以太网进行连接。6 ?3 A' T% d: a/ I d$ @ • FreeRTOS™ 它是一个实时操作系统,使用LwIP为用户提供基于套接字的接口时,需要用到。 ) V# q# g+ o' z8 O2 W# ? 0 `6 ?4 o6 _0 ?3 v" ^2 Z* a5 ~ ... ' z$ n1 r# C7 p8 A3 V2 L ( g: D5 w, e; O2 w& X 下载文档,阅读完整资料. b" H" e) G$ m# M6 r% Y 9 S4 \% `( z N/ _ 下载地址1>> 下载地址2>> 更多实战经验>> ' _7 |$ @. {" F* m |