1.新建文件夹:
在你自己想要存放工程的位置创建一个文件夹用来存放工程文件,我这里直接在桌面创建
2.创建一个keil工程:
和51创建工程一样,选择好芯片即可,这里不再赘述
3:添加工程必要文件:
1:添加启动文件:
打开固件库(文末会放下载链接)路径如下,这些就是stm32程序的启动文件 ,全部复制下来,回到工程文件夹,新建一个Start文件,把上面复制的启动文件放到里面去
再回到固件库如下位置,s0x.h为stm32外设寄存器描述文件,他的作用就和51单片机的头文件REGX52.H一样,是用来描述stm32有哪些寄存器和他对应的地址的,下面两个system文件是用来配置时钟的,这三个文件也复制下来,粘贴到Start文件夹下
接下来,因为stm32是内核和内核外围设备组成的,而且这个内核的寄存器描述和外围设备的描述文件不是在一起的,所以我们还需要添加一个内核寄存器描述文件,打开固件库如下目录
这两个文件就是内核的寄存器描述,因为带了个内核的配置函数,所以多了个.C文件,我们复制下来,也放到Start文件夹下
4.把刚才复制的文件添加到keil工程:
回到创建好的keil工程,点击Source Group再单击一下,把名称改为Start
然后再右键Start,点击第三个,添加已有文件到工程
打开我们刚才创建的Start文件,选择所有文件名
启动文件有很多,我们只需要添加这个md.s即可
剩下的.c和.h文件都要添加进来,一共五个,可以按住ctrl键再依次点击他们然后点击Add,再关闭即可
接下来我们还需要在工程选项里添加上这个文件夹的头文件路径,要不然软件是找不到.h文件的,如下图操作把Start头文件路径添加进来
再选择Start点击添加即可
5.创建一个main函数:
回到工程文件夹下,创建一个User文件,我们的main函数就是放到这个文件夹里的
回到keil,在Target这里右键,Add Group新建组,名叫User
然后在User上右键,点击添加新文件
注意路径要选择User,不然默认是放在文件夹外面的
然后写一个main函数
最后一行要是空行,不然会报错,代码有警告的话,点击魔术棒, 选择Target>ARM Compile>选择V5.06,然后点击左上角编译并建立工程。零错误零警告,到这,工程算创建完成了,但是这工程还没有添加stm32的库函数,所以只能基于寄存器开发。要想基于库函数开发,接下来跟着我操作
6.新建一个库函数文件夹,名叫Library,用来存放库函数
接着打开固件库文件夹,路径如下,把这些文件全部复制到Library。
然后再打开上一级路径的inc同样的把所有文件复制到Library,接着回到keil,和上面操作一样,把新添加进来的文件添加到keil工程,步骤和上面一样,不再赘述。库函数添加好后,我们还要添加一个文件才能使用,路径如下,conf文件是用来配置库函数头文件的包含关系的,两个it文件是用来存放中断函数的,把这三个文件夹复制到工程文件夹User下
一样的,回到keil把这三个文件夹添加到keil工程。最后还需要一个宏定义,打开魔术棒,把这段代码复制到如下位置 USE_STDPERIPH_DRIVER
然后再把User和Library目录路径也添加上
至此,配置完毕,可以愉快地使用库函数进行开发了。