购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

4.2 STM32Cube软件包

1.认识STM32Cube软件包

如前所述,STM32Cube组件由两部分组成:STM32CubeMX是PC端图形化配置软件;另外还有一系列资源丰富的STM32Cube软件包。在STM32CubeMX主页面的概述(Overview)部分,有一张图来介绍它们之间的关系,如图4-8所示。

图4-8 STM32Cube组件关系图

由图4-8可知,STM32Cube软件包包含例程和演示、中间层组件、HAL固件库,且支持所有的STM32微控制器。

获取STM32Cube软件包的方法有两种:一是通过STM32CubeMX的菜单命令“Help”→“Manage embedded software packages”在线下载;二是在ST公司官网下载软件包,通过“Embedded Software Packages Manager”窗口的“From Local”按钮来安装。

可以在ST公司官网的搜索栏输入“STM32Cube”进行搜索,然后如图4-9所示,在列表中选择STM32CubeF1,跳转到STM32CubeF1软件包的介绍页面离线下载STM32Cube软件包;也可以在STM32CubeMX介绍页面的工具和软件(Tools and software)菜单下的嵌入式软件(Embedded software)中选择STM32CubeF1直接下载。

图4-9 STM32Cube软件包列表

在STM32CubeF1软件包的介绍页面还有以下几份文档值得我们学习。

(1)应用手册(Application notes)AN4724:STM32Cube firmware examples for STM32F1 series。

(2)用户手册(User manuals),包括:

UM1850:Description of STM32F1xx HAL drivers;

UM1847:Getting started with STM32CubeF1 firmware package for STM32F1 series.

(3)演讲课件(Presentations):STM32 Embedded software overview。

其中,演讲课件和应用手册AN4724可以帮助读者对STM32CubeF1软件包有一个整体认识;另外,在AN4724中不仅介绍了STM32F1的例程,还介绍了用户手册中的文档,以及学习阅读的次序。

图4-10中直观地展示了STM32CubeF1的内容:支持的开发板(评估板、探索套件、Nucleo开发板);中间件组件,包括TCP/IP栈、USB主机/设备库、图形用户界面STemWin、文件系统FATFS、实时操作系统FreeRTOS等;支持所有外设的HAL驱动。

图4-10 STM32CubeF1软件包的构成

用户手册UM1847和UM1850是接下来学习STM32CubeF1软件包开发时要参考的文档,特别是UM1850,详细介绍了HAL固件库的函数,这是编程开发的重要参考手册。

2.下载STM32Cube软件包

目前还要使用在线下载方式下载STM32Cube软件包,因为离线下载容易出现版本不匹配的问题。在下载软件包前,还要设置安装软件包的位置。运行STM32CubeMX软件,执行菜单命令“Help”→“Updater Settings…”,打开“Updater Settings”对话框,如图4-11所示。

图4-11 打开“Updater Settings”对话框

默认路径层次比较多,可以设置一个相对层次较少的路径,如安装Keil MDK-ARM的根目录E:\Keil_v5等。配置完成后,单击“OK”按钮,返回STM32CubeMX主界面。

执行菜单命令“Help”→“Manage embedded software packages”,打开“Embedded Software Packages Manager”窗口,如图4-12所示。在列表中找到STM32F1,然后再找到最新版本的软件包STM32Cube MCU Package for STM32F1 Series(当前版本为1.8.0),选中后,“Install Now”按钮变为可用状态,单击该按钮即可开始下载安装。

图4-12 打开“Embedded Software Packages Manager”窗口

有关软件包下载的介绍,可以参考STM32CubeMX的用户手册UM1718和STM32CubeF1软件包的用户手册UM1847。

下载完成后,就可以到图4-11中设置的路径下查看STM32CubeF1软件包了。如图4-13所示,在该文件夹下共有8个文件或文件夹,其中_htmresc、package.xml、Release_Notes.html是软件包发布记录的网页文件及相关资源,其余5个文件夹的介绍如下所述。

图4-13 STM32CubeF1软件包

Documentation:在该文件夹中有一份pdf格式的帮助文档,即STM32CubeF1的用户手册UM1847。

Drivers:该文件夹中保存的是STM32Cube固件驱动函数库,其中BSP文件夹保存的是开发板层驱动程序,BSP的全称是Board Support Package;CMSIS文件夹包含的是定义外设寄存器和地址映射的STM32F1××微控制器软件接口文件,CMSIS的全称是Cortex Microcontroller Software Interface Standard(ARM Cortex微控制器软件接口标准);STM32F1××_HAL_Driver文件夹保存的是STM32F1××所有外设的HAL驱动文件。

Middlewares:该文件夹中保存的是中间件组件,其中有两个文件夹:ST文件夹保存的是图形用户界面协议栈(STemWin)、USB设备驱动程序、USB主机驱动程序等;Third_Party文件夹保存的是第三方的中间件协议栈,包括文件系统FATFS、实时操作系统FreeRTOS、TCP/IP栈等。

Projects:该文件夹中保存的是实例(Examples)和应用程序(Applications),这些例程是按照开发板区分的,支持4种开发板,即STM32F103RB-Nucleo、STM32VL-Discovery、STM3210C_EVAL、STM3210E_EVAL。

Utilities:该文件夹中保存的是有关液晶显示、声音播放等文件。

文件夹Drivers\BSP、Drivers\STM32F1××_HAL_Driver、Drivers\CMSIS、Middlewares、Utilities等与软件包发布记录Release_Notes.html页面中的图的对应关系如图4-14所示。

图4-14 STM32CubeF1软件包组件与文件夹的对应关系

对于软件包中的各个文件夹,在UM1847的第3章STM32CubeF1 firmware package overview中有更为详细的介绍。 kBdBMKqzIMc1vXT2QTE/eklJZpX90KwKjhvFVrEqmtRELxioGZMgz22yMaJ4p/8M

点击中间区域
呼出菜单
上一章
目录
下一章
×