IAR使用手册汇编.docx

上传人:b****3 文档编号:1849271 上传时间:2022-10-24 格式:DOCX 页数:29 大小:580.93KB
下载 相关 举报
IAR使用手册汇编.docx_第1页
第1页 / 共29页
IAR使用手册汇编.docx_第2页
第2页 / 共29页
IAR使用手册汇编.docx_第3页
第3页 / 共29页
IAR使用手册汇编.docx_第4页
第4页 / 共29页
IAR使用手册汇编.docx_第5页
第5页 / 共29页
点击查看更多>>
下载资源
资源描述

IAR使用手册汇编.docx

《IAR使用手册汇编.docx》由会员分享,可在线阅读,更多相关《IAR使用手册汇编.docx(29页珍藏版)》请在冰豆网上搜索。

IAR使用手册汇编.docx

IAR使用手册汇编

 

ARM开发和调试工具的使用

(IAREWARM和H-JTAG/J-LINK)

 

上海工程技术大学

电子电气工程学院

目录

1创建一个IAR工程…………………………………………………3

2编译和链接一个IAR工程…………………………………………5

2.1GeneralOptions设置……………………………………………5

2.2C/C++Compiler设置……………………………………………7

2.3Linker设置………………………………………………………8

2.4OutputConverter设置…………………………………………8

2.5开始编译和链接并生成可下载的输出文件……………………10

3使用C-SPY进行调试和分析………………………………………11

3.1软件仿真调试(中断模拟)……………………………………11

3.2使用H-JTAG仿真调试(RAM∕ROM)……………………………13

3.3使用J-LINK仿真调试(RAM∕ROM)……………………………18

3.4应用程序分析……………………………………………………19

4将可执行二进制文件下载到片内FLASH…………………………22

4.1使用H-JTAG下载(H-Flasher)………………………………22

4.2使用J-LINK下载(J-LinkARM)………………………………23

4.3使用CPU自带的ISP功能下载…………………………………24

4.4使用CPU自带的IAP功能下载…………………………………24

5附录一:

IAR中的中断处理………………………………………25

5.1向量IRQ中断(ARM7)…………………………………………26

5.2非向量IRQ中断(ARM7)………………………………………27

5.3FIQ中断(ARM7)………………………………………………27

6附录二:

IAR中C与汇编的混合编程……………………………28

6.1C语言本征函数…………………………………………………28

6.2汇编语言程序……………………………………………………28

6.3内联汇编…………………………………………………………29

7附录三:

H-JTAG和J-LINK的比较………………………………30

8参考文献……………………………………………………………31

1创建一个IAR工程

1.1打开IAR开发环境

“开始”→“程序”→“IARSystems”→“IAREmbeddedWorkbenchforARM5.50Evaluation”→“IAREmbeddedWorkbench”

1.2新建一个工作区

这步可选,但最好新建一个专用的目录,用来存放自己工程文件,“File”→“New”→“Workspace”:

.eww

1.3新建一个IAR空工程

“Project”→“CreateNewProject”:

.ewp

1.4新建文件并保存

“File”→“New”→“File”

“File”→“Save”

1.5为IAR工程添加已有文件

“Project”→“AddFiles”

2编译和链接一个IAR工程

在工作区窗口选中工程文件夹test-Debug,然后“Project”→“Options…”,弹出对话框:

2.1GeneralOption

选中该对话框左侧Category列表框中“GeneralOption”,并对右侧对应的选项卡中的内容作以下设置:

选项卡

设置

Target

Core:

ARM7TDMI-S/Cortex-M3

Device:

NXPLPC21xx/STSTM32F10xxB

Output

OutputFile:

Executable

OutputDirectories:

LibraryConfiguration

Librarylow-levelinterfaceimplementation:

Semihosted

1、目标板上MCU是LPC2103(ARM7TDMI):

2、目标板上MCU是STM32(Cortex-M3):

2.2C/C++Compiler

1、目标板上MCU是LPC2103(ARM7TDMI):

选中该对话框左侧Category列表框中“C/C++Compiler”,并对右侧对应的选项卡中的内容作以下设置:

选项卡

设置

Code

ProcessorMode:

ARM

Optimization

Level:

None(BestDebugSupport)∕Low

Output

GenerateDebugInformation

2、目标板上MCU是STM32(Cortex-M3):

选中该对话框左侧Category列表框中“C/C++Compiler”,并对右侧对应的选项卡中的内容作以下设置:

选项卡

设置

Code

ProcessorMode:

/

Preprocessor

AdditionalIncludeDirectories:

--$PROJ_DIR$\..\

--$PROJ_DIR$\..\..\..\Libraries\CMSIS\CM3\CoreSupport

--$PROJ_DIR$\..\..\..\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x

--$PROJ_DIR$\..\..\..\Libraries\STM32F10x_StdPeriph_Driver\inc

DefinedSymbol:

--USE_STDPERIPH_DRIVER

--STM32F10X_MD_VL

--USE_STM32100B_EVAL

Optimization

Level:

None(BestDebugSupport)∕Low

Output

GenerateDebugInformation

2.3OutputConverter设置

选中该对话框左侧Category列表框中“OutputConverter”,并对右侧对应的选项卡中的内容作以下设置:

选项卡

设置

Output

GenerateAdditionalOutput(OverrideDefault)

OutputFormat:

IntelExtended

2.4Linker设置

1、IAREWARM4且目标板上MCU是LPC2103(ARM7TDMI):

在工作区窗口选中工程文件夹test-Debug,然后“Project”→“Options…”,弹出对话框,并选中该对话框左侧Category列表框中“Linker”,对右侧对应的选项卡中的内容作以下设置:

选项卡

设置

Config

LinkerConfigurationFile:

(OverrideDefault)

$PROJ_DIR$\LPC2103_ROM.xcl

List

GenerateLinkerMapFile

2、IAREWARM5且目标板上MCU是STM32(Cortex-M3):

在工作区窗口选中工程文件夹test-Debug,然后“Project”→“Options…”,弹出对话框,并选中该对话框左侧Category列表框中“Linker”,对右侧对应的选项卡中的内容作以下设置:

选项卡

设置

Config

LinkerConfigurationFile:

(OverrideDefault)

$PROJ_DIR$\stm32f10x_flash.icf

List

GenerateLinkerMapFile

点击“LinkerConfigurationFile”下“Edit…”按键,打开“LinkerConfigurationFileEditor”对话框,选择不同的选项卡,可分别查看和设置中断向量表(VectorTable)、存储器地址分配(RAM和ROM)以及堆和栈的大小(HeapSize和StackSize),具体设置如下图所示。

1)中断向量表(VectorTable):

2)存储器地址分配(RAM和ROM):

3)堆和栈的大小(HeapSize和StackSize):

2.5开始编译和连接,并生成可下载的输出文件

“Project”→“Make”

3使用C-SPY进行调试和分析

3.1软件仿真调试

3.1.1软件仿真调试设置

在工作区窗口选中工程文件夹test-Debug,然后“Project”→“Options…”,弹出对话框,并选中该对话框左侧Category列表框中“Debugger”,对右侧对应的选项卡中的内容作以下设置:

3.1.2进入调试模式

设置完毕,点击菜单“Project”→“DownloadandDebug”,进入调试模式。

3.1.3中断仿真

使用C-SPY模拟器可以在没有实际硬件的条件下进行中断仿真,以检测应用程序的逻辑性是否正确。

使用中断仿真系统(以定时器中断为例)一般按以下步骤进行:

1)编写中断仿真源程序(包括定时器初始化函数,定时器中断服务函数和定时器中断服务安装函数等),详见IARHELP。

2)选择目标CPU并编译

在“Project”→“Options…”对话框中,选中该对话框左侧的Category列表框中“GeneralOption”,并在右侧“Target”选项卡的“Device”选项中选择目标CPU。

然后,编译工程。

3)选择软件仿真方式并进入调试模式

在“Project”→“Options…”对话框中,选中该对话框左侧的Category列表框中“Debugger”,并在其右侧“Setup”选项卡中的“Driver”选项选择Simulator。

然后,单击按钮进入调试模式。

4)设置中断

单击下拉菜单“Simulator”→“InterruptSetup”选项,弹出中断仿真配置对话框,并作如下配置:

——FirstActivation:

首次触发中断所需循环计数器周期数

——RepeatInterval:

中断重复间隔所需循环计数器周期数

——Variance:

发生时间的变化率,以重复间隔的百分比表示

——HoldTime:

中断等待被处理的保持时间,以周期为单位

——Probability:

中断发生的概率

5)打开中断日志窗口和强制中断窗口观察中断

单击下拉菜单“Simulator”→“InterruptLog”选项,可打开中断日志窗口查看中断产生情况。

单击下拉菜单“Simulator”→“ForcedInterrupt”选项,可打开强制中断窗口,选中一个中断如IRQ,单击该窗口的“Trigger”按钮,可以立即强制执行该中断,这种方法对想检查中断逻辑和中断程序非常有用。

中断仿真系统默认为打开状态,如果不需要使用中断仿真系统,可以将其关闭以提高仿真速度。

3.2H-JTAG仿真调试

3.2.1H-JTAG仿真调试设置

在工作区窗口选中项目文件夹test-Debug,然后“Project”→“Options…”,弹出对话框,并选中该对话框左侧Category列表框中“Debugger”,对右侧对应的选项卡中的内容作以下设置:

使用硬件仿真器(如H-JTAG或J-LINK

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 农林牧渔 > 林学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1