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

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

[复制链接]
STMCU-管管 发布时间:2020-2-11 11:19

6 H( Y( S) i4 @6 {% W
STM32Cube功能扩展插件
# c7 w2 z7 G9 I. B$ j& L1 x: E
11.jpg
& e- i. A* |* c( C5 H# m9 W3 o
然后来看,今天要讲的STM32固件新成员:STM32Cube功能扩展插件。Cube功能扩展插件,顾名思义,和刚才讲的Cube功能扩展包,有着紧密的联系。一个是“插件” ,一个是“包” 。第一个好消息是,目前所有ST官方发布的STM32Cube功能扩展插件,都可以和Cube MCU固件包一样,由CubeMX自动去检查版本更新,并可以一键下载。从胶片里的截图可以看到,目前已经有5个功能扩展插件出来了,他们的名字和对应的功能扩展包一样,因此功能扩展插件是基于功能扩展包出来,且二者是兼容的。
  V. i! @6 B6 z  f+ o( B
(1)以X-Cube-BLE1插件为例。
4 P+ {  v, R; B/ [! Z/ {
22.jpg

# n# ~( s6 L, Q
一方面,它可以从CubeMX中自动下载,选择最新版本4.4.0,在电脑上默认的存放地址在STM32Cube的repository目录,如图。另外一方面,也可以使用传统的Cube功能扩展包的下载方式,去ST官网搜索找到对应页面,最新版本4.4.0,下载并保存到电脑上的任意路径。压缩包解压后的结构和内容如图,文件夹名称,尾缀是V4.4.0。
X-Cube-BLE插件是从扩展包演讲过来的,因此我们先来看一下压缩包解压后放在根目录下的release note。
$ b4 D3 N, r$ L; s6 E
33.jpg
" K3 q$ e5 P4 ]* l: v; I8 U
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也可以使用它。

9 Y. }- t6 ]) c  g* p" b' ]
我们稍后会把V3.3.0和V4.4.0两个版本的X-Cube-BLE1比较一下。看看支持插件功能的新一代扩展包和传统功能扩展包的区别。
和release note同样路径下还有一个pdsc文件,这是对插件pack的描述文件。

# y6 e9 v) O0 v% Q6 g
44.jpg

3 G) ^( U1 I5 \4 l+ {* S6 S
从pack的版本历史section,也可以看到它一路演进的过程。可以看出,从CubeMX5.x版本后,Pack的版本号,和X-Cube-BLE1功能扩展包的版本,保持一致了。然后过往版本的插件也都可以在CubeMX中看到,并都可以下载。这是Cube MCU固件包和Cube 扩展功能插件集成到了CubeMX中,对用户很大的一个便利之处。一键下载,以及历史版本都可以获得。
3 q# b$ H# u7 r: w& w0 g' f
(2)V3.3.0和V4.4.0两个版本的X-Cube-BLE1比较
9 Q7 e0 H) C- Q3 {# g. w: Q8 j
55.jpg

' O5 a5 j- D3 P  p- x$ g* F
左图是Cube-BLE1,3.3.0,不支持pack时候的文件结构和 内容;右图是Cube-BLE1,4.4.0,支持pack后的文件结构和内容。后者多了一个CubeMX文件夹,一个pdsc文件,一个标号为DM00367782的licence文件;在Documentation目录下,还多了一个Getting start文档。这些新增的内容,都是CubeMX功能插件带来的。
; ?" M) R  R* J$ [# V" N% f
其他的内容差异,比如Projects目录下内容的变化,则是由于STM32Cube规范的演进带来的:在4.4.0里面,例程分别在每个所支持的板子的目录下,预编译项目支持三个板子;每个板子的目录打开,可以看到支持哪些demo,一目了然;3.3.0里,在project/multi/applications目录下的readme.txt才看得到支持哪些板子。

' d, }0 s( ]  w6 j- c
需要强调的是:由于4.4.0同时支持新的pack插件功能,还要兼容以前的功能扩展包,因此会留有Project目录,以及projects下面支持的若干板子子目录。就Pack插件本身来说,它是完全独立于硬件平台的,不受限于运行在什么板子,是STM32官方评估板,还是客户自己的STM32板子,都可以方便的把功能插件用上去。不像以前的功能扩展包,如果只提供了比如,F401-Nucleo板子上的例程,现在我想跑到F723-discovery板子上,需要手动去做HAL驱动的替换、系统时钟调整等。
% t' P& t9 S% s  [0 ]6 Q
(3)Getting start文档

* B; F7 b$ r; [8 B
66.jpg
8 n/ Z1 Q1 Q: B, H
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》不同。
1 ?9 |5 c1 S' s& T; P
对于首次使用STM32Cube功能扩展插件的用户,强烈建议花一点时间,先把20多页的用户手册快速浏览一下。它介绍了这个插件包里提供的例子,如何在CubeMX中安装这个插件包、在CubeMX中新建项目后,如何添加插件包中需要的组件,以及如何配置这些组件暴露出来的参数,包括和硬件交互的部分。
+ z3 l" x. ^$ [1 J) b
(4)以F401-Nucleo板为例,运行X-Cube-BLE1插件。

; B3 J: [' p1 }' T
77.jpg

! l* f7 @: r" y% e' ^
作为准备工作,要把F401-Nucleo板子的硬件接口理一下。X-Cube-BLE1插件是运行在任意STM32上,和搭载BlueNRG-MS低功耗蓝牙模块的X-Nucleo-IDB05A1扩展包一起工作。蓝牙扩展板和STM32的硬件交互有:SPI总线信号、STM32对蓝牙模块的片选控制和复位信号,蓝牙模块对STM32的中断输入信号。分别罗列在表格中。
, M& h- D8 W8 }# L% ^' T
另外,F401-Nucleo板上,自己的原生用户接口,比如打印log的串口、控制板上LED灯和用户按键的GPIO,也罗列了出来。这个在使用STM32CubeMX的图形界面配置插件时需要查阅。

0 L4 N" N, m8 @8 Q; B
8 i* T7 x% o$ {6 W) ~4 w# n4 H( V$ O8 m! j, @
收藏 评论0 发布时间:2020-2-11 11:19

举报

0个回答

所属标签

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