你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

STM32生态系统第五期——STM32Cube嵌入式软件新成员-扩展功...

[复制链接]
STMCU-管管 发布时间:2020-2-11 11:19
, @- g/ g6 b" I& M
STM32Cube功能扩展插件

) e* v, x9 c0 D$ A9 Z% p6 o
11.jpg
( T3 y# @5 k4 n% P) F1 [
然后来看,今天要讲的STM32固件新成员:STM32Cube功能扩展插件。Cube功能扩展插件,顾名思义,和刚才讲的Cube功能扩展包,有着紧密的联系。一个是“插件” ,一个是“包” 。第一个好消息是,目前所有ST官方发布的STM32Cube功能扩展插件,都可以和Cube MCU固件包一样,由CubeMX自动去检查版本更新,并可以一键下载。从胶片里的截图可以看到,目前已经有5个功能扩展插件出来了,他们的名字和对应的功能扩展包一样,因此功能扩展插件是基于功能扩展包出来,且二者是兼容的。
5 E" u: n1 u" C
(1)以X-Cube-BLE1插件为例。
+ b+ M" X* S5 x
22.jpg

# Z8 Y9 q6 q. O
一方面,它可以从CubeMX中自动下载,选择最新版本4.4.0,在电脑上默认的存放地址在STM32Cube的repository目录,如图。另外一方面,也可以使用传统的Cube功能扩展包的下载方式,去ST官网搜索找到对应页面,最新版本4.4.0,下载并保存到电脑上的任意路径。压缩包解压后的结构和内容如图,文件夹名称,尾缀是V4.4.0。
X-Cube-BLE插件是从扩展包演讲过来的,因此我们先来看一下压缩包解压后放在根目录下的release note。
( F: P; h! g$ J" I- b- K5 e; U7 [
33.jpg

( z8 q3 ^8 F3 C' r. B
X-Cube-BLE1,从2014年出来第一版,演进到v3.3.0,都是独立的Cube功能扩展包。从2018年6月份,4.0版本,X-Cube-BLE1同时兼容功能插件。并且插件随着CubeMX的版本演进而演进。插件当前最新版本4.4.0,需要至少5.2版本的CubeMX,目前最新的5.4版本CubeMX也可以使用它。
( A$ Q% h; w; `7 R, ~" I7 q* }* C
我们稍后会把V3.3.0和V4.4.0两个版本的X-Cube-BLE1比较一下。看看支持插件功能的新一代扩展包和传统功能扩展包的区别。
和release note同样路径下还有一个pdsc文件,这是对插件pack的描述文件。

! U7 w* G2 P" P' z8 H
44.jpg
" f. W' x2 o4 D% }. Z
从pack的版本历史section,也可以看到它一路演进的过程。可以看出,从CubeMX5.x版本后,Pack的版本号,和X-Cube-BLE1功能扩展包的版本,保持一致了。然后过往版本的插件也都可以在CubeMX中看到,并都可以下载。这是Cube MCU固件包和Cube 扩展功能插件集成到了CubeMX中,对用户很大的一个便利之处。一键下载,以及历史版本都可以获得。
" p0 a: ]6 Y8 G" E* F
(2)V3.3.0和V4.4.0两个版本的X-Cube-BLE1比较

6 r  v) B  ]! E% N8 \5 a9 a
55.jpg

9 S- `8 K3 P) Q' O
左图是Cube-BLE1,3.3.0,不支持pack时候的文件结构和 内容;右图是Cube-BLE1,4.4.0,支持pack后的文件结构和内容。后者多了一个CubeMX文件夹,一个pdsc文件,一个标号为DM00367782的licence文件;在Documentation目录下,还多了一个Getting start文档。这些新增的内容,都是CubeMX功能插件带来的。
9 a% Z" Q. Y9 g" T. L
其他的内容差异,比如Projects目录下内容的变化,则是由于STM32Cube规范的演进带来的:在4.4.0里面,例程分别在每个所支持的板子的目录下,预编译项目支持三个板子;每个板子的目录打开,可以看到支持哪些demo,一目了然;3.3.0里,在project/multi/applications目录下的readme.txt才看得到支持哪些板子。
0 i/ x3 O  }& n; O  R% H7 A/ D
需要强调的是:由于4.4.0同时支持新的pack插件功能,还要兼容以前的功能扩展包,因此会留有Project目录,以及projects下面支持的若干板子子目录。就Pack插件本身来说,它是完全独立于硬件平台的,不受限于运行在什么板子,是STM32官方评估板,还是客户自己的STM32板子,都可以方便的把功能插件用上去。不像以前的功能扩展包,如果只提供了比如,F401-Nucleo板子上的例程,现在我想跑到F723-discovery板子上,需要手动去做HAL驱动的替换、系统时钟调整等。

9 A- n* m% A4 G6 K( T
(3)Getting start文档

2 _& {' k7 b6 j
66.jpg

. N7 z5 ?: y  E- _  C
Getting start文档,pack压缩包中自带的是《Getting started with the STMicroelectronics X-CUBE-BLE1 softwarepackage for STM32CubeMX的》,讲如何使用X-Cube-BLE1这个插件的。和搭配X-Cube-BLE1功能扩展包下载页面里同步提供的文档UM1873《Getting started with the X-CUBE-BLE1 Bluetooth Low Energy softwareexpansion for STM32Cube》不同。
6 O# j' T+ }$ [2 V
对于首次使用STM32Cube功能扩展插件的用户,强烈建议花一点时间,先把20多页的用户手册快速浏览一下。它介绍了这个插件包里提供的例子,如何在CubeMX中安装这个插件包、在CubeMX中新建项目后,如何添加插件包中需要的组件,以及如何配置这些组件暴露出来的参数,包括和硬件交互的部分。

/ Y( z9 o- n& n, b5 l
(4)以F401-Nucleo板为例,运行X-Cube-BLE1插件。
  k- E2 Z5 M. S6 o, ]8 O
77.jpg
/ m" j* R  L6 @( H, t& k
作为准备工作,要把F401-Nucleo板子的硬件接口理一下。X-Cube-BLE1插件是运行在任意STM32上,和搭载BlueNRG-MS低功耗蓝牙模块的X-Nucleo-IDB05A1扩展包一起工作。蓝牙扩展板和STM32的硬件交互有:SPI总线信号、STM32对蓝牙模块的片选控制和复位信号,蓝牙模块对STM32的中断输入信号。分别罗列在表格中。

% p' {+ k# L5 U4 ^
另外,F401-Nucleo板上,自己的原生用户接口,比如打印log的串口、控制板上LED灯和用户按键的GPIO,也罗列了出来。这个在使用STM32CubeMX的图形界面配置插件时需要查阅。

& m) _3 n% E* t, d. ?4 Y- U
& D8 _# ~+ H) J3 o$ P+ ?- n/ P4 N5 N. V7 }: R- y
收藏 评论0 发布时间:2020-2-11 11:19

举报

0个回答

所属标签

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版