您好,欢迎来到爱玩科技网。
搜索
您的当前位置:首页stm32建立工程

stm32建立工程

来源:爱玩科技网


1 点击UVision4 projectnew uvision project,保存在桌面的stm32文件/user文件下(先在桌面建立stm32文件,在里面再建立user文件),取名字STM32_lession1(随意取名)。点击保存。

2选择芯片型号:选ST公司的STM32F103VET6,有K 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_Driver的inc和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为小容量,~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/STM32F10X的stm32f10x。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文件。

点击开始编程按钮,如果下载成功则会打印出下面右边框中的信息.

到这里大功告成。

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- aiwanbo.com 版权所有 赣ICP备2024042808号-3

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务