您的位置 首页 芯闻

keil4中头文件途径设置的办法汇总

个人记录:感觉相对路径比较方便。keil是从project文件所在目录找头文件,头文件的相对目录是相对uvproj文件的。目前我的个人习惯是建立:

个人记载:

感觉相对途径比较便利。
keil是从project文件地点目录找头文件,头文件的相对目录是相对.uvproj文件的。
现在我的个人习气是
树立:Doc、Listing、Output、Project、User几个文件夹
Doc放文档和readme
Listing设置为装备中的清单选项卡输出文件夹
Output设置为输出文件夹
Project放树立的工程文件
User放自己写的.c和.h(这部分后期可能做更改)
还能够有OS等操作系统的文件夹。
在这种情况下,包括头文件用相对办法写的话便是类似于:
#include <..Userallkeillibrary.h>
#include <..UserSTC12C5A60S2.h>
#include <..UserMyType.h>
#include <..Userdeclare.h>
#include <..UserstcY3_delay.h>
#include <..Userhmc5883l.h>
#include <..Usermpu6050.h>
#include <..UserSerial.h>
#include <..Userpmw3610.h>
#include <..Userdata.h>
//#include <..Userkalman.h>
以下是转载的正文:

被头文件的途径设置困扰了很长时刻,现在总算知道了!

keil4中头文件途径设置的办法:

假定这儿有若干个文件,别离是:

main.c dong.c peng.h

其间,main.c和dong.c都依靠与peng.h。他们的内容别离如下:

main.c:

绝对途径是:E:MY_DocumentskeilC51includeffdduu

dong.h:

绝对途径是:E:MY_DocumentskeilC51includekkki sdfbh

peng.h:

绝对途径是:E:MY_DocumentskeilC51includeddjjppkk

这儿阐明一下:

在windows环境下: ” . “表明当时目录, ” .. “表明当时目录的上一级目录,而且 “..”能够连用,也便是能够写成 ” ……”表明当时目录的上级目录的上级目录的上级目录。

而在linux环境下,” ./ “表明当时目录, ” ../ “表明当时目录的上一级目录,而且 “../”能够连用,也便是能够写成 ” ../../../”表明当时目录的上级目录的上级目录的上级目录

这儿我将他们别离放在不同的文件夹下面,因为后缀为.c的源文件只需增加到工程之中就会参与编译,而且有必要增加到工程之中。所以这儿只总结一下几种头文件目录的增加办法。

办法一 在keil的开发环境下增加:

请注意上面的系统生成的头文件目录是:,即.ddjjppkk,其间.是相对于项目文件.uvproj而言的,其间 . 表明项目文件地点的当时目录, 项目文件的绝对途径是:E:MY_DocumentskeilC51include,peng.h的绝对途径是:E:MY_DocumentskeilC51includeddjjppkk,很简单看到,peng.h文件就在E:MY_DocumentskeilC51include的ddjjppkk目录下。

假设项目文件在E:单片机系列嵌入式uCOSuCOS-ii 版uCOSII2.91MDK-ARM下,而其间一个头文件在:E:单片机系列嵌入式uCOSuCOS-ii 版uCOSII2.91USERuCOS-IISource

下,那么在keil环境下设置发生的头文件目录是:..USERuCOS-IISource。

办法二 绝对途径法

行将头文件的绝对途径写到#include之后。如下:

在main.c中:

在dong.c中:

办法三、相对途径法

peng.h的绝对途径是:E:MY_DocumentskeilC51includeddjjppkk

main.c的绝对途径是:E:MY_DocumentskeilC51includeffdduu

dong.c的绝对途径是:E:MY_DocumentskeilC51includekkki sdfbh

经过剖析能够得到peng.h相对于main.c途径是:

……ddjjppkk

peng.h相对于dong.c的途径是:

……..ddjjppkk

所以在main.c中修正如下:

在dong.c中修正如下:

办法四 、相对目录+相对目录

在有的 .c 文件中,头文件有如下表明办法:

如有os_dbg.c,其间头文件是这样写的:

#include “uCOS-IISourceucos_ii.h” ,或许写成#include

而os_dbg.c的绝对途径是:E:单片机系列嵌入式uCOSuCOS-ii 版uCOSII2.91USERuCOS-IIPortsARM-Cortex-M3RealView

ucos_ii.h的绝对途径是:E:单片机系列嵌入式uCOSuCOS-ii 版uCOSII2.91USERuCOS-IISource

在keil环境中的头文件途径设置中有:

当时.uvproj的绝对途径是:E:单片机系列嵌入式uCOSuCOS-ii 版uCOSII2.91MDK-ARM

能够看到, “..USER” + “uCOS-IISourceucos_ii.h”不便是ucos_ii.h相对于.uvproj 的途径吗?即 “..USERuCOS-IISourceucos_ii.h”。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/news/xinwen/256108.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部