IAR和Keil文件包含路径设置
在模块化编程时,为一个模块单独设置头文件是必不可少的。
在两款主流编译器中,在引用模块函数时候,包含头文件路径是必须的,那么设置文件路径的准确性就显得尤为重要。
否则,编译器会报错,无法打开某某头文件!
结合自己的经验,总结下在这两款编译下如何设置文件包含路径:
首先是工程的建立,在实际的工程文件夹下,一般都会有project文件夹用来保存实际工程,例如建有同project平级的文件夹driver用来保存驱动函数,driver下又分为inc和src,分别用来保存驱动函数的头文件和源文件,又建有文件夹peripheral用来保存外设驱动函数,peripheral文件下又分为inc和src,分别用来保存驱动函数的头文件和源文件。
假设如下图:

假设现有gpio.h在driver\inc中;
有iic.h在peripheral\inc中;
【IAR设置包含路径方法】
C/C++ Compiler中Preprocessor中做如下设置:
$PROJ_DIR$\driver\inc
$PROJ_DIR$\peripheral\inc
【Keil设置包含路径方法】
C/C++中IncludePath做如下设置:
..\driver\inc
..\perpheral\inc
IAR和Keil文件包含路径设置的更多相关文章
- VS2010 项目属性的默认包含路径设置方法
VS2010 项目属性的默认包含路径设置方法 分类: c++小技巧2014-01-10 10:16 1358人阅读 评论(0) 收藏 举报 c++ 有两种方法可以设置vs2010的默认包含路径 方法一 ...
- eclipse插件SCON的SConscript文件和头文件以及C文件包含路径
1. 本次的头文件路径\Hi2110-B657SP3-SDK\src_release_657SP3\src\lib\onenet\public,以此例子作为研究,本次开发使用eclipse,用到SCO ...
- Jmeter如何把CSV文件的路径设置成一个变量,且变量的值是一个相对路径
首先,在Jmeter中,通过User Defined Variables设置一个变量用来存储CSV文件所在文件夹的相对路径 备注: 这个相对路径前面不要加.\ 加了的话在运行的时候会报错,提示找不到那 ...
- Django的模板文件的路径设置
TEMPLATES = [ { 'BACKEND': 'django.template.backends.django.DjangoTemplates', 'DIRS': [], 'APP_DIRS' ...
- vc下项目的头文件包含目录以及库导入预计库目录设置
1.包含目录:include 头文件包含目录设置: project->setting->C/C++->常规: Additional include directories(附加包含目 ...
- XCode环境变量及路径设置
一般我们在xcode里面配置包含工程目录下头文件的时候,都要关联着相对路径和绝对路径,如果只是自己用这个项目,用绝对路径的问题不大,但是如果你把工程发给别人,别人就要在改这个绝对路径,这时候绝对路径的 ...
- 【转】XCode环境变量及路径设置 -- 待学习
原文网址:http://www.cnblogs.com/oc-bowen/p/5140541.html 一般我们在xcode里面配置包含工程目录下头文件的时候,都要关联着相对路径和绝对路径,如果只是自 ...
- 2020/1/31 PHP代码审计之文件包含漏洞
0x00 文件包含简介 文件包含漏洞的产生原因是在通过引入文件时,引用的文件名,用户可控,由于传入的文件名没有经过合理的校检,或者校验被绕过,从而操作了预想之外的文件,就可能导致意外的文件泄露甚至恶意 ...
- 使用powershell批量添加Keil和IAR的头文件路径
在Keil和IAR的工程中,为了使文件结构清晰,通常会设置很多的子文件夹,然后将头文件和源文件放在不同的子文件夹中,这样就需要手动添加这些头文件夹的路径.当工程结构非常复杂时,文件夹的数量就非常多,特 ...
随机推荐
- git换行符之autoCRLF配置的意义
关于git换行符处理的问题,我查了一查,自己的设置中,global-config中设了autocrlf=false,systemwide中将autocrlf设成了true. 关于配置的作用域,syst ...
- OSI参考模型初识
纪念我曾今热爱的数通(^o^). 1.osi参考模型 2.数据的封装和解封装 3.主机和主机间通信
- Elasticsearch相关配置(二)
一.关于elasticsearch的基本概念 term 索引词,在elasticsearch中索引词(term)是一个能够被索引的精确值.foo,Foo Foo几个单词是不相同的索引词.索引词(ter ...
- 利用requestjs优化响应式移动端js加载
html: <script data-main="main" src="require.js"></script> main.js re ...
- Chapter 17_3 table的默认值
对象属性 有很多情况需要把有些属性绑定到某个对象,例如:函数与其名称.table的默认值.数组大小等... 当对象是一个table时,可以通过适当的key将属性存储在这个table中. 如果对象不是一 ...
- SAP HANA中创建层次分析视图(Hierarchy Analytic View)
1. 创建层次Attribute View: ATTR_PRODUCT_HIERACHY ref: http://www.cnblogs.com/omygod/archive/2013/04/30/ ...
- Framebuffer的配置及应用——先转载留着,以后一定要弄懂
http://blog.csdn.net/tju355/article/details/6881389 借助于framebuffer,我们能够在console下面作很多事情.首先下载framebu ...
- HDU 5033 Building(单调栈)
HDU 5033 Building(单调栈) 题目链接http://acm.hdu.edu.cn/showproblem.php?pid=5033 Description Once upon a ti ...
- CVE-2014-1767 利用分析(2015.2)
CVE-2014-1767利用分析 参考这篇文章利用思路,重现利用,主要说明自己在实现的时候遇到的坑. 利用思路 1. 第一次 IoControl,释放 MDL,我们通过 VirtualAddress ...
- 为什么要html语义化?
1.什么是HTML语义化? <基本上都是围绕着几个主要的标签,像标题(H1~H6).列表(li).强调(strong em)等等> 根据内容的结构化(内容语义化),选择合适的标签(代码语义 ...