第一章 STM32F103C8T6的HAL库工程模板创建
前言
本章将开始将自己学习STM32F103C8T6基于hal库创建工程模板的步骤和经验分享给大家仅供参考,后续将继续更新STM32hal库相关的学习例程,感兴趣的同学可以关注一下我的博客。
一、工程创建
使用的编程软件是keil5版本,首先点击Project创建新的工程,命名工程名字STM32_model保存在一个文件夹内,之后选择PACK包中的STMicroeletronics,选择STM32F1 Series,选择STM32F03,选择STM32F103C8,点击OK,弹出一个页面继续点OK。
然后可以先添加启动文件startup_stm32f103xb.s(末尾会分享相应文件)
添加之前先将启动文件保存在所在工程的文件夹中,之后在target1中慢点击两次Source Group 1改名为startup,在startup文件右键选择Add Existing Files to Group ‘startup’,之后找到启动文件所在文件夹,文件类型选择All files.
接着添加一些库函数文件,首先是先进行文件组创建,右键点击Target 1 ,选择Add Group,并命名为Drivers(命名可随意)
在工程文件夹中创建Drivers文件,里面创建Inc和Src文件,Inc中包含所有.h库函数文件,Src中包含所有.c库函数文件。
与startup文件添加步骤相同,将Src文件夹下的所有.c文件添加到文件中。
之后可以创建个User文件作为自己存放主函数文件,并将main文件保存在工程文件夹下,点击添加新的项目
选择C File,并命名为main,放在对应文件中,点击Add
同样执行上述步骤,选择Header File(.h),命名main,放在相应文件中,点击Add
除此之外将一些系统文件添加到User方便后续使用,在User右键添加存在的文件,选择delay.c和sys.c文件,delay延时在很多地方都能够进行应用,sys文件用来配置时钟。
最后添加.h文件,点击魔术棒按钮
选择C/C++,在Define上填写USE_HAL_DRIVER,STM32F103xE,之后选择三个点
点击创建新的途径,之后选择三个点,找到Inc文件,选择文件夹,之后再创建路径,找到User文件,选择文件夹则.h添加完毕
二、程序编写
代码如下(示例):
在main.c文件中编写以下程序
#include "main.h"
int main(void)
{
while(1)
{
}
}
在main.h文件中编写以下程序,将一些.h文件放入其中,方便后面使用。
#ifndef __main_H
#define __mian_H
#include "stm32f1xx.h"
#include "stm32f1xx_hal.h"
#include "stm32f1xx_it.h"
#endif
注意:程序末尾要有空格,否则会报错。
点击 全部编译查看是否有错误,若未发生错误和警告则模板创建成功。
三、烧录程序
烧录程序点击魔术棒
之后选择Debug,右上角有个倒三角选择ST-LINK,然后ok
如果烧录失败,可以点击上面选择烧录器旁边的Setings,查看是否找到该芯片,如果没有可以看一下接线是否接错,或者芯片是否损坏。
总结
以上就是今天要讲的内容,本文简单创建了STM32hal的工程模板,中间有很多细节需要注意,错一步后续可能会发生报错,出现错误可以重新对照一下看看在哪一步发生的,希望此篇文章能对你学习是STM32hal库有所帮助,如有说错的地方还请批评指正。
附代码文件:
链接:https://pan.baidu.com/s/1hzCq_nN06fB_h3cj6ShVmQ
提取码:zstu