初学STM32--建立工程

发布者:智慧启迪最新更新时间:2015-10-10 来源: eefocus关键字:初学STM32  建立工程 手机看文章 扫描二维码
随时随地手机看文章
本人学习stm32有一段时间了,由于以前没有接触过,单是建立工程就花费了我很长时间,下面是我建立工程的一般步骤,也是参考了前人的经验,写下来希望对后面学习的人有所帮助。 

<1>  lib   <2>  cmsis   <3>  startup   <4>  user.

其中lib里面是src(源文件.c)和inc文件(头文件.h)这里面都是stm32所提供的外设的源文件以及头文件,还有其他的。

 

cmsis里面是底层文件,微控制器软件借口标准。后面你慢慢会知道的,我也不太懂的。                 

 

startup是启动文件,后缀名为.s  根据不同容量的芯片区分:startup_stm32f10x_ld.s/    startup_stm32f10x_md.s/        startup_stm32f10x_hd.s 分别适用于小容量/中容量/大容量的STM32芯片,具体判断方法如下:

 小容量:FLASH≤32K

 中容量:64K≤FLASH≤128K

 大容量:256K≤FLASH 在启动代码中

 

user里面是用户文件,这里我放入的是main.c和stm32f10x_it.c   main函数是自己写的,当用到中断是写入对应的中断。

   

    好了,相应的文件介绍完了以后,我们可以开始建立工程了。就像C语言输出的第一条语句"Hello World"一样,我们建立工程用来点亮LED。具体步骤如下:

 

    先在桌面上新建文件夹命名为“led”然后再“led”文件夹下新建3个文件分别命名为:obj,list,project  再把我们刚才介绍的那4个文件夹放入“led”文件夹里,现在“led”下面有7个文件夹:lib,cmsis,startup,user,obj,list,project。

    打开Keil(安装以后介绍),选择 Project --> New u-Vision Project 选择保存位置在“led”下的“project”里面,文件名命名为led。然后选择CPU型号,根据自己的开发板选择,我的是stm32f103vet6,选择以后确定后出现对话框,选择否,因为我们要自己加入那些东西。

 

初学STM32--建立工程

 

初学STM32--建立工程

 

选型号:


初学STM32--建立工程

因为自己建立加入启动文件所以选“否”


初学STM32--建立工程


初学STM32--建立工程
 

按如下设置:加文件点“虚方框”,删除点“メ”记住这些都在你建立的led里的相对应文件里面。[page]

初学STM32--建立工程
 

 

 

初学STM32--建立工程
 

初学STM32--建立工程

 

因为我的是stm32f103vet6是大容量(512k),所以选择 hd.s (h是高密度)

初学STM32--建立工程



初学STM32--建立工程



双击main.c函数在里面加入以下程序代码:(一定要认真,小数点也不许错呀!)

  

//GPIO操作,完成简单的IO操作,用按键控制LED闪烁

#include "stm32f10x.h"
GPIO_InitTypeDef GPIO_InitStructure;
//LED初始化
void LED_Init(void)
{
 RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOD,ENABLE);
 GPIO_InitStructure.GPIO_Pin=GPIO_Pin_5;

 GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;
 GPIO_InitStructure.GPIO_Mode=GPIO_Mode_Out_PP;
 GPIO_Init(GPIOD,&GPIO_InitStructure);
}
//延迟函数
 
void Delay(vu32 uCount)
{
 for(;uCount!=0;uCount--);
 
 
//时钟函数
void RCC_Configuration(void)
{
 SystemInit();
}

//主函数
int  main(void)
{
 RCC_Configuration();
 LED_Init();
 while(1)
 {
   GPIO_SetBits(GPIOD,GPIO_Pin_5);
   Delay(0x8ffff);
   GPIO_ResetBits(GPIOD,GPIO_Pin_5);
   Delay(0x8ffff);
 }
}

 

加入以后点击工具栏里的“魔法棒”设置如下;

 

初学STM32--建立工程

 


初学STM32--建立工程

这里设置比较重要,              

在Define里输入:USE_STDPERIPH_DRIVER,STM32F10X_HD

后面的STM32F10X_HD是我的对应的

在Include Paths 找到相应的所有的头文件:   ..cmsis 和 ..startup和..user和..inc[page]


初学STM32--建立工程

 

配置Debug如下图

初学STM32--建立工程 


初学STM32--建立工程 

初学STM32--建立工程 

初学STM32--建立工程 

初学STM32--建立工程 

编译运行后没有错误,直接连接开发板,点击  Flash-->Download完成。

关键字:初学STM32  建立工程 引用地址:初学STM32--建立工程

上一篇:STM32之ADC
下一篇:stm32 Fatfs 读写SD卡

推荐阅读最新更新时间:2024-03-16 14:34

STM32编译环境、建立工程模板以及程序下载
1、之前写51的程序我们一般都是用的keil5软件,现在写32程序,要用到keil MDK软件,但是keil5和keil MDK不兼容,也就是说在keil5里面我们没办法写STM32F1之类的程序,而在keil MDK里面也没办法写51的程序,所以说为了让他们俩相互兼容,即我们要实现在keilMDK里面要既能够写51的程序,也能够写32的程序,我当初在网上找了好多方法都不行,最后发现一种特别简单好用的方法,就是在把keil5和keil MDK两个软件安装在同一个文件夹下面。具体步骤就是 (1)安装keil5软件(尽量不要安装在C盘),然后激活它。这里激活的时候要在注册机里选择C51。 (2)安装keil MDK软件,在安装
[单片机]
<font color='red'>STM32</font>编译环境、<font color='red'>建立</font><font color='red'>工程</font>模板以及程序下载
STM32环境搭建,建立工程及程序烧录
开发环境的搭建: STM32开发环境使用Keil MDK进行,那怎么使用MDK建立一个工程呢? MDK下载 首先应该下载到MDK官网:http://www.keil.com/arm/mdk.asp 下载最新版的MDK安装包,进入MDK官网,点击download按钮 跳转到下载界面,填入必要的信息: 然后在页面下方点击提交按钮: 如果填写的信息,符合要求,在本页面将会显示下载连接: 点击下载MDK(可以看到香农这里的MDK版本是MDK520,大概有567M的样子) MDK安装 下载完成之后点击安装: 选择安装目录,根据自己的需求定义, 随便填一些用
[单片机]
<font color='red'>STM32</font>环境搭建,<font color='red'>建立</font><font color='red'>工程</font>及程序烧录
STM32_固件库建立工程
使用STM32的小伙伴知道,操作STM32可以用官方固件库直接操作芯片,也可以直接操作寄存器。 无论使用哪种方式,最终都是在操作寄存器。 今天,小编给大家介绍使用ST官方的固件库建立的工程。有误请指出,谢谢 STM32F1xx固件库资源:(百度云盘 )链接:http://pan.baidu.com/s/1kUVK3C7 密码:3fzx 1,新建项目,在新建工程的目录下新建几个文件夹: A,CORE (用来存放启动文件) B,STM32F10x_FWLib (用来存放ST官方的库函数文件) C,USER (用来存放我们的mian.c,以及system_stm32f10x.c等) 2,打开ST官方的固件库,在对应的文件夹添加一下文件
[单片机]
STM32_固件库<font color='red'>建立</font><font color='red'>工程</font>
【STM32H7教程】第4章 STM32H7工程模板建立(MDK5)
第4章 STM32H7工程模板建立(MDK5) 本章教程为大家介绍如何创建MDK5工程,配置方法以及经常用到的一些配置项。 4.1 初学者重要提示 4.2 第1步,创建工程文件夹 4.3 第2步,创建新工程 4.4 第3步,设置工程名和工程分组名 4.5 第4步,添加工程文件 4.6 第5步,Target Options配置 4.7 第6步,最后一步验证是否创建成功 4.8 MDK的字体,多核并行编译,语法提示等设置 4.9 总结 4.1 初学者重要提示 KEIL官方有一个专门的MDK上手文档mdk5-getting-started,在MDK的安装目录里面,坛友翻译了整个文档:http
[单片机]
【STM32H7教程】第4章 STM32H7<font color='red'>工程</font>模板<font color='red'>建立</font>(MDK5)
小熊arm学习总结:iar7.3建立工程报错
方法一. STM32工程 从IAR6.0 转到 IAR6.3 用IAR6.3打开IAR6.0 的工程,编译的时候出现提示错误: extern uint32_t __get_PSP(void); 已经在C:Program FilesIAR SystemsEmbedded Workbench 6.0arminccintrinsics.h文件中定义 extern uint32_t __get_MSP(void);已经在C:Program FilesIAR SystemsEmbedded Workbench 6.0arminccintrinsics.h文件中定义 。。。。。。 这是由于IAR6.3已经加入了CM3的内核
[单片机]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved