一.所需要的文件
STM32F10x_StdPeriph_Lib_V3.5.0库
KeilMDK
二.搭建步骤
1.建立项目文件夹
(1)Hardware:外围模块驱动程序,固件库的delay、sys、usart和后面开发的模块;
(2)Libraries:驱动库文件,分两个子文件夹FWlib和CMSIS;
Libraries\FWlib:在STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\STM32F10x_StdPeriph_Driver下的inc和src是我们需要的驱动库文件,将它们放在Libraries\FWlib文件夹中;
Libraries\CMSIS:在STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\CMSIS\CM3\CoreSupport下的core_cm3.c、core_cm3.h是M3内核MCU编译需要的文件,将它们放在Libraries\CMSIS文件夹中;另外还需要将STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\CMSIS\CM3\Device Support\ST\STM32F10x下的system_stm32f10x.h、system_stm32f10x.c、stm32f10x.h文件拷至CMSIS文件夹中。
(3)Listing:编译过程中产生的文件;
(4)Output:编译后输出文件,hex/bin等可执行属性的文件将保存在该目录下;
(5)Startup : 启动文件,
Startup:将STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x
\startup\ arm文件夹下的所有文件放在Startup文件夹下,注意:在keil中添加文件时只能添加相对于的文件,比如
我只添加startup_stm32f10x_md.s文件,添加多了会报错,下图表示不同系列芯片所对应的宏不同,对应的启动文
件也不同;
图1
(6)System:stm32f10x_conf.h,stm32f10x_it.c,stm32f10x_it.h
(7)User:新建main.c文件
2.建立工程
(1)选择芯片
(2)右击Target1选择Manage Project Items,在根目录下面新建5个Group,对应的文件夹名如图
(3)然后在上述界面中将文件添加到相应的Group中:
(4)右击Target1选择Options for Target 'Targets',在output和Listing选项中分别选择将输出文件保存至Output和Listing文件夹中,在output选项中勾上Creat HEX file:
(5)在C/C++选项中的Define填写:USE_STDPERIPH_DRIVER,STM32F10x_MD(根据图1选择),Include path 栏把我们新建的那些子文件夹全部包含进来,如图:
(6)打开Debug栏,选择JLINK/J-TRACE Cortex,Flash Download设置:
(7)点开setting,选择下载方式为SW:
(8)然后编译,debug,将程序下载到板子里。
后记
遇到的问题:
- 工程编译通过,但函数前没有打开头文件的加号。 原因:输出文件和main函数不在一个路径,修改输出文件路径到User文件夹。