Terry 发表于 2015-6-28 14:20:09

STM32学习资料--新建工程(2)

1. 构件MDK工程我们以STM32的STM32F107VCT6系列芯片为例来建立项目。1.1 创建工程在MDK,选择Project->New Project,选择工程保存目录“”,工程名称命名为“stm32_prj”。 1.2 选择CPU型号 1.3 设置项目组织选择Project->Manage->Components1.4 配置项目组织向项目中添加组,如下图所示。
组名描述
Startup启动代码目录
Lib固件库目录
Cm3ARM-Cortex M3相关代码
User用户代码
1.5 添加文件至项目
组名代码列表明细说明备注
Startupstartup_stm32f10x_cl.s启动代码文件见5.1
Libmisc.cstm32f10x_ppp.cSTM32固件库将固件库的Libraries下的内容整体拷贝到此目录下
Cm3core_cm3.csystem_stm32f10x.cARM Cortex-M3相关代码—
Usermain.c用户的程序—
注意:此时stm32f10x_conf.h和stm32f10x_it.h已经拷贝到User/Incl下。1.6 设置工程选项目选择Project->Options for Target … 1.6.1 选择项目输出目录Ø 设置项目输出目录,设置为D:\STM32_PRJ\Out\ObjØ 设置执行文件名称,默认为stm32_prjØ 选择输出HEX 文件Ø 选择Create Batch File(?) 1.6.2 选择LIST设置项目输出目录,设置为D:\STM32_PRJ\Out\List1.6.3 设置C/C++编译选项默认编译选项
编译选项
-c编译不链接
--cpu Cortex-M3CPU型号
-g -O0关闭所有优化选项
--apcs=interworkARM Procedure Call Stand-ard - ARM函数调用标准
-I "C:\Keil\ARM\INC"头文件目录
-I "C:\Keil\ARM\INC\ST\STM32F10x"头文件目录
-o "..\Out\Obj\*.o"产生的目标文件
--omf_browse "..\Out\Obj\*.crf"产生和存储程序的浏览信息
--depend "..\Out\Obj\*.d"产生依赖文件列表
配置完后的编译选项为:
编译选项描述
-c编译不链接
--cpu Cortex-M3CPU型号
-g –W –O3关闭所有优化选项
--split_ldm指示编译程序在所需要位置将LDM和STM指令分裂为两个或更多的LDM或STM指令,以减少传送寄存器的最大数量
-I..\Libraries\STM32F10x_StdPeriph_Driver\inc指定包含头文件目录
-I..\Libraries\CMSIS\CM3\CoreSupport
-I..\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x
-I..\User\Incl
-I "C:\Keil\ARM\INC"
-I "C:\Keil\ARM\INC\ST\STM32F10x"
-DUSE_STDPERIPH_DRIVER见5.2
-DSTM32F10X_CL见5.3
--apcs=interworkARM Procedure Call Stand-ard - ARM函数调用标准
-o "..\Out\Obj\*.o"产生的目标文件
--omf_browse "..\Out\Obj\*.crf"产生和存储程序的浏览信息
--depend "..\Out\Obj\*.d"产生依赖文件列表

页: [1]
查看完整版本: STM32学习资料--新建工程(2)