快捷搜索: 王者荣耀 脱发

AT32标准库(BSP)模板建立(开发笔记)

AT32标准库(BSP)模板建立

环境声明:

Keil版本:Keil 5.25

芯片型号:AT32F403A

AT Pack版本:Pack_Keil_AT32F4xx_V1.3.6

1. 新建一个工程文件夹

建立一个Template文件夹,里面再建3个以下子文件夹

a) 存放内核相关文件:CORE

b) 存放库相关文件:AT32F4LIB

c) 存放工程生成中间:OBJ

d) 存放工程目录:USER

注:可以建立一个readme.txt文本文档记录工程信息

2. 使用MDK新建工程

新建工程,路径选择USER文件夹,工程名称自拟,如图芯片选用AT32F403ARCT。

具体如何建立工程请百度,此文着重讨论建立固件库模板,不讨论MDK如何建立新工程。 建好的空工程如图所示。

3.复制固件库源码到工程

a) 复制固件库中的底层库代码到AT32F4LIB

将E:WorkArtery AT32 MCU PackBSPLibrariesAT32F4xx_StdPeriph_Driver下的inc和src文件夹复制到AT32F4LIB下。Artery AT32 MCU Pack文件包可以在雅特力官方网站自行下载。

b) 复制固件库的启动文件到CORE

将E:WorkArtery AT32 MCU PackBSPLibrariesCMSISCM4DeviceSupportstartupmdk中的ATF403A对应的启动文件startup_at32f403arct7.s复制到CORE文件夹下。

接着将E:WorkArtery AT32 MCU PackBSPLibrariesCMSISCM4CoreSupport中的F4(M4内核)相关的内核文件(如图)也复制到CORE文件夹下

复制后的CORE有如下文件:

c) 复制固件库工程重要文件复制到USER

将E:WorkArtery AT32 MCU PackBSPLibrariesCMSISCM4DeviceSupport下的头文件添加到USER文件夹中。

将E:WorkArtery AT32 MCU PackBSPProjectAT_START_F403ATemplates下的工程模板中的历程复制过到USER。

在Code编译之前,需要根据MCU型号,在at32f4xx.h中反注释对应的宏定义如下图所示。

d) 关于晶振的设置(系统时钟的配置)

打开System_at32f4xx.c系统时钟初始化文件,根据型号选择一个宏定义选择初始化时钟进行反注释,如下图。

4. 在MDK空工程中添加文件

按照Template下的目录添加组。 添加后的效果如下图所示。

每个组添加文件基本都在相应的文件夹下,添加的时候只添加.c文件

AT32F4LIB是固件库的底层库,可以根据需要添加相应模板的库。

5. 工程配置

以下配置都在MDK的魔法棒工具中。按照图片配置即可。

a)更改工程文件输出到OBJ

b) 添加全局定义标识符

添加一个全局宏定义标识符。添加方法是点击

魔术棒之后,进入 C/C++选项卡,然后在 Define 输入框连输入:

AT32F403AVGT7,USE_STDPERIPH_DRIVER,AT_START_F403A_V1_0注意这里是三个标识符 AT32F403AVGT7和USE_STDPERIPH_DRIVER和AT_START_F403A_V1_0,他们之间是用逗号隔开的。

c) 添加头文件路径 保证代码能够对应的头文件位置

d) 更改HSE高速外部时钟频率

7. 编译工程

经验分享 程序员 微信小程序 职场和发展