我们可以使用ST官方的 STM32CubeMX 图形工具生成一个工程模板。
这里之所以还要新建一个模板,是为了对工程新建和运行过程有一个深入的理解,这样在日后的开发中遇到任何问题都可以得心应手的解决。
在新建模板之前之前,要准备如下资料:
1) HAL 库开发包: STM32Cube_FW_L4_V1.13.0 这是 ST 官网下载的 STM32CubeL4 包完整版, 可以直 接去 ST官网进行下载,下载地址:https://www.st.com/content/st_com/zh/extended-query.html?querycriteria=productId=LN1897$$associatedTo=FM141。
2) MDK5.25 开发环境
新建基于 HAL 库工程模板
1)在建立工程之前,在电脑的某个目录下面建立一个文件夹,后面所建立的工程都可以放在这个文件夹下面,这里建立一个文件夹为 Template。这是工程的 根目录文件夹。
然后为了方便我们存放工程需要的一些其他文件,这里我们还新建下面 4 个子文件夹:CORE , HALLIB, OBJ 和 USER。至于这些文件夹名字,实际上是可以任取的,我们这样取名只是为了方便识别。新建好的目录结构 如下图.
2) 接下来, 打开 MDK, 点击菜单 Project –>New Uvision Project , 然后将目录定位到刚才建立的文件夹 Template 之下的 USER 子目录, 工程取名为 Template 之后点击保存, 工程文件就都保存到 USER 文件夹下面。 操作过程如下图所示:
接下来会出现一个选择 Device 的界面,就是选择我们的芯片型号,根据自己使用的芯片型号依次选择即可。 例如STM32L4 开发板使用的是 STM32L475VET6 芯片,那么依次选择 STMicroelectronics→STM32L4 Series→STM32L475→STM32L475VE→STM32L475VETx(如果使用的是其他系列的芯片,选择相应的型号就可以了, 特别注意:一定要安装对应的器件 pack 才会显示这些 内 容 ,必须先安装 MDK 才能安装 pack 包)。
点击 OK, MDK 会弹出 Manage Run-Time Environment 对话框, 如图所示:
这是 MDK5 新增的一个功能,在这个界面,我们可以添加自己需要的组件,从而方便构建开发环境。在图所示界面,我们直接点击 Cancel,即可,得到如图所示界面:
3) 现在我们看看 USER 目录下面内容,如下图:
Template.uvprojx 是工程文件,非常关键,不能轻易删除, MDK5.25生成的工程文件是以.uvprojx 为后缀。 DebugConfig, Listings 和 Objects 三个文件夹是 MDK 自动生成的文件夹。其中 DebugConfig 文件夹用于存储一些调试配置文件, Listings 和 Objects 文件夹用来存储 MDK 编译过程的一些中间文件。这里,我们把 Listings 和 Objects 文件夹删除,会在下一步骤中新建一个 OBJ 文件夹,用来存放编译中间文件。当然,不删除这两个文件夹也没有关系,只是我们不用它而已。
4) 接下来我们将从官方 STM32CubeL4 包里面复制一些我们新建工程需要的关键文件到我们的工程目录中。 首先,我们要将 STM32CubeL4 包里的源码文件复制到我们的工程目录文件夹下面。打开官方 STM32CubeL4 包,定位到我们之前准备好的 HAL 库包的目录:STM32Cube_FW_L4_V1.13.0Drivers 下面,将目录下面的 STM32L4xx_HAL_Driver 文件夹复制到我们刚才建立的 HALLIB 文件夹下面。复制完成以后将 STM32L4xx_HAL_Driver