MDK+VS+Eclipse的STM32库V3.5工程模板的建立(四)

_【@. 目录】

@.1 开篇

@.2 MDK工程建立

@.3 Visual Studio工程建立

@.4 Eclipse工程建立

@.5 工程模板实例:标准库GPIO实例讲解、仿真、下载

@.6 工程模板下载

【@.4 Eclipse工程建立】

对于喜欢使用Eclipse的用户来说,用Eclipse同样能达到快速高效地管理和建立项目工程。同样的,Eclipse也适合于调用gcc等编译器来实现源代码的编译,不过这不在本篇的讨论范围之内。注意,Eclipse并不像VS或MDK那样有自己的工程文件,只能通过导入工程来实现本工程模板的编辑。

一.建立Project

@->首先确保电脑里面预先有配置好的带有CDT插件的Eclipse,若没有,可以参考我的另一篇博文进行安装配置。

@->双击eclipse.exe,新建一个workspace路径随便建立在哪。点击File->New->Project建立工程,选择C/C++分支下面的C Project↓(请再次确保你的eclipse是否安装有CDT插件,若没有,则不会出现C/C++工程模板的建立)

image

@->在之后的工程建立向导中首先勾掉'Use default location'前面的勾。eclipse会默认将新建的工程project文件目录建立在前面创建的workspace中。而我们这里需要建立在我们的工程目录中。工程名填写STM32F10x_ECL,选择Project type选择Executable->Empty Project,Toolchains选择MinGW GCC即可,因为我们也不会进行实际的编译。

image

@->点击下一步,编译选项保留默认点击finish即可。若出现提示窗口确认是否'Open Associated Perspective',确认即可。

二.建立工程目录

@->在Project Explorer中右击我们的工程,点击New->Folder新建目录。

image

@->点击Advanced,勾选Folder is not located in the file system(Virtual Folder),按照之前MDK,Visual Studio的工程目录建立eclipse中的工程目录。当然这个工程目录在实际的系统文件中是不存在的。Folder Name中填写USER。之后按照同样的方法建立'CMSIS','STM32_LIB','STM32_STARTUP‘三个文件夹。

image

@->之后,跟Visual Studio和MDK中不同,我们再新建一个'_INC'的文件夹,将包含我们所有的头文件。注意,在MDK和VS中我们都没有将头文件专门放到一个文件夹中,而是通过设置Include Path来让编译器寻找头文件,而且为了工程目录的独立性,将这些路径都设置为相对路径(VS和MDK中默认都是相对路径)。但是在eclipse中,向之前建立的工程目录中的文件夹中添加文件可以使相对路径,但是设置Include Path时设置的相对路径我没有设置成功过,所以我采用的方法是将所有头文件添加到工程目录中,并将Include Path路径设置为工程目录中,即可完成相对路径的包含。如果你能找到直接像MDK和VS中,设置头文件的相对路径的话可以自己进行更改即可。

@->最终的文件目录结构如下↓

image

三.添加源文件

@->右键USER->New->File,在添加新文件对话款中点击Advanced,选中Link to file in the file system,点击Browse,选中我们工程目录下User\scr中的main.c。这里添加的是绝对路劲的引用,若选中后面的Variables时则可编辑相对路径,但是我们先不选中,等所有文件添加完毕时可以有另一种快速方法修改为相对路径。

image

@->用同样的方法添加跟MDK和VS在工程目录中同样的路径,总结如下

 

USER:

   -User\scr\main.c,

   -User\scr\stm32f10x_it.c

STM32_STARTUP:

   -Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\arm\startup_stm32f10x_md.s

STM32_LIB:

   -Libraries\STM32F10x_StdPeriph_Driver\src\misc.c

   -Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_gpio.c

   -Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_rcc.c

   -Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_usart.c

CMSIS:

   -Libraries\CMSIS\CM3\CoreSupport\core_cm3.c

   -Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x\system_stm32f10x.c

 

@->跟MDK和VS中不同的是需要添加所有头文件到'_INC'中。我们用另一种方式添加。右击_INC->Import,选择General->File System,在from directory中浏览到工程目录中头文件所在目录,我们先选择'Libraries\STM32F10x_StdPeriph_Driver\inc'这个目录。选择Select All,点击下面的Advanced,选中Create links in workspace,在下面的Create link locations relative to 中切换到PROJECT_LOC。因为我们的workspace和project目录不在一起,所以不能选择workspace。确定即可添加。

 image

@->结合前面的方法,添加到_INC目录下的问价总结如下

_INC

   -Libraries\STM32F10x_StdPeriph_Driver\inc\所有.h文件

   -User\inc\stm32f10x_conf.h

   -User\inc\stm32f10x_it.h

   -Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x\stm32f10x.h

   -Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x\system_stm32f10x.h

   -Libraries\CMSIS\CM3\CoreSupport\core_cm3.h

image

@->修改源文件的绝对路径为相对路径。右击工程名->Properties,选择Resource->Linked Resources,切换到Linked Resources选项卡。选中所有的Absolute Path Location下的文件,点击右侧的Convert即可。最后再次确认下所有路径名都是以PROJECT_LOC开头的。

image

四.添加头文件引用

@->右击工程名->Properties,选择C/C++ General->Paths and Symbols,在Includes选项卡中点击Add,在新弹出的Add direcory path中勾选Add to all configurations,点击Workspace,选中刚才我们的_INC文件夹即可。

image

@->现在已经设置好路径了,可以开始编写我们的项目了。注意,Eclipse中跟VS和MDK中区别的是,若自己写了一个头文件,需要按照前面的方法手动添加到_INC文件夹中,而VS和MDK是设置的包含路径,直接将头文件方法哦路径中即可。

五.Eclipse功能优化

为了能在编写代码时有更好的体验,对一些选项进行设置

@->关掉拼写检查功能:Windows->Preferneces,选中左侧General->Editors->Text Editors->Spelling,去掉前面的Enable spell checking。

@->扩大最大允许索引行数:Windows->Preferneces,选中左侧C/C++->Editor->Scalability,将scalability mode detection中最大行数修改为50000。否则你可以试试不改的话,当文件很长(比如头文件)就会弹出提示开启scalability mode。若开启,则会因为节省性能而关闭代码提示功能。

@->代码提示(Content Assist)的默认键为Alt+/,当输入部分函数或变量等时,按下Alt+/将会提示可能匹配的名字。若需要修改这一快捷键,找到Windows->Preferneces,选中左侧General->Keys,找到Content Assist改为你需要的即可。

六.导入Eclipse工程

当实际使用eclipse时,并不像MDK或VS那样双击工程文件即可,而是需要导入eclipse的工程文件。

@->打开eclipse,新建的workspace随便建在哪里,之后点击FIle->Import,选择分类General->Existing Projects into Workspace。

image 

@->选择Select root directory->Browse,浏览到我们的工程目录下'Solution\ECL'文件夹,选中我们的工程即可导入。导入的工程将不会复制到你新建的workspace内,所以可以放心使用。

image

@->导入的工程在之前设置的优化功能应该失效了,需要自己重新设置一遍。

@.[FIN]      @.date->Nov 21, 2012      @.author->apollius

posted on 2012-11-24 14:24  apollius  阅读(2204)  评论(0编辑  收藏  举报

导航