【晒心得】IAR下新建STM32F0DISCOVERY工程
[复制链接]
IAR下新建STM32F0DISCOVERY工程 编译ARM CPU,很多人喜欢用IAR,它的优势不再赘述。然而,CPU更新的速度超过了IAR版本的更新速度,这样就使得在IAR的设置选项里不出现某一型号的CPU,给使用带来了麻烦。 实际上,IAR的CPU选项中,所选CPU的具体型号并非是必须的,只要对应的内核一致即可,剩下的就是决定它的头文件及存储器的分配问题,这一点下面将提及。 下面结合具体项目的操作,看看IAR是怎么建立一个工程的。 一、选择file菜单,新打开一个工作区,--- 一切从头开始 二、新建一个项目 此时出现如下对话框,选择空的项目,并“OK” 将其存盘,这里取名为“F0TEST” 三、建立文件管理分组 ST公司的习惯对文件分开管理,当然这是一种好办法,将系统文件放在CMSIS(The Cortexmicrocontroller software interface standard)文件夹下等,我们可以根据自己的习惯选择适合自己的方法。 这里的分组,只是为了方便管理,对项目没有任何影响。 四、拷贝文件 1、这里我们使用ST提供的文件stsw-stm32140.zip为基础。首先将其解压后,使用以下几个文件: .\STM32F0308_FW_V1.0.1\Libraries\CMSIS\Device\ST\STM32F0xx\Include下的两个文件。 \STM32F0308_FW_V1.0.1\Libraries\CMSIS\Device\ST\STM32F0xx\Source\Templates\iar下的startup_stm32f030x8.s \STM32F0308_FW_V1.0.1\Libraries\CMSIS\Include下的所有文件 \STM32F0308_FW_V1.0.1\Libraries\STM32F0xx_StdPeriph_Driver下的inc、src两个文件夹的所有文件 \STM32F0308_FW_V1.0.1\Utilities\STM32F0308-Discovery下的.c、.h文件,并将Discovery改为test。 \STM32F0308_FW_V1.0.1\Projects\Demonstration\EWARM下的.icf文件 2、在项目录下建立几个以便管理的文件夹,将这些文件拷贝到这里。 五、添加文件 以上拷贝的文件只是Windows系统下管理的文件,而项目并不能对其使用,需要添加到项目中才可以使用。这里添加的是源文件即 .c,方法如下: 上图中,选择Add Files后出现对话框,选择以上拷贝的文件,即可添加到项目中。 六、设置 右击工作区中的F0TEST,选择Option,也可以在Project菜单下找到Option,或使用快捷键Alt + F7。 1、General Option。在Target选卡里选择选择如图: 这里选择的CPU并非是使用中的STM32F030R8,但没关系,只要选择F0系列就可以。 2、C/C++ Compiler 。找到Preprocessor选卡,填入指定的目录。这些目录,是以上拷贝文件时 .h文件放置的目录,主要是指定头文件放置的位置,以便编译器使用。本例程的头文件是在StdDrv及Inc两个文件夹下。 注 Ø 源文件使用“添加”的方法,头文件使用指定目录的方法。 Ø IAR约定,$PROJ_DIR$为工程所在的主目录 3、Link。 找到Config选卡,指定以上拷贝的配置文件,如图: 这个文件是关系到寄存器、存储器分配的,与具体的器件有关。可以点“Edit…”看它的RAM及ROM分配情况: 4、Debugger。 在这里设置使用的仿真器,这里选择STLINK,并在下面子项中选择接口方式。 七、编译 加入一个main.c文件,并写一个空的main()函数,进行编译。出现如下错误: Fatal Error[Pe1696]: cannot open source file "stm32f0308_discovery.h" $PROJ_DIR$\usr\stm32f0308_test.c 30 这是因为拷贝ST的例程时,ST使用的是stm32f0308_discovery.h,而我们用stm32f0308_test.h代替的原因,把宏定义也改过来就可以了。
|