欢迎来到天天文库
浏览记录
ID:10792140
大小:744.00 KB
页数:8页
时间:2018-07-08
《如何使用stm32_v3.5版本固件库在keil4下建立工程模板》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、如何使用STM32_V3.5版本固件库在Keil4下建立工程模板准备工作如下:1.下载STM32F10x_StdPeriph_Lib_V3.5.0固件库。2.下载并安装好KeiluVisionV4.10(MDK4)开始:1.首先解压STM32F10x_StdPeriph_Lib_V3.5.0固件库。PS:保留一个备份,你懂的。解压得到如图1所示的几个文件夹。其中_htmresc文件夹:里面是ST的Logo图片,没有多大用,可以删除。Libraries文件夹:是比较重要的文件包含STM32的系统文件和大量头文件,即库文件。Project文件夹:里面为STM32F10x的
2、例程和工程模板。Keil对应的就是MDK-ARM文件下的工程模板。也可以利用这个工程模板为原型建立自己的工程模板本文不用此法。Utilities文件夹:里面有一些实用程序,也没多大用,可删除。Release_Notes.html:版本注视,可删除。stm32f10x_stdperiph_lib_um.chm:帮助文件,你懂的。2.为了项目程序中的各部分条理清晰,我们建议工程文件夹时对其子目录子下归类建立子文件夹,例建立一个工程文件夹MyProject,在其下在创建五个子文件夹如图2所示:其中:CMSIS文件夹:此文件夹从STM32F10x_StdPeriph_Lib_
3、V3.5.0固件库中的CMSIS文件夹直接复制过来。Libraries文件夹:此文件夹从STM32F10x_StdPeriph_Lib_V3.5.0固件库中的Libraries文件夹复制过来。只保留当中的inc和src文件夹。即只包含头文件。Startup文件夹:此文件夹从CMSISCM3DeviceSupportSTSTM32F10xStartup目录下直接将Startup文件剪切出来。其中放置的是启动代码,具体的代码根据所用芯片的容量选择,我们用的STM32F103C8为中等容量芯片,故选择其中的startup_stm32f10x_md.s启动代码,其他
4、不用的可以删除User文件夹:User文件夹为用户的应用程序,其中包括main.c,stm32f10x_conf.h,stm32f10x_it.c,stm32f10x_it.h四个文件,这四个文件可从V3.5.0固件库ProjectSTM32F10x_StdPeriph_Template目录下复制过来,当然main.c文件中的内容可删除。Project文件夹:此文件夹用来存放项目文件。比如你等下要建立的工程名字MyProgram.uvproj,就放在这里。在该文件下存放一些项目的输出信息,OUTPUT,和LISTING信息,可以建立这两个文件夹,之后就可以在OPTI
5、ONSFORTARGET'PROJECT'里面进行路径设置。1.打开Keil4软件,在Project菜单下选择NewuVisionProject新建新的项目,键入新的项目名称如MyProgram,保存到刚才的Project文件夹下面。2.选择芯片类型,根据实际情况选择芯片类型,我们在这里选择STM32F103c8,确定后弹出一个窗口询问是否复制启动代码,选择“否”,如图所示。这时新的项目工程就建立了。1.这时点击如图所示的图标。弹出如下窗口:可根据实际需要添加相应的文件,如图所示:添加完后Project区域的树形结构如图所示:1.接下来要设置设置目标选项,点图标进入T
6、argetOption界面如图所示,在上面设置晶振的实际时钟频率,我们所用的时钟为8.00MHz。选择Output项进行如图所示设置。点击Listing选项,并配置Listing文件的所在路径为Projet下的Listing文件夹。接下来配置编译器的路径,设置如图所示:在“C/C++”选项中我们可以加入预定义的宏,这里请一定加入USE_STDPERIPH_DRIVER,STM32F10X_MD这两个宏。另外,我们在下面的“IncludePaths”框中可以填入我们.h文件所在的目录,如“.Lib;.Libinc;.User”,方便编译器搜索头文件定义。如果现在
7、编译,还是有错误的。可以先编译下,因为main.c中有头文件#include"stm32f10x.h"这句,在这个重要的头文件里,并没有定义好一些东西,分别在stm32f10x.h文件中取消对#defineSTM32F10X_MD和#defineUSE_STDPERIPH_DRIVER的屏蔽,这两个定义好,才能正常工作,第一个是选择存储容量的型号,每种芯片都不太一样,所以让你选择,第二个是使用标准库文件,因为我们是要用库的,所以必须选择,默认是不用库的,直接进行寄存器的操作。也可以直接如下图操作。在Define中添加USE_STDPERIPH_DRI
此文档下载收益归作者所有