原创 STM32图文解说--超级入门之三--IAR配置

2008-7-18 02:44 11315 19 31 分类: MCU/ 嵌入式

其实,IAR编译环境的配置是相当重要的,没配置正确或者不符合自己的习惯的话,使用起来就会很麻烦。下面我根据网上的经验和资料,以及自己摸索和大家共同探讨下IAR的配置。


我第一次打开IAR环境的时候,发现工作区有明显分层现象。如图一所示


点击开大图
图一


这是我郁闷了好久,网上也不知道该如何搜索相关,只有自己慢慢找,最后还是找到了。点击tools---options就会弹出一个对话框来,如图二所示


点击开大图


图二


点editor选项卡,可以看到右边有很多选项,这些选项关系到使用的习惯和便捷性。首先要谈到的是tab size,这个表示tab的字符宽度,默认值为8,indent size表示缩进的字符宽度,默认为2。有人喜欢缩进为4,有人喜欢缩进为2,根据个人喜好,和程序的复杂度来选择,我一般选择2。然后紧跟着,下面有个tab key funtion,说得是按下tab键所起到的作用,第一个表示插入制表符,第二个表示插入空格,一般选择插入空着(insert with space)这个选项。


为了解决图一的问题,就在show right margin(显示右边空白),处理方法很多,可以不选中,也可以选择Printing edge(显示到边缘),也可以把Columns(分栏)占的比例修改为100都可以。另外,根据个人习惯,有人喜欢列出行号,有人不喜欢,这个可以在configure的下面show line numbers的选项,选中即可列出行号。


其他可以根据自己习惯设定,设定好了之后,如图三的效果,就看起来舒服多了。


点击开大图


图三


下面一个重点就是进行项目设定了,这个步骤非常重要,如果没有设置好,有可能编译不通过或者出错。其实我们当初选择empty project模版的时候,配置都是属于默认的,但是有些关键配置还是需要自己手动配置的,虽然配置项目很多,根据网上经验和资料,以及个人理解,列举了几个关键选项来配置即可。


1、IAR EWARM 允许为工作区中的任何一级目录和文件单独设置选项,但是用户必须首先为整个项目设置通用的选项General Option。


设置方法:选中工作区中的项目名new_project– Debug,按鼠标右键在弹出菜单中选择Options…或选择主菜单 Project ---Options…。在弹出的Options 窗口左边的目录(Category)中选择第一项General Options。然后分别在:
?? Target 设置
?? 在Processor Variant 框中选择Device。并点击右边的器件选择按钮,选择芯片型号ST STM32F10x。同时Endian mode 选择Little,Stack align 选择4 byte。其它选项采用默认值。


如图四所示


点击开大图


图四


2、C/C++编译器选项设置


在通用配置下面,有C/C++ compiler,选中。


?? 然后配置Preprocessor
Preprocessor 页面中,列有标准的include 文件的目录。如果用户的include 文件不在标准目录下时,必须在Additional include directories 输入包含该项目include 文件的目录。一个目录用一行描述,有多个目录时允许用多行。
    在Preprocessor 框中的Additional include directories(one per line) 项目中输入“$TOOLKIT_DIR$\”,“$TOOLKIT_DIR$\LIBRARY\INC\”。其他选项采用默认。如图五所示


点击开大图


图五


3、Linker 选项设置


3.1  选中linker,然后在output选项卡下选择输出格式,此选项非常重要。


如果需要将输出文件送给一个调试器进行调试,则要求输出格式带有调试信息。我们选择Debug information for C-SPY。如图六所示


注意:I/O emulation modules 指示连接器将stdin 和stdout 指向C-SPY 的I/O 窗
口的低级例程。在没有真实硬件采用模拟仿真时应选择此项选项。


点击开大图


图六


3.2  Extra Output 设置
选择Generate extra output file。输出格式选择simple-code 和None,如图七所示


点击开大图


图七


3.3  List 设置
选择Generate linker listing 和Segment map,允许生成存储器分配MAP 文件,如图八所示


点击开大图


图八


3.4  Config 设置


打开 Override default 选项:??
如果在Flash中调试程序,设置lnkarm_flash.xcl;如果在RAM中调试程序,设置lnkarm_RAM.xcl;


哈哈,这2个选项在进行设置时,请确认电路板上的Boot0 和Boot1引脚的跳线连 接是否正确!如图九所示


点击开大图


图九


4、Debugger 选项设置


在Options 窗口的目录Category 中选择第七项Debugger


4.1 setup设置


在driver那里选择调试工具等如图十所示


点击开大图


图十


4.2  download选项设置


1.已选择下载程序到Flash, 可选:Verify download    
??Use flash loader(s) (必须开启!)
2.已选择下载程序到RAM或使 用模拟器:无需选择。
3.如果程序已下载到Flash:开启Suppress download


如图十一所示


点击开大图


图十一


以上设置基本上就完成了,然后保存项目,保存工作区,就可以进行编译和调试了。


有疏忽或者遗漏,错误的地方,恳请斧正!

文章评论12条评论)

登录后参与讨论

用户1353674 2008-11-3 22:21

好文,值得收藏,

用户118890 2008-9-12 17:00

谢谢!

用户958 2008-8-12 21:37

整个PDF文档,能下载就好了

用户1393719 2008-7-30 09:18

学习下......槑

用户162166 2008-7-23 08:50

我也觉得还可以!iar配置比较麻烦,配置好了才行!

jizzll_617398179 2008-7-22 23:33

不错的

用户160834 2008-7-20 23:08

专业............dddddddddd

用户155081 2008-7-20 11:49

学习中~~~~

用户152087 2008-7-20 11:38

刚好要学习一下STM32,GOOD!!

用户155203 2008-7-18 13:37

不是看得很懂
相关推荐阅读
hendiao 2011-04-11 17:21
基于STM32的智能汽车前灯系统计划
STM32项目/学习计划表项目名称 请点击以下链接更新您的个人资料(包括“职位,部门,单位名称,地址,邮编,电子邮箱,电话”),以便我们能及时联系您并快速发送开发套件。http://space.edn...
hendiao 2011-04-11 17:21
基于STM32的GPS公交报站系统
STM32项目/学习计划表项目名称 请点击以下链接更新您的个人资料(包括“职位,部门,单位名称,地址,邮编,电子邮箱,电话”),以便我们能及时联系您并快速发送开发套件。http://space.edn...
hendiao 2011-04-11 17:21
基于STM32的GPRS/GSM抄表系统
STM32项目/学习计划表项目名称 请点击以下链接更新您的个人资料(包括“职位,部门,单位名称,地址,邮编,电子邮箱,电话”),以便我们能及时联系您并快速发送开发套件。http://space.edn...
hendiao 2011-04-11 17:20
建立在GSM/GPRS的家庭智能报警和控制系统的初步想法
STM32项目/学习计划表项目名称 请点击以下链接更新您的个人资料(包括“职位,部门,单位名称,地址,邮编,电子邮箱,电话”),以便我们能及时联系您并快速发送开发套件。http://space.edn...
hendiao 2008-11-27 11:42
用三极管实现3V与5V混合系统中逻辑器接口问题(原创)
3V与5V混合系统中逻辑器接口问题在电路设计当中,往往会遇到电压匹配问题,因为电路中往往不只只有一个电平信号,大部分包括3.3V,5V或者12V,但是有时候需要用到3.3V和5V的通信或者对联,这其中...
hendiao 2008-11-27 11:41
adsl modem和PC通过RS232的接口
这是一个朋友给我看得电路这个电路时modem和PC的连接图在PC端,用到了RS232的5个信号,modem端则只用到了RXD、TXD和GND。我们来分析一下modem的TXD到PC端的RXD这个电路中...
我要评论
12
19
关闭 站长推荐上一条 /2 下一条