IAR中创建STM32工程步骤(寄存器版本)

郁闷,很多东西不熟悉,创建个工程都花了些时间。先把问题和步骤写出。先说明,是基于寄存器编程的。

1.从官网下载STM32固件库。我用的是3.5

2.创建一个STM32文件夹(不是存放工程的),存放创建STM32工程所需的基本文件。以后再次创建工程时,只需把这个文件夹的东西拷到相应工程里面即可。

此文件夹里面有CMSIS文件夹和Statup文件夹。

2.找到解压后的Libraries->CMSIS->CoreSupport,把里面的core_cm3.h和core_cm3放进上面的CMSIS文件夹。

找到Libraries->CMSIS->DeviceSupport->ST->STM32F10X->Statup->IAR里面的启动文件,这个启动文件根据STM32具体类型选择,我用的是STM32F103RBT6,所以

选择startup_stm32f10x_md.s,把此文件粘贴到上诉Statup文件夹下。

找到Libraries->CMSIS->DeviceSupport->ST->STM32F10X-下的3个文件,stm32f10x.h,system_stm32f10x.c,system_stm32f10x.h把三个文件添加到上诉CMSIS文件夹 中。

3.用IAR创建一个STM32工程,选择器件型号,选择调试类型等。。。

4.在左边工程目录一栏创建CMSIS和Statup文件夹,然后把第二步骤中的文件夹拷到当前工程目录,然后Add Files,把文件添加到相应目录。并在options里面c/c++ Complier 添加头文件的路径说明。

5.记得在options里面c/c++ Complier的预处理里面的Defined symbols里面添加你使用的STM32类型宏定义STM32F10X_MD,当然根据器件不同有所不同。

补充说明:编译过程中CM3.h报错。几个函数的问题,我用的是IAR6.1,开始不知道什么问题,网上也没有找到解决办法。索性把那报错的几个函数给注释掉了。然后就没有 错误了,编译连接都没有问题了。但是这么做不知道会不会带来什么额外的影响,暂时不管吧。最后写了个点亮LED的程序测试,JLINK下载,都没有问题,至此,基本的环 境就搭成了。

你可能感兴趣的:(Cortex-M3)