IAR基本选项配置_第1页
IAR基本选项配置_第2页
IAR基本选项配置_第3页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、基本选项配置在工作区(Workspace)中选定一个项目,单击 Project 下拉菜单中的Options选项,弹出选项配置对话框, 从左边 Category 列表框内选择General Options 进入基本选项配置。图 5.1 基本选项配置中的Target 选项卡5.1 所示为基本选项配置中的Target variant(处理器类型)选项区域中的Core 复选框用于设置 ARM 核,默认为ARM7TDMI,也可以从其左边的下拉列表框中选择其它ARM 核,例如ARM9ARM11 Xscal 等。建议使用时尽可能根据当前所用ARM 芯片,选中Device IAR EWARM 会根据所选芯片自

2、动设置器件描述文件,以便于ARM FPU Endian mode 选项区域用于选择大小端模式,默认为Little。5.2 所示为基本选项配置中的Output Output file Executable()Library(生成库文件)。Output directories 选项区域用于设置输出文件 目录,默认执行代码文件目录为 DebugExe,目标文件目录为 DebugObj,列表文件目录为DebugList, 也可设置其它目录。图 5.2 基本选项配置中的 Output 选项卡图 5.3 基本选项配置中的Library Configuration 选项卡5.3 所示为基本选项配置中的Lib

3、rary Configuration IAR C/C+编译器提供了DLIB 库,支持ISO/ANSI C C+IEEE754 标准的浮点数。通过Library 下拉列表框选择希望采用的运行库。选择None 表示应用程序不链接运行库;选择Normal 表示链接普通运行库,其中没有locale 接口和C locale, 不支持文件描述符,printf and scanf 不支持多字节操作,strtod Full 表示链接完整运行库,其中包含locale locale,支持文件描述符,printf and scanf strtod 支持十六进制浮点数操作。选择Custom 表示链接用户自定义库,此时

4、应在Configuration 文本框内Library low-level interface implementaion选项区域中的None DLIBSemihostedIARbreakpoint复选DLIB 库提供的底层调试接口,如通过Terminal I/O 窗口实现输入输出等。5.4 所示为基本选项配置中的Library Options Printf formatter Scanf formatter Printf scanf 函数支持的输出和输入格式,可用格式包括FullLargeSmall Tiny。图 5.4 基本选项配置中的Library Options 选项卡5.5 所示为基

5、本选项配置中的MISRA C Enable MISRA C All MISRA C Required 按钮选择必须的MISRA C None 按钮将MISRA C Set Active MISRA C Rules 选项区域内的复选框增选或MISRA C 规则校验模块。图 5.5 基本选项配置中的MISRA C 选项卡C/C+编译器选项配置点击选项配置窗口左边 Category 列表框内的 C/C+ Compiler 选项,进入C/C+Factory Settings 按钮,单Multi-file Compilation 复选框,选择该复选框,允许编译器将多个文件作为一个编译单元进行编译,从而实

6、现各程序文件之间的交互优化,例如内Discard Unused Publics 选项,则将丢弃未使用的公共变量及公共函数。图 5.6 所示为编译器选项配置中的Language 选项卡,其中各选项的含义及用法如下:Language 选项区域用于设置希望采用的编程语言,默认为C。如果选择 Automatic 复选框,则根据源程序文件的扩展名自动选择,扩展名为“.C”C 源程序进行编译,扩展名为“.CPP”C+源程序进行编译。?Require Prototypes 复选框用于强制编译器检查所有函数是否具有合适的原型。调用未声明过的函数、定义未声明原型的公共函数、采用未包含原型的函数指针进行直接函数调

7、用等都将导致编译出错。Language Conformance 选项区域用于设置是否允许IAR C/C+语言扩展,默认为允许。选择Relaxed ISO/ANSI IAR C/C+ISO/ANSI Strict ISO/ANSI IAR C/C+语言扩展,且要求严格符合ISO/ANSI 标准。Plain char is 选项区域用于设置char 类型数据的符号。通常编译器将char 作为无符号类型对待,若选Signed Signed 复选框可能导致类型不匹配错误。EnablemultibytesurportCC+CC+源程序文件中使用多字节字符。图 5.6 编译器选项配置中的Language

8、选项卡5.7 所示为编译器选项配置中的Code Generate interwork code 复选框可在编译时生成ARM 及 Thumb Processor mode ,Thumb 模式。图 5.7 编译器选项配置中的Code 选项卡图5.8 所示为编译器选项配置中的Optimization 选项区域可选择不同的优化级别:None()、Low(低级优化)、Medium(中级优化) 和 High(高级优化Balanced(平衡Size(代码大小Speed(运行速度),来决定高级优化方法。根据所选择的优化级别,Enabled 选项框内将自动选择不同的优化项目。图 5.8 编译器选项配置中的Opt

9、imizations 选项卡5.9 所示为编译器选项配置中的Output 选项卡。选择Generate debug information 在生成的目标代码中包含适用于 C-SPY 图 5.9 编译器选项配置中的Output 选项卡IAR C/C+编译器将函数代码放入指定的存储器段中,供 ILINK 链接器使用。默认情况下函数代码被放置在名为“.text”Code section name 文本框内输入以点号“.”开头的其它存储器段名,这对于希望将应用程序代码放置在不同地址范围时特别有用。采用非默认存后还需要修改相应的链接器配置文件。图 5.10 编译器选项配置中的 List 选项卡5.10

10、List Output list file 方形复选框将生成输出列表文件,Assembler mnemonics 圆形复选框规定列表文件中包含汇编指令助记符,Diagnostics 圆形复选框规定列表文件中包含诊断信息。Outputassemblerfile方形复选框将生成输出汇编文件,Includesource圆形复选框规定汇编文件中 call information 以及帧大小等信息。列表文件以“.lst”作为扩展名,存放在 List 目录下。用户可以通过工作区窗口的Output 目录打开列表文件。5.11 Preprocessor 径。选项卡中各项的含义及用法如下:若选择 Ignore

11、standard include directory 复选框,在对项目进行创建时将不使用标准包含文件。Additional include directories 文本框用于添加包含文件路径。添加时应输入包含文件所在的完整路径名,可以采用参数变量,当前项目所在路径为“$PROJ_DIR$”,IAR EWARM 软件的安装目录路径为“$TOOLKIT_DIR$”。Preinclude 文本框用于指定编译器读入源文件之前的包含文件,这对于源代码中某处的整体修改特别有用,如定义某个新符号等。Defined symbols 文本框用于指定原本应在源程序文件中定义的符号,直接在文本框内输入希望定义的符号

12、即可,该选项的作用与在源程序文件开始处使用#define 语句相同。默认状态下编译器不生成预处理器输出文件,若希望生成预处理器输出文件可以选择Preprocessor output to file 复选框,同时可通过其下面的preserve comments 复选框和generate #line directives 复选框,决定是否在生成的预处理器输出文件中保留注释或产生行号。图 5.11 编译器选项配置中的 Preprocessor 选项卡图 5.12 编译器选项配置中的Diagnostics 选项卡5.12 Diagnostics 选项卡,用于规定诊断信息的分类和显示。编译过程中可能产生

13、三种错误诊断信息:remark(注意)、waining(警告)和error(错误)。remark 表明按源程序结构生成的代码可能出现不正常。warning 表示源程序中存在错误,但编译过程不会停止。error C/C+语言规则的现象,将导致无法生成目标代码。error 信息不能被禁止, 也不能重新分类。Diagnostics 选项卡中各项的含义及用法如下:编译器在默认状态不产生 remark 诊断信息,若选择 Enable remarks 复选框则允许编译器产生remark诊断信息。Suppress these diagnostics 文本框用于设定禁止输出诊断信息的标签记号,例如希望禁止wa

14、ining 信息 Pe117 和 Pe177,直接在文本框内输入“Pe117,Pe177”即可。Treat these as remarks 文本框用于将一些诊断信息作为remark 处理,例如希望将 waining 信息 Pe177作为 remark 处理,直接在文本框内输入“Pe177”即可。Treat these as wainings 文本框用于将一些诊断信息作为waining 处理,例如希望将 remark 信息Pe826作为 waining 处理,直接在文本框内输入Pe826 即可。Treat these as errors 文本框用于将一些诊断信息作为error waining

15、Pe117 error 处理,直接在文本框内输入Pe117 即可。若选中 Treat all warnings as errors 复选框,编译器将所有waining 都作为error 处理。图 5.13 编译器选项配置中的 Extra Options 选项卡IAR C/C+编译器的大多数命令都可以通过前面介绍的配置选项卡直接设置,还有一些命令则需要通过如5.13 Extra Options 选项卡进行设置。先在选项卡中选择Use command line options 后直接在下面文本框内逐行输入命令选项。1 个短划线开始,后面跟一个-e-z 2 -char_is_signed命令选项还可

16、以带有参数,如-z3、-diagnostics_tables=文件名 等。5-1 5.13 Extra Options 选项卡进行设置的IAR C/C+5-1 需要通过Extra Options IAR C/C+编译器命令选项命令选项语法说明指定调用协议。可用-aapcs-aapcs=std|vfpstd函数调用时的浮CPU 寄存器。vfp函数调用时将使参数所生成的代码与-aeabi-aeabi生成遵从 AEABI 协-dependencies-diagnostics_tables-enum_is_int-dependencies=i|m文件名|目录-diagnostics_tables 文件

17、名|目录-enum_is_int生成一个输出文件,其中列出了编译过打开的头文件。可用参数如下:i仅列出文件名。makefile风格列出文件名。在指定文件中列出所有可能的诊断信息能与其它命令一起使用。该命令强制所有枚举类型至少为 4 字节error 数量。参数如下:-error_limit-error_limit=n停止编译之前允许的error 数量,0限制,默认值为 100。使编译器从指定文件中读取命令选项,-f-header_context-f 文件名-header_context文件的扩展名为.xcl”为每条诊断信息列出发生问题的源程序置,以及该位置处的整个包含堆栈信息生成可用于 RVCT

18、3.0.链接器的目标代码-legacy-legacy=RVCT3.0与-aeabi 命令一起使用删除由-aeabi 命令导致编译器生成的为-no_guard_calls-no_guard_calls-no_path_in_file_macros-no_typedefs_in_diagnostics-no_unaligned_access-no_warnings-no_wrap_diagnostics-o-output-only_stdout-predef_macros-no_path_in_file_macros-no_typedefs_in_diagnostics-no_unaligned_access-no_warnings-no_wrap_diagnostics-o 文件名|目录-output 文件名|目录-only_stdout-predef_macros 文件名|目录AEABI 协议,则不能使用该命令在FILE及BASE_FILE预处号生成的返回值中不包含路径信息该命令禁止在诊断信息中使用 typedef 该命令使编译器避免对数据的非对齐访(unaligned accesses)warning 指定输出代码文件名。默认为源文件名扩展名编译器仅采用标准输出流(stdout)在指定的文件或目录中

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论