32

关于投票
STM32图文解说--超级入门之三--IAR配置

其实,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

如图十一所示

点击开大图

图十一

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

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

系统分类: 单片机
用户分类: STM32学习
标签: IAR配置 stm32 IAR 编译环境配置
来源: 原创
发表评论 阅读全文(5488) | 回复(11)

24

关于投票
STM32图文解说--超级入门之二

要想用好STM32的编译和仿真,IAR软件的使用至少要能够建一个项目,把需要的源文件,头文件和库文件都为自己所用。

首先,来看看如何建立一个工程,这个keil的工程有些类似,但是比keil略显麻烦点。

1、在硬盘新建一个文件夹F:\stm32_IAR_pro

2、打开IAR编译器,如图1

点击开大图

图1

3、新建工作区(既workspace)

      EWARM 虽然是按项目进行管理, 但是要求把所有的项目都放在工作区内
(Workspace)。当然,第一次使用的话,必须新建一个workspace才能再次工作区新建一个项目。一个工作区可以存放一个或多个项目的,这个比较便于管理和调用。但是,如果曾经建立过工作区,现在要新建一个新的项目,则可以直接在此工作区新建该项目。

打开了EWARM 编译环境之后,看到一排菜单,这个几乎所有的软件都类似。我们首先打开file--new--workspace命令,新建一个新的空白工作区。如图2

图2

3、新建新项目

这一步就是在工作区中创建新项目,操作如下:
3.1  选择Project ---Create New Project,弹出生成新项目窗口。如图3

图3

3.2   EWARM 提供几种应用程序和库程序的项目模板。如果选择Empty project,表示采用默认的项目选项设置,为一个空工程。所以我们选择Empty project。如图4.。

图4

3.3  在Tool chain 栏中选择ARM,点击OK 按钮,弹出“另存为”窗口。如图5

点击开大图

图5

3.4  在“另存为”窗口中浏览和选择新建的F:\stm32_IAR_pro目录,输入新项目的文件名为new_project,然后保存。这时在屏幕左边的Workspace 窗口中将显示新建的项目名和输出代码模式,如图6

图6

我找了下资料,发现项目名后面的Debug 表示输出含调试信息的代码文件。EWARM 能为项目提供两种输出代码模式:Debug 和Release。Debug 模式就是调试模式,可以生成含调试信息的程序代码,所以我们可以利用它在EWARM 环境下调试应用程序。而Release 模式就是所谓“发行模式”(这样说不知道准确不),可以生成不含调试信息的发行版本的程序代码,其代码比较紧凑。其实我们可以从Workspace 窗口顶部的下拉菜单中选择两种项目配置之一,这次我们选择的是DEBUG模式了。

现在stm32_IAR_pro目录下已生成一个new_project.ewp 文件,该文件中将包含与demo 项目设置有关的信息,如编译、连接(build)的选项等。
大家看到图6是不是发现debug后面有个*好,对了,这说明当前的工作区和项目修改之后,还没有保存。所以随时记得保存(快捷键ctrl+s)一下。保存之后,会发现stm32_IAR_pro文件夹里面多了几个文件。如图7

图7

3.5  刚才是保存的项目,现在需要保存工作区。

新生成的工作区同样需要保存。点 File---Save Workspace,浏览并选择F:\stm32_IAR_pro目录,保存为new_project.这时在F:\stm32_IAR_pro目录下又生成一个 new_project.eww 文件。如图8

点击开大图

图8

以上就基本上建立好了工作区和项目文件了。哈哈,就着简单。

下面添加和新建文件。

4、保存工作区后,下一步就是在项目中新建文件或添加已有文件。这个和keil有些类似,可以新建组(类似于文件夹),来保存同类文件,不如c文件可以放到c_file里面,库文件可以放到lib_file里面。这里为什么没有说明头文件呢?刚开始我也稀里糊涂,后来查了资料才知道。(需要在配制里面设置,当然这是后话了)。

4、1    根据个人习惯,一般最好能把文件都放到同类组里面去便于管理。(纯属个人之言,不要b4我)。右击“new_project-Debug”然后选择 ADD---ADD Group…,如图9

点击开大图

图9

我建了2个文件组,一个是c_file,一个是lib_file。建了之后随时ctrl+s一下保存。如图10

图10

4.2   好了,准备工作都做好了,现在开始添加文件了。右击“c_file”然后选择 ADD ---ADD Files…,如图11

图11

添加完之后,就如图12所示

点击开大图

图12

以上就是建立一个工作区和工程,以及添加和新建文件。

系统分类: 单片机
用户分类: STM32学习
标签: IAR 工作区 新建工程 STM32
来源: 原创
发表评论 阅读全文(4736) | 回复(4)
总共 , 当前 /