创建基于HAL库的STM32f103C8T6的工程模板

STM32的标准固件库已经停止更新了,取而代之的是HAL库,虽然通过STM32CUBEMX能够轻松建立一个工程,但为了更熟知软件结构而言,还是手动创建一个模板吧。

工具:Keil5,en.stm32cubef1

一、安装软件,下载HAL库

安装Keil软件就不再赘述啦,下面写一下如何下载HAL库~

首先,进入ST官网……&*¥&¥%%,好了,电梯直达-->链接,当然了,这里需要注册账号。百度链接,密码:jv3w。

二、建立工程文件夹,拷贝相关的工程库文件

建立文件夹,保存工程的各种文件,其下的目录结构如下图所示:

创建基于HAL库的STM32f103C8T6的工程模板

其中,CORE  启动文件以及关键头文件,HALLIB 主要驱动文件,OBJ 编译文件目录,Pro MDK工程文件目录,USER 用户文件。

目录建立好之后,拷贝文件。

1、CORE目录:其源文件目录为en.stm32cubef1\STM32Cube_FW_F1_V1.7.0\Drivers\CMSIS\Include,将

cmsis_armcc.h,core_cm3.h,core_cmFunc.h,core_cmInstr.h,core_cmSimd.h这5个文件拷贝至CORE文件夹下。

再将en.stm32cubef1\STM32Cube_FW_F1_V1.7.0\Drivers\CMSIS\Device\ST\STM32F1xx\Source\Templates\arm目录下的startup_stm32f103xb.s拷进来。

2、HALLIB目录:其子目录为

创建基于HAL库的STM32f103C8T6的工程模板

 Device目录:源文件为en.stm32cubef1\STM32Cube_FW_F1_V1.7.0\Drivers\CMSIS\Device\ST\STM32F1xx\Include中的stm32f1xx.h,stm32f101xb.h,system_stm32f1xx.h。

STM32F1xx_HAL_Drive目录:源文件为en.stm32cubef1\STM32Cube_FW_F1_V1.7.0\Drivers\STM32F1xx_HAL_Driver下的Inc和Src文件夹。

USER目录:源文件为en.stm32cubef1\STM32Cube_FW_F1_V1.7.0\Projects\STM32F103RB-Nucleo\Templates文件下的Inc和Src文件夹,由于没有用到板载资源,所以在使用是要对出错的头文件稍作删除即可。

这样,文件拷贝完成。

三、创建工程并进行相应配置。

创建工程时,选择STM公司的stm32f103c8t6这款芯片。将工程目录建在StdProject文件夹下的Pro文件夹下。

配置:点击魔术棒C/C++选项卡的define填写STM32F103xB,USE_HAL_DRIVER,includepath为以下截图

创建基于HAL库的STM32f103C8T6的工程模板

 工程项目管理器中的目录如下:

 

创建基于HAL库的STM32f103C8T6的工程模板

创建基于HAL库的STM32f103C8T6的工程模板

创建基于HAL库的STM32f103C8T6的工程模板

 

创建基于HAL库的STM32f103C8T6的工程模板

创建基于HAL库的STM32f103C8T6的工程模板

创建基于HAL库的STM32f103C8T6的工程模板

接下来,将mian.中出错的引用删除,编译!

创建基于HAL库的STM32f103C8T6的工程模板

以上。模板工程也已上传。