概述
这篇文章的目的是为了了解AT32工程模板的创建,方便后期调用。其模板工程包含默认的UART1串口作为printf输出,工程文件参考雅特力官方提供的library。链接: 固件库,雅特力提供的文档还是很详细的,而且有中文数据手册👍。
硬件介绍
这里没什么说的,根据个人习惯。
软件介绍
接下来进入主题:如何创建一个工程模板,事实上在我们平时使用CUBEMX配置工程的时候他就会生成一个工程模板,那么我们就可以参考它的模板来进行构建,我们所需要的文件都在project和libraries这两文件夹里。
如果不知道具体添加了什么,可以参考我这: GitHub,目前的结构是这样,后期可能会稍作修改添加一个device文件夹来存放外设驱动的代码,bsp文件存放板级支持包(如:LCD、W25Qflash等一些外设驱动固件)使他与硬件分离开,方便后期移植。
工程模板验证
左侧是分组与文件夹一样,这个不在赘述。
下面说明要注意的几点:
- 我的芯片型号是407VGT7,如果不一样需要修改,修改方法如下。
- 如果是自己创建的工程,
at32f435_437.h
会报错,报错位置在这里
#if !defined (AT_START_F435_V1) && !defined (AT_START_F437_V1) #error "please select first the board at-start device used in your application (in at32f435_437_board.h file)" #endif
,意思是要选择一个支持包,你可以直接在这个文件上方定义#defined (AT_START_F437_V1)
,但是我推荐在魔法棒中添加
- 如果使用printf函数,要勾选C99 Mode,然后取消勾选GUN extension。
其他的下载器配置之类的就不多说了,如下是串口打印。