piteqiu 发表于 2020-4-27 10:47

论IAR ARM 4.42A工程配置

 新建一个IAR工程,并将ST32固件库移植到了该工程中,此时如果直接Compile,会出现找不到头文件的情况。这在情理之中,因为,我们没设置源文件的头文件的寻找路径。此外,我们也没指定芯片的类型。这些工作就是配置IAR的工程,这与IAR的版本密切相关(不同版本的配置界面都不一样,最经典的是IAR4.42A)。预备知识  将代码下到单片机中有两种方法:    1.先生成.sim文件,然后再将该文件下载到单片机中(要更换IAR配置Linker->Output),每次更改代码都要重复上面两个步骤,才能将新代码下到单片机中。    2.用调试模式,将代码下到单片机的Flash或RAM中,经过配置IAR工程(一次就行),可以达到代码更改后,只需重新进入调试,即:点击IAR中的Debug按钮http://editerupload.**/fetch/20161101/317024_1_0.jpg  推荐使用第二种。

piteqiu 发表于 2020-4-27 10:47

配置工程  下面就以IAR4.42A为例,介绍一下配置工程的必须步骤:  1、板子控制芯片使用的是STM32F103VBT6,所以芯片型号选择STM32F10x系列,多一嘴,最新的M0芯片,要用IAR 6.4版本。http://editerupload.**/fetch/20161101/317024_1_1.jpg

piteqiu 发表于 2020-4-27 10:48

本帖最后由 piteqiu 于 2020-4-27 10:51 编辑


http://editerupload.**/fetch/20161101/317024_1_2.jpg2、调试时最好将编译器选择不优化,否则有些运算(如位运算)会被优化掉,单步调试时可能会指示篡行。

piteqiu 发表于 2020-4-27 10:49

3、单步调试时,若不勾选,跟踪不是C代码,而是汇编代码http://editerupload.**/fetch/20161101/317024_1_3.jpg

piteqiu 发表于 2020-4-27 10:51

4、源文件中包含头文件编译器的寻找路径

piteqiu 发表于 2020-4-27 10:52

为了便于拷贝:

    $PROJ_DIR$\..\

    $PROJ_DIR$\..\..\library\inc



  解释:PROJ_DIR代表工程文件(后缀blink.ewp文件)

    $PROJ_DIR$\..\ 表示blink.ewp文件所在目录的上层目录,即:寻找stm32f10x_conf.h和stm32f10x_it.h这两个文件。

    $PROJ_DIR$\..\..\library\inc 表示blink.ewp文件所在目录的上层目录的上层目录下的library目录下的inc目录下,即:寻找固件库的头文件,如stm32f10x_gpio.h、stm32f10x_nvic.h、stm32f10x_rcc.h等。

piteqiu 发表于 2020-4-27 10:53

 5、采用调试模式,还是生成.sim文件

piteqiu 发表于 2020-4-27 10:53

  6、调试模式不要勾选,生成.sim文件模式勾选。

piteqiu 发表于 2020-4-27 10:54

  7、将代码下到Flash中

  为了便于拷贝:

    $PROJ_DIR$\lnkarm_flash.xcl

piteqiu 发表于 2020-4-27 10:55

  8、IAR修改程序后不用J-FlashARM重新下载直接按Debug按钮就可自行下载,包含如下四个配置界面

为了便于拷贝:
    -Oraw-binary=.bin

    -Osimple-code=.sim

    -Ointel-extended=.hex



  如果没有default,按Edit



  如果有default,按Edit看一下;如果没有default,按New,新建一个



  一定要选择All

piteqiu 发表于 2020-4-27 10:56

  9、选择调试用具J-Link



  至此,点击Compile和Make都没问题了

杨寅辉 发表于 2020-4-29 17:32

支持下,谢谢分享!

drer 发表于 2020-5-5 15:31

非常感谢楼主分享

gwsan 发表于 2020-5-5 15:31

步骤清晰明了啊

kxsi 发表于 2020-5-5 15:32

这个太基础了

nawu 发表于 2020-5-5 15:32

有些地方不是很明白为什么要这样配置

qcliu 发表于 2020-5-5 15:32

知其然而不知其所以然
页: [1]
查看完整版本: 论IAR ARM 4.42A工程配置