尽管一向ST用库做试验,但没有进行仔细的总结。总是先增加价格文件,然后编译。能经过就完结,通不过就再增加其他文件。今日就一步步来整理下树立用库工程的过程。争夺做到傻瓜式,让即便彻底没用过MDK的人都能运用。
第一步:到ST下载规范外设库和演示工程,也能够问卖你开发板的人要。我的库文件是淘宝商给的。能够经过我的百度网盘下载。
下载后解压缩即可。此刻能够进入各个目录简略了解下外设库里面的东西
第二步,树立MDK工程
翻开MDK程序,会主动翻开前次的工程。咱们关掉它,然后再新建咱们自己的工程:
这时会弹出创立工程对话框,挑选要保存的方位,然后挑选你的MCU。
这儿我树立的是一个运用TIm定时器的工程,工程文件名为TIM。运用的MVU为STM32F4VG。昨夜这些挑选点击就会弹出对话框,问询是否要将STM32F4系列MCU的发动文件仿制到工程文件夹,点击承认让仿制到咱们的工程文件夹里面。
这是咱们就能够看到咱们新建的工程了。
安排工程目录:
工程目录与实践文件目录没有必定的对应联系。咱们能够依据自己需求增加。
这儿我界说的几个目录:user,寄存主函数和一些功用函数。board:自己写的外设初始化和外设运用,periph寄存ST规范外设库
第三步,增加外设库到工程【要点】
在第一步中解压后的文件夹中,进入STM32F4-Discovery_FW_V1.1.0ProjectPeripheral_Examples中。这儿寄存的是ST规范库的例程。咱们需求在这儿仿制几个文件到咱们的工程中。
进入任一一个工程文件夹,我运用的是ADC3_DMA。找到以下几个文件,将其仿制到咱们的工程中去:
stm32f4xx_conf.h stm32f4xx_it.c stm32f4xx_it.h system_stm32f4xx.c
其间system_stm32f4xx.c中界说了一些时钟初始化的函数,在方才向工程中增加的发动文件会调用这儿的函数。
增加完这些文件之后,开端设置工程选项,在Project窗口中挑选Target1之后在Project菜单中调出工程特点对话框:
先勾选这个:
翻开C++/C++选项卡
这儿要能够将外设库的inc文件夹、寄存board目录中文件文件夹、还有组工程目录文件夹参加。
我参加玩引证的终究作用:
点击OK退出即可。
之后咱们就能够向工程中增加外设库文件了。增加文件跟方才的安排工程目录相同,点击addfile,会弹出增加文件对话框。
在右边对话框中定位到在方才解压缩的文件夹中:STM32F4xx_StdPeriph_lib v1.0.2STM32F4xx_StdPeriph_Driversrc
挑选需求的文件即可。由于我需求运用TIm定时器,做PWM输出试验。所以除了TIm库还要增加GPIO库。
此外misc.c文件是一切工程都要增加的,rcc库是界说时钟所必需的,也同时将其增加到工程中。
第四步:增加主函数文件
File-》new save 文件名可随意,后缀必需为.c。我命名为main.c
在main.c中增加主函数界说和对公共头文件stm32f4xx_conf.h的引证。stm32f4xx_conf.h包含了对一切的外设库的引证。
#include “stm32f4xx_conf.h”
int main()
{
while(1);
}
保存之后,使用上边的办法将这个文件增加到工程的user目录中。
最终的工程目录结构是这样的:
在此刻,假如安键盘上的F5进行编译的话会报一堆过错:Undefined symbol assert_param
这是由于咱们还短少一个红界说,库文件里面的一些条件编译选项需求这个界说才能用。咱们翻开工程特点菜单,从头定位到C/C++选项卡。增加宏界说:USE_STDPERIPH_DRIVER,
从头编译即可。
到此工程树立结束。假如你还需求用到其他外设,只要将外设库文件参加到工程中即可。