您的位置:首页 > 其它

快速建立STM32F4的工程模板

2014-05-16 14:36 288 查看
昨天刚入手一块STM32F407_Discovery开发板,做工挺好的,烧写也方便。今天上午下载了F4的标准函数库,原来决定用IAR的,可能我的IAR版本过低,编译通不过,所以最后还是用Keil来学习F4。这里我要感谢阿莫网友分享了淘宝的资料,参考淘宝与官方的例程,建立一个属于自己的工程模板还是很容易的(Keil和STM32还是很人性化的)

接下来我们一步步的来建立工程:

1.新建一个文件夹,命名为工程的名字(例如:STM32_Demo),在此文件夹下建立七个文件夹(类似F1原子的风格),分别命名为Hardware、Libraries、Listings、Output、Project、Startup、User。如下图:



2.在Libraries文件夹下建立CMSIS和FWLib两个文件夹,分别在CMSIS和FWLib文件夹下再新建inc和src两个文件夹。如下图:



3.在ST官网下载最新标准函数库:
http://www.stmicroelectronics.com.cn/web/catalog/tools/FM147/CL1794/SC961/SS1743/PF257901
4.Hardware文件夹下放置工程使用到的硬件外设文件;

  4.1 Libraries->CMSIS->inc里加载标准函数库:

stm32f4_dsp_stdperiph_lib->STM32F4xx_DSP_StdPeriph_Lib_V1.3.0->Libraries->CMSIS->Include里的部分文件,如下图:

   


stm32f4_dsp_stdperiph_lib->STM32F4xx_DSP_StdPeriph_Lib_V1.3.0->Libraries->CMSIS->Device->ST->STM32F4xx->Include

里的全部文件,如下图:

   


  4.2 Libraries->CMSIS->src里加载标准函数库:      

stm32f4_dsp_stdperiph_lib->STM32F4xx_DSP_StdPeriph_Lib_V1.3.0->Libraries->CMSIS->Device->ST->STM32F4xx->Source->Templates

的system _stm32f4xx.c,如下图:

  


  4.3 Libraries->FWlib->inc

Libraries->FWlib->src

分别加载标准函数库:

stm32f4_dsp_stdperiph_lib->STM32F4xx_DSP_StdPeriph_Lib_V1.3.0->Libraries->STM32F4xx_StdPeriph_Driver文件加下的inc与src的全部内容,如下图:



  4.4  Startup文件夹加载标准函数库:

stm32f4_dsp_stdperiph_lib->STM32F4xx_DSP_StdPeriph_Lib_V1.3.0->Libraries->CMSIS->Device->ST->

STM32F4xx->Source->Templates->arm里的startup_stm32f4xx.s,如下图:



以上工程的文件夹建立的差不多了,接下来我们打开Keil4.7(版本最好高点,低版本可能不支持F4)

5. 打开Keil,点击Project->New Project(高版本Keil里出现了类似IAR的Workspace,具体什么作用也没深究),填写自己想要的工程名字(例如:project),路径保存在之前              建立的Project子文件夹下。

6.接下来的步骤和F1的工程建立几乎一样,工程名上右击->manage components,简历如下几个group,分别倒入对应文件,如下图:



7.点击Options for target按钮,点击Output选项,再单击选择Select Folder for Object,路径选择为之前建立的Output文件夹,Listing选项类似。


 



8.继续选择C++选项,在Define一栏填入:USE_STDPERIPH_DRIVER,在Include Paths选项里加入工程里所用到的头文件,如下图:





9.Debug选项选择ST_Link Debugger,如下图:



10.Utilities选项里也选择ST_Link Debugger,点击Setting,在该选项里加载Programming Algorithm,如下图:





到此KEIL环境下的工程就建立好了,总的来说STM32F4和F1的相通性很大,库函数表示也近似。

因为忙于项目验收和智能车竞赛,对于STM32F4的学习暂缓,希望能与各位网友共同学习,共同进步。

                                                                        2014.5.16
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息