资源描述
1 点击UVision4 àprojectànew uvision project,保存在桌面stm32文献/user文献下(先在桌面建立stm32文献,在里面再建立user文献),取名字STM32_lession1(随意取名)。点击保存。
2选取芯片型号:选ST公司STM32F103VET6,有64K SRAM,512K FLASH,
接下来窗口问咱们与否拷贝STM32启动代码到工程文献中,这份代码在M3系列中都是合用,普通状况下咱们都点是,但这里咱们用是ST库,库文献里面也自带了这一份启动代码,所觉得了保持库完整性,咱们就不需要开发环境为咱们自带启动代码了,稍后咱们自己手动添加,这里点击否。
此时新建工程成功,如下:
3 在桌面STM32文献夹下,新建四个文献夹,分别为:FWLib、CMSIM、Uotput、listing。
4 把库3.5.0/3.5.0/STM32F10X_Stdperiph_lib_V3.5.0/Libearies/STM32F10X_StdPeriph_Driverinc和src这两个文献夹拷贝到FWlib文献夹中。
5把库3.5.0/3.5.0/STM32F10X_Stdperiph_lib_V3.5.0/Project/STM32F10X_StdPeriph_Template下main.c、stm32f10x_it.h、stm32f10x_it.c、stm32f10x_conf.h、system_stm32f10x.c拷贝到USER文献夹下。
6把库3.5.0/3.5.0/STM32F10X_Stdperiph_lib_V3.5.0/Libearies/CMSIS/CM3/DeviceSupport/ST/STM32F10X/startup/arm下所有文献拷贝到CMSIS/startup文献夹下。STM32F103VET6,有512K Flash,属于大容量,工程中把startup_stm32f10x_hd.s添加到工程文献中。依照ST官方资料:Flash在16~32kbytes为小容量,64~128kbytes为中容量,256~512kbytes为大容量,不同Flash相应启动文献不同样,这点需要注意。
7把库3.5.0/3.5.0/STM32F10X_Stdperiph_lib_V3.5.0/Libearies/CMSIS/CM3/Core Support下core_cm3.c和core_cm3.h拷贝到CMSIS文献夹下。
8把库3.5.0/3.5.0/STM32F10X_Stdperiph_lib_V3.5.0/Libearies/CMSIS/CM3/DeviceSupport/ST/STM32F10Xstm32f10x.h、system_stm32f10x.c、system_stm32f10x.h拷贝到CMSIS文献夹下。
至此,
9 回到MDK工程中,将Target改为STM32_lession1.
10 在stm32_lession1中右击add group选项,新建四个组,分别命名为startcode、user、fwlib、cmsis。
11 接下来往这些新建组中添加文献,双击那个组往那个组里面添加文献。
Startcode添加:startup_stm32f10x_hd.s、
user添加:main.c 和stm32f10x_it.c 两个文献
fwlib添加: src里面所有驱动文献。固然,src里面驱动文献也可以需要那个添加那个,这里将所有添加进去是为了后续开发以便,况且咱们通过配备stm32f10x_conf.h这个头文献来选取性添加,只有在stm32f10x_conf.h文献中配备文献才会被编译。
CMSIS里面添加:core_cm3.c和system_stm32f10x.c.
注意:这些组里面添加都是汇编文献和C文献,头文献是不需要添加。最后效果如下:
至于有些有个锁图标,是由于这些都是库文献,不需要咱们修改,属性为只读,至此,咱们工程已经基本建好,下面来配备MDK配备选项。
12
点击 Select Folder for Objects,设立编译后保存在OUTPUT文献夹下。
同步把Create Hex file 和 Browse information这两个选项框也选上。
13 同样在Listing这个选项卡中,也点击Select Folder listings定位到模板中listing 文献夹下。
14 选中 选项卡,在Define里面输入添加USE_STDPERIPH_DRIVER,STM32F10X_HD 。
添加USE_STDPERIPH_DRIVER是为了屏蔽编译器默认搜索途径,转而使用咱们添加到工程中ST库,添加 STM32F10X_HD,是由于咱们用芯片是大容量。
15 在Include Paths栏点击,在这里添加库文献搜索途径,这样就可以屏蔽默认搜索途径。
但当编译器在咱们指定途径下搜索不到话,还是会回到原则目录去搜索,就像有些ANSIC C库文献,如stdin.h、stdio.h.
16 修改main.c文献。由于刚刚咱们main.c文献是从官方库里复制过来,里面有许多东西咱们是不需要,为了简化main.c文献,咱们修改如下:
/*******************************************************************
* 文献名:main.c
*描述:用3.5.0版本建工程模板
*实验平台:stm32f103vet
*库版本:3.5.0
作者:Tata
***************************************************************/
#include "stm32f10x.h"
int main(void)
{
while(1);
}
至此,咱们工程模板就建成了。
17 J-LINK调试:
在Debug/Setting/Flash download中咱们设立如下:
18 编译文献:Build,
19 下载程序:JLINK下载,将BOOT0拨到GND那端,
串口下载:将BOOT0拨到VCC,下载完程序后,将BOOT0开关拨到GND。
JLINK下载:
下载成功后,程序会自动运营,如果没有运营,则可按下开发板复位键。
这里要注意是:程序在烧写到开发板后与否自动运营,是可以在MDK开发环境:
Target Options…->Debug->Setting->Falash DownLoad中设立:
串口下载:
选取串口、波特率、HEX文献。
点击开始编程按钮,如果下载成功则会打印出下面右边框中信息。
到这里大功告成。
展开阅读全文