该文章以at32f421k8t7为例

1.1获取雅特力相关bsp包

 雅特力科技官方网站产品讯息中找到对应的产品系列

1.2 查看bsp包中提供的模板工程结构

模板工程所在位置

\AT32F421_Firmware_Library_V2.1.8\project\at_start_f421\templates\mdk_v5

启动工程查看工程结构为

1.3 移植bsp中的模板工程

新建一个空包文件夹,将include paths中对应bsp包中的文件夹复制到空白文件夹中

需要复制的文件夹都有:

\AT32F421_Firmware_Library_V2.1.8\project\at_start_f421\templates\inc

\AT32F421_Firmware_Library_V2.1.8\project\at32f421_board

\AT32F421_Firmware_Library_V2.1.8\libraries

头文件复制完成后还需要c文件和工程启动文件

\AT32F421_Firmware_Library_V2.1.8\project\at_start_f421\templates\src

\AT32F421_Firmware_Library_V2.1.8\project\at_start_f421\templates\mdk_v5

1.4 修改include路径和重新添加文件

打开复制好的工程进行查看

报错是因为工程结构层级关系发生了改变,重新修改include paths并重新添加文件到工程中

cmsis下的两个文件分别在

\test\libraries\cmsis\cm4\device_support\system_at32f421.c

\test\libraries\cmsis\cm4\device_support\startup\mdk\startup_at32f421.s

重新编译后无报错

1.5 优化工程文件夹结构

观察工程内文件结构发现,firmware下对应的是固件的c文件,cmsis对应的是启动文件

1.5.1 修改cmsis文件夹

修改cmsis文件夹,只留系统初始化文件和启动文件(系统初始化文件的h文件要保留,后续移动)

将这些文件复制到cmsis根目录下,然后删掉cm4文件夹

1.5.2 修改drivers文件夹

修改divers文件夹为firmware,将文件中src中的c文件移动到根目录

1.5.3 汇总转移h文件

将cmsis文件中的两个头文件转移到根目录下的inc文件夹中

将firmware下的inc文件中的所有h文件同样转移

转移结束后根目录下inc文件夹下共有25个头文件

再次打开工程,发现工程内文件又出现警告标志,因为文件的路径发生了改变,重新进行添加

重新添加后编译,出现报错,因为缺少了指定头文件

去bsp文件夹中搜索该头文件,然后复制到工程inc文件夹中。

直到编译不再报错

增加的头文件如下

到此工程初步创建完成

Logo

智能硬件社区聚焦AI智能硬件技术生态,汇聚嵌入式AI、物联网硬件开发者,打造交流分享平台,同步全国赛事资讯、开展 OPC 核心人才招募,助力技术落地与开发者成长。

更多推荐