Stm32Cube简介(一)

姓名:朱小鹏

引用资料:STM32F429开发指南-HAL库版本_V1.1,有删节。

【嵌牛导读】:STM32CubeMx是ST推出的一套性能强大的免费开发工具和嵌入式软件模块,能够让用户轻松配置芯片外设引脚和功能,及配置使用如LWIP、FAT32、FreeRTOS等第三方软件系统。

【嵌牛鼻子】:STM32Cube

【嵌牛提问】:什么是STM32Cube?

【嵌牛正文】

相信大家对stm32并不陌生,但是大家对于他的认知或许还停留在对寄存器操作或使用st公司提供的标准库。2014年,st公司在标准库的基础上又推出了HAL库。实际上HAL库和标准库是十分类似的,都是提供硬件底层API方便用户使用。那么为什么st公司要推出HAL库呢?这是为了结合我们接下来要介绍的重点——STM32Cube。

一、什么是STM32Cube。

STM32CubeMx是ST推出的一套性能强大的免费开发工具和嵌入式软件模块,能够让用户轻松配置芯片外设引脚和功能,及配置使用如LWIP、FAT32、FreeRTOS等第三方软件系统。它包含两个关键部分:

1、图形配置工具STM32CubeMx.允许用户通过图形化向导来生成C语言工程。

2、嵌入式软件包(STM32Cube库)。包含完整的HAL库(STM32硬件抽象层API),配套的中间件(包括RTOS,USB,TCP/IP和图形),以及一系列的完整例程。

二、STM32Cube固件包介绍

STM32Cube目前几乎支持STM32全系列,本篇就以STM32CubeF4为例。我们来看看STM32CubeF4包目录。

Stm32Cube简介(一)_第1张图片

接下来我们对其中几个关键文件进行介绍

首先是Drivers文件夹下的三个子文件夹BSP、CMSIS和STM32F4xx_HAL_Driver。BSP文件夹又叫板机文件夹,此支持包提供的是直接与硬件打交道的API,例如触摸屏,LCD,SRAM以及EEPROM等板载硬件资源等驱动。BSP文件夹下面有多种ST官方Discovery开发板,Nucleo开发板以及EVALB板的硬件驱动API文件,每一种开发板对应一个文件夹。CMISIS文件夹:里面包含了符合CMSIS标准的软件抽象层组件相关文件。STM32F4xx_HAL_Driver文件夹:这个文件夹十分重要,里面包含了所有的STM32F4xx系列的HAL库头文件和源文件,也就是所有底层硬件抽象层API的声明和定义。

Middlewares文件夹:该文件夹下面有ST和Third_Party 2个子文件夹。ST文件夹下面存放的是STM32相关的一些文件,包括STemWin和USB库等。Third_Party文件夹是第三方中间件,这些中间价都是非常成熟的开源解决方案。

Projects文件夹。该文件夹存放的是一些可以直接编译的实例工程。

Utilities文件夹。该文件夹下面是一些其他组件,在项目中使用得不多。

上面我只做了简单的介绍,想要具体了解STM32Cube固件包的同学可以到st官方网站下载STM32Cube固件包,里面的STM32CubeF4GettingStarted.pdf文件有详细讲解。

你可能感兴趣的:(Stm32Cube简介(一))