STM32工程模板创建

合集下载

一步步建立 STM32 UCOS 模板

一步步建立 STM32 UCOS 模板

uCOS学习随笔 StepbyStep‐1——构建模板(基于STM32控制的第四代圆梦小车)一、序基于第四代圆梦小车 —— FIRA 设计了一个使用STM32的控制板(详细介绍见项目中的说明: Introduction B ‐ Hardware of the Smart Car.pdf )。

既然硬件从51升级到ARM,软件也应该相应升级,似乎不能再编写那种简单的轮询调度程序,也应该相应升级到基于操作系统编程。

按STM32的规模和性能,以及小车的控制需求,实时多任务操作系统 uCOSII 应该是不二的选择,不论从其性能和功能考虑,还是从学习角度考虑,uCOSII 都很适合。

首先,它是开源的,有丰富的资源。

其次,它是可靠的,符合正式的工业控制、产品设计需求。

小车所面对的是那些学习相关专业的大学生,作为他们学习的辅助工具,趣味性只是为了降低学习的枯燥性,不是目的。

他们借助这个平台是为了积攒应付未来工作的能力,所以,学习内容的实用性是必须考虑的。

本人从未基于操作系统编写嵌入式程序。

开始使用 MCU的时候,MCU的内存太小,256字节 RAM ,2K字节 ROM,能勉强把程序装入就不错了,连 C语言都不敢选择。

而且,那时好像也没有 RTOS(Real Time Operation System),或者是由于信息交流渠道匮乏,不知道有 RTOS。

既然我提供了这个平台,也借此机会尝试一下,和大家一起学习使用 uCOSII。

(从单片机应用升级为嵌入式应用 ^_^)二、Step1想要得到什么?(需求分析)第一步我想得到的是:1)如何建立一个基于 uCOSII 的编程环境(目录、文件组织);2)如何基于IDE(IAR或RvMDK)建立一个工程,能够产生可以运行的程序;3)得到一个“干净的”、可以作为模板的uCOSII程序组(Project);4)通过上述过程初步理解在 uCOSII 下如何编写应用程序。

之所以要把“如何建立……”作为需求,而不是找一个现成的模板或示例程序修改、添加自己的功能,是因为看了许多这种程序,感觉“极不可靠”!因为程序中有太多的东西不知道为何而存在?不知道为何而被注释掉?似乎这些东西都像“定时炸弹”,早晚会给你的程序带来麻烦。

STM32工程模板

STM32工程模板

你是问有官方固件库创建工程吧?我这里给你说说MDK的创建方法,如果你用的时IAR环境也差不多。

1.解压stm32f10x_stdperiph_lib.zip 可以从ST官方网站免费下载。

最新标准库版本为3.5.02.创建一个Demo文件夹2.1 新建子文件夹User,用于存放用户源程序2.2 新建子文件夹Project,用户KEIL工程文件2.3 在Project下依次创建Obj和List子文件夹,存放编译过程中产生的中间文件。

3. 复制源代码到Demo文件夹3.1 将stm32f10x_stdperiph_lib\STM32F10x_StdPeriph_Lib_V3.1.2Li braries文件整体复制到Demo文件夹下。

这就是ST的标准库,是以源代码形式提供的。

3.2 将库中的演示代码IOToggle中的文件复制到Demo\User文件夹.4. 新建一个Keil MDK工程4.1 启动Keil MDK,点击菜单New uVision Project,然后按向导进行操作4.2 选择CPU类型为STM32F103ZE (这是安富莱STM32开发板采用CPU类型)4.3 当提示是否复制启动代码时,请选择否。

(我们用最新的库中的启动代码,不用Keil软件自带的旧版本启动文件)4.4 根据自己的需要修改Target名字。

(名字任意)4.5 为了便于代码管理,在这个Project下创建几个Group (名字可以任意)User : 存放用户自己写的源代码RVMDK : 存放启动文件(汇编文件)StdPeriph_Driver : 存放ST标准库文件CMSIS : 存放CMSIS接口文件(这也是库的一部分)4.6 创建好Group后,我们开始依次添加文件。

5. 修改源代码。

我们将修改main.c 文件,换成我们自己跑马灯程序。

6. 配置工程, 点击“Options”按钮6.1 切换到Output。

选择Object文件夹。

如何为STM32F030建立工程模板6

如何为STM32F030建立工程模板6

如何为STM32F030建立工程模板最近在学习STM32F030的相关知识,在建立工程模板过程中总结了一些经验;这些经验大多是通过网络找到的;实际上是炒了正点原子的剩饭,望其莫怪;现在共享给大家,希望对大家能有帮助;首先、在建立工程之前,建议各位童鞋在电脑的某个目录下面建立一个文件夹,后面所建立的工程文件都放在这个文件夹下面,这里我们建立一个文件夹为LED。

注意,关于文件夹的命名,建议大家都用英文,也就是说让这个工程创建在一个全英文的路径下,这样可以避免在链接的过程出现错误;1、回到MDK主界面,可以看到工程中有一个默认的工程,点击这个工程名字,然后选择菜单Project->Close Project,就关闭掉这个工程了!这样整个MDK就是一个空的了,接下来我们将建立我们的工程模版。

2、点击Keil的菜单:Project–>New Uvision Project,然后将目录定位到刚才建立的文件夹LED之下,在这个目录下面建立子文件夹USER(我们的代码工程文件都是放在USER目录,很多人喜欢新建“Project”目录放在下面,这也是可以的,这个就看个人喜好了),然后定位到USER目录下面,我们的工程文件就都保存到USER文件夹下面。

工程命名为LED,点击保存。

接下来,我们在LED工程目录下面,新建3个文件夹CORE,OBJ以及STM32F0_FWLib。

CORE用来存放核心文件和启动文件,OBJ是用来存放编译过程文件以及hex文件,STM32F10x_FWLib文件夹顾名思义用来存放ST官方提供的库函数源码文件。

USER目录除了用来放工程文件外,还用来存放主函数文件main.c,以及其他包括system_stm32f10x.c、等等3、接下来会出现一个选择芯片型号的“Device”界面,就是选择我们的所用芯片的型号,这里我们定位到STMicroelectronics下面的STM32F030R8;然后点击“OK”即可;(如果是其他芯片,请选择对应的型号即可)。

【自写】如何使用STM32_V3.5版本固件库在Keil4下建立工程模板

【自写】如何使用STM32_V3.5版本固件库在Keil4下建立工程模板

如何使用STM32_V3.5版本固件库在Keil4下建立工程模板By 呼延靖国准备工作如下:1.下载STM32F10x_StdPeriph_Lib_V3.5.0固件库。

2.下载并安装好Keil uVision V4.10(MDK4)开始:1.首先解压STM32F10x_StdPeriph_Lib_V3.5.0固件库。

PS:保留一个备份,你懂的。

解压得到如图1所示的几个文件夹。

其中_htmresc文件夹:里面是ST的Logo图片,没有多大用,可以删除。

Libraries文件夹:是比较重要的文件包含STM32的系统文件和大量头文件,即库文件。

Project文件夹:里面为STM32F10x的例程和工程模板。

Keil对应的就是 MDK-ARM 文件下的工程模板。

也可以利用这个工程模板为原型建立自己的工程模板本文不用此法。

Utilities文件夹:里面有一些实用程序,也没多大用,可删除。

Release_Notes.html:版本注视,可删除。

stm32f10x_stdperiph_lib_um.chm:帮助文件,你懂的。

2.为了项目程序中的各部分条理清晰,我们建议工程文件夹时对其子目录子下归类建立子文件夹,例建立一个工程文件夹My Project,在其下在创建五个子文件夹如图2所示:其中:CMSIS文件夹:此文件夹从STM32F10x_StdPeriph_Lib_V3.5.0固件库中的CMSIS文件夹直接复制过来。

Libraries文件夹:此文件夹从STM32F10x_StdPeriph_Lib_V3.5.0固件库中的Libraries文件夹复制过来。

只保留当中的inc和src文件夹。

即只包含头文件。

Startup文件夹:此文件夹从CMSIS\CM3\DeviceSupport\ST\STM32F10x\Startup目录下直接将Startup文件剪切出来。

其中放置的是启动代码,具体的代码根据所用芯片的容量选择,我们用的STM32F103C8为中等容量芯片,故选择其中的startup_stm32f10x_md.s启动代码,其他不用的可以删除User文件夹:User文件夹为用户的应用程序,其中包括main.c,stm32f10x_conf.h,stm32f10x_it.c,stm32f10x_it.h四个文件,这四个文件可从V3.5.0固件库Project\STM32F10x_StdPeriph_Template目录下复制过来,当然main.c文件中的内容可删除。

STM32F103RC的工程模板创建

STM32F103RC的工程模板创建

地址:安徽省、合肥市、肥东县、店埠镇,合肥市福来德电子科技有限公司STM32F103RC 的工程模板创建一、STM32F103RC 的工程模板创建1、先在D:\program\KEL_MDT_ARM 目录下创建一个文件夹,命名为“STM32_Template” 在D:\program\KEL_MDT_ARM\STM32_Template 目录下创建5个文件夹,分别命名为 “USER”, “OUTPUT ”,“LISTING”,“FWLIB ”和“CMSIS ”。

见下图:“USER”文件夹用来存放工程文件和用户代码。

“OUTPUT”文件夹用来保存软件编译后的输出文件。

“LISTING”文件夹用来存放编译过程中产生的文件。

“FWLIB ”文件夹用来存放STM32固件库的所有驱动文件。

“CMSIS“文件夹用来存放STM32固件库自带的库文件和M3系列的通用文件。

2、双击“Keil uVision4”图标,弹出下面的图:地址:安徽省、合肥市、肥东县、店埠镇,合肥市福来德电子科技有限公司3、点击“Project ”菜单下的“New uVision Project...”,见下图操作:4、找到D:\program\KEL_MDT_ARM\STM32_Template\USER 的目录,得到下面的对话框:地址:安徽省、合肥市、肥东县、店埠镇,合肥市福来德电子科技有限公司5、在上图的文件名栏目里输入“STM32-DEMO”,见下图:6、点击“保存”按钮,弹出下图对话框:地址:安徽省、合肥市、肥东县、店埠镇,合肥市福来德电子科技有限公司7、我们是用STM32F103RCT6,所以先找到芯片公司“STMicroelectronics ”,见下图:8、点击“STMicroelectronics”左边的“+”号,找到“STM32F103RC”,见下图:地址:安徽省、合肥市、肥东县、店埠镇,合肥市福来德电子科技有限公司9、点击“OK ”按钮,得到下面的对话框:10、点击“否(N )”按钮,得到下面的界面:地址:安徽省、合肥市、肥东县、店埠镇,合肥市福来德电子科技有限公司11、打开D:\program\开拓者3号\STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\STM32F10x_StdPeriph_Driver 目录下,见下图:12、将上图中两个文件“inc”“src ”拷贝到D:\program\KEL_MDT_ARM\STM32_Template\FWLIB 目录下。

keil4建立ARM(STM32)工程和设置

keil4建立ARM(STM32)工程和设置

此篇根据个人的mdk4.5+JlinkV8使用状况,来写的日记,我只捡一些个人碰到的一些大众化的问题来说,其他的我就贴图了(也会简单说一下),高手可以掠过。

呵呵1新建工程,和增加源代码a.创建工程:点上述的按钮后,自己输入自己的工程名称,选择路径,然后保存.b.增加一个Groupc.增加源文件:1.自己编写的源文件:File New ,Ctrl+s ,输入源文件名, 选择路径,然后保存2.复制已有的源文件到一个文件夹下,然后如下图所示, 把所有源文件增加进来.(个人比较懒,实验工程,所以就一个group把所有的源码全加进来了。

)增加所有源文件后的界面2 keil4设置,我把我的设置全部贴图,我自己碰到的问题,会提出来说下。

a.点击target option按钮,进入设置界面图1. device(我的是STM32F103ZET6芯片)图2 Target上述的注意的几个地方:Xtal :( 我用的是8M晶振)System_V iew File:根据我之前的情况来看,只要其他的选好了,keil是可以自行增加的,这里关注下,我的是手动添加的(这里用的是绝对路径,至少我尝试是无法设置成相对路径的)。

这个文件大家可以在..\Keil\ARM\SFD\文件夹下找到相应的文件ROM和RAM的设置:各自根据自己的实际情况来设置3.Output选项卡需要选中debug information,Browse information (碰到在C中无法增加断点的情况,个人误打误撞选中这两个后就可以了,后来实验过取消和增加确实和能不能增加断点有关系,还是建议勾选上)4.Listing选项卡和User选项卡,ASM选项卡我没有做任何更改,就略过.(如果用汇编的话,应该要设置的吧)5.C/C++选项卡我只修改了Inlcude Path 选项卡(包含的头文件路径)a.使用绝对路径。

点击右侧小按钮,然后挨个挨个找吧(不方便移植)。

IAR下建立STM32工程

开发工具:JLink V7.0开发环境:IAR5.3第一步:下载函数库从ST官方网站下载STM32 V3.0固件函数库。

第二步:复制库文件将下载的软硬件函数库解压后,将目录中的【Libraries】目录拷贝到您的项目目录中,然后【Project】目录下的【Template】目录下的main.c、stm32f10x_conf.h、stm32f10x_it.c、stm32f10x_it.h四个文件拷贝到您的目录下,然后将【Project】——【Template】——【EWARMv5】目录下的四个加载镜象文件复制到您的止录下。

所以这些完成后您的项目中的文件差不多如下图所示了:第三步:加载文件启动IAR5.3开发环境,选择在当前工作空间建立新项目,将提示工具选择,选择ARM即可;项目模板选择,直接选择空项目即可选择完毕后单击OK按钮,提示项目文件存放位置,直接存到之前新建的项目目录中即可。

然后按下图所示添加各文件组,并将相应的文件添加进去就可以了。

第四步:配置IAR 5.3右击项目文件(比如上图中的MyProject - Debug),选择右击菜单中的【Options】按钮,将出现项目配置选项卡。

选择【General Options】,在【Target】页中选择【Device】,再点击【Device】右侧的器件选择按钮,选择您的STM32芯片。

选择完毕后将如下图所示:选择【C/C++ Compiler】,再选择【Preprocessor】页在【Additional include directories】的文本框中,输入您的项目所需索引的头文件地址,配置完成后,将如下图所示:选择【Linker】,再选择【Config】页,将【Override Default】复选框选中,单击文本框右侧的文件选择按钮,在您的项目根目录中选择您要连接配置的文件(比如您准备将程序在Flash中运行,则选择stm32f10x_flash.icf),配置完成后,将如下图所示:选择【Debugger】,再选择【Setup】页,在【Driver】下拉选择框中选择【J-Link/J-Trace】,配置完成后,将如下图所示:完成以后操作后,点击Make命令按钮,提示保存Workspace file,输入您要保存的名称(比如就上面的项目就取名为MyProject),点击保存后,系统进行编译。

STM32F4工程模板建立方法

STM32F4工程模板建立方法在Keil环境下建立STM32F4的工程模板可以按照以下步骤进行操作:1. 打开Keil软件,选择“Project”->“New µVision Project”命令,弹出新建项目对话框。

2. 在对话框中选择工程的保存路径和名称,点击“Save”保存。

3. 在“Create Project Folder”对话框中选择是否要在工程文件夹中创建子文件夹,选择“Yes”或“No”并点击“OK”完成创建。

4. 弹出新建文件对话框,选择需要添加到工程中的文件类型,例如C源文件或者汇编文件,点击“Save”保存。

5. 在“Options for Target”对话框中选择芯片型号和包装封装类型,并点击“OK”关闭对话框。

6. 在Keil主界面的工程文件窗口中右键单击“Source Group”文件夹,选择“Add Existing Files to Group 'Source Group'”命令,选择要添加到工程的源文件,并点击“Add”完成添加。

7. 右键单击“Include”文件夹,选择“Add Exist ing Files to Group 'Include'”命令,选择要添加到工程的头文件,并点击“Add”完成添加。

8. 在工程文件窗口中选择“Options for Target”->“C/C++”选项,在右侧的Edit框中添加需要进行编译的文件路径,在Options forTarget - C/C++窗口中点击“OK”完成路径设置。

9. 在工程文件窗口中选择“Options for Target”->“Output”选项,在右侧的Edit框中选择输出文件的路径和名称,点击“OK”完成路径设置。

10. 在Keil主界面的工具栏中点击“Build”按钮进行编译,编译成功后会生成目标文件和可执行文件。

注意事项:1.在建立工程模板时,需要根据实际的芯片型号和芯片封装类型进行设置,确保编译器和调试工具能够正确地识别和支持所选的硬件。

使用Keil MDK以及标准外设库创建STM32工程

使用Keil MDK以及标准外设库创建STM32工程1.1 使用Keil MDK以及标准外设库创建STM32工程通过上一节对标准外设库的介绍,想必各位读者对标准外设库已经有了基本的认识,然而由于标准外设库中文件众多,很多初学者在开始很长一段时间内甚至都无法完全自己建立一个工程,很多人只是依赖标准外设库或给定的工程模板。

本节就介绍怎样利用Keil MDK 开发环境和标准外设库来搭建自己的工程。

建立一个基于标准外设库其实并不复杂,网络上也有很多关于怎样在Keil MDK下建立工程的教程,方法也各异,本节所介绍的方法本着少改动、便于使用、方便更换器件等原则,给大家介绍怎样在Keil中创建一个工程,并以一个最简单的例子来说明怎样下载和调试程序。

1.1.1 开发工具与开发环境1. 软件版本本节所使用Keil MDK 为目前的最新版V4.21,具体版本信息如图5-6所示。

其他版本差别不大,读者可以根据自己使用的版本进行操作或者从Keil的官网下载新版本。

使用的标准外设库为目前最新的V3.5版本。

使用的开发调试工具为JLINK-V8,使用的驱动版本为V4.08l。

图5-6 MDK详细版本信息2. 建立工程目录首先先建立一个用于存放工程的文件夹,此处命名为STM32,在文件夹下分别建立LIB、USER、MDK三个文件夹,分别用于存放标准外设库文件、用户程序文件、工程目录。

在MDK 文件夹下建立List、Obj两个文件夹,分别用于存放在编译过程中产生的临时文件和输出文件。

接下来拷贝标准外设库和相应的文件到工程目录中,首先拷贝STM32F10x_StdPeriph_Li b_V3.5.0\Libraries文件夹下的两个文件夹CMSIS和STM32F10x_StdPeriph_Driver到刚刚新建的STM32\LIB目录下,接下来拷贝用户编写程序的程序文件,此文件可以从标准外设库自带的例程中拷贝,这里从STM32F10x_StdPeriph_Lib_V3.5.0\Project\STM32F10x_StdPeriph_Exam ples\ADC\3ADCs_DMA目录下拷贝main.c、stm32f10x_conf.h、stm32f10x_it.c、stm32f10x_it. h四个文件,这四个文件是在编程的时候用户往往需要根据实际需求进行修改的。

STM32建立工程模板

1 建立工程
1)新建
2)命名并保存在USER 文件夹里
3)选择单片机的型号
根据使用单片机的型号进行选择
2 创建工作组
1)点击工作组管理图标
2)添加工作
在现有工作组上双击即可改名字,单击左第一个图标可以添加新的工作组
3)添加c文件到各个工作组c文件
添加方法
添加下一个
A 启动代码
路径CMSIS/StaruptCode
B 添加内核文件
路径CMSIS
C STM32库文件
路径FWlib/src
D 用户编写的延时和一些宏定义
路径SYSTEM/delay
SYSTEM/sys
E 添加主函数
路径USER
3 添加头文件宏定义,头文件路径
1)将STM32F10X_HD,USE_STDPERIPH_DRIVER填入STM32F10X_HD 根据使用芯片容量要进行修改此内容STM32F10X_HD 大容量芯片
STM32F10X_MD 中容量芯片
STM32F10X_LD 小容量芯片
2)添加头文件路径
4 测试是否通过
编译没错即可。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

STM32工程模板创建
1.新建文件夹“工程模板”,打开,新建文件夹“APP”、“output”、“startup”、“user”。

2.从STM32固件库中将“Libraries”文件夹拷贝到“工程模板”中。

3.将STM32固件库/Project/STM32F10x_StdPeriph_Template/main.c STM32固件库
/Project/STM32F10x_StdPeriph_Template/stm32f10x_conf.h
STM32固件库/Project/STM32F10x_StdPeriph_Template/stm32f10x_it.c STM32固件库/Project/STM32F10x_StdPeriph_Template/stm32f10x_it.h 等文件拷贝到“user”中
4.打开Keil MDK,新建工程
5.点击图标在Gruoups中创建user cmsis startup APP
stdperiph_Drive等组
在user中添加main.c stm32f10x_it.c文件
在cmsis中添加文件Libraries/CMSIS/CM3/CoreSupport/core_cm3.c Libraries/CMSIS/CM3/DeviceSupport/ST/STM32F10x/system_stm32f10x. c
在startup中添加文件
Libraries/CMSIS/CM3/DeviceSupport/ST/STM32F10x/startup/arm/startu p_stm32f10x_hd.s
在stdperiph_Drive中添加文件
Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_gpio.c
Libraries/STM32F10x_StdPeriph_Driver/src/stm32f10x_rcc.c
6.点击图标将Output选项卡中Create HEX File打钩,点击
选择Output文件夹点击OK
Listing选项卡点击选择Output文件夹点击OK
C/C++选项卡在位置输入
“USE_STDPERIPH_DRIVER,STM32F10X_HD”
点击后面…添加成
点击OK 7.在main中输入自己要编写的程序代码就可以了。

相关文档
最新文档