STM32CubeMX新建工程+基本IO配置过程
Ⅰ、写在前面
学习本文之前可以查看我前面的文章:
本文接着上一篇文章结合基本IO配置实例,讲述关于STM32CubeMX新建工程的过程。最终通过STM32CubeMX工具配置完成一个驱动IO(点亮LED)的软件工程,也就是通过STM32CubeMX配置完成之后,打开工程直接下载就能点亮LED的工程。
本文使用Keil(MDK-ARM) V5软件为编译环境,如果你没有安装最新版本的软件,请安装最新版本的软件,具体过程可以参考我的一篇文章:
关于本文的更多详情请往下看。
Ⅱ、STM32CubeMX新建工程描述
在上一篇文章中简单讲述了新建一个工程的步骤,这里结合实例来讲述新建工程的每一个步骤的细节。
1.打开STM32CubeMX软件,点击“新建工程”

2.选择MCU 或选择(ST官方)开发板
A.如果是我们网上购买的,或者自己画的开发板,点击“MCU Selector”进入MCU选择器。选择器在网页上常见,根据自己需求进行选择(我们以STM32F103E为例)。
1.根据“系列”选择;如:F0、F1、F2......F7、L0、L1、L4等;
2.根据“产品线”选择;
3.根据“封装”选择;
4.根据“其他特征”选择;如:FLASH大小、RAM大小、IO数量等。
层层筛选下来,最后就可以看到自己想要的芯片型号,双击“选中”芯片,如下图:

B.如果你的开发板是购买ST官方的开发板(或评估板),点击“Board Selector”进入开发板选择器。(我们以STM3210E-EVAL为例)。
1.根据“厂商”选择;目前只有ST厂商,估计以后会拓展其他厂商;
2.根据“板子类型”选择;
3.根据“芯片系列”选择;
层层筛选下来,最后就可以看到自己想要的芯片型号,双击“选中”芯片,如下图:

上面两种选中的方法类似,以及后面的的配置也很类似,我们下面以第一种选中MCU(STM32F103ZE)为例来讲述。
3.工程配置
在上一步“选中”芯片之后,就进入了芯片工程配置界面。
A.Project -> Settings弹出设置窗口;

B.在弹出的设置窗口有3个选项:
Project工程设置:这个选项是主要设置的选项,配置信息描述在下面;
Code Generator代码生成配置:这个选项是关于代码生成的配置。如:拷贝HAL库的配置、生成.c和.h的配置(一般不用修改,默认配置)。
Advanced Settings高级设置:这个选项在配置芯片(引脚功能)之后才能设置。

C.Project工程设置,这个选项是配置工程重要的一个选项,其中配置的信息也比较重要,且容易理解。

4.Pinout配置
这接下的配置才是与我们最终运行代码密切相关的,我们这里以简单的配置IO(PF11引脚)驱动LED为例来讲述。
A.放大芯片图标,找到PF11(可以通过Find查找):

B.选中PF11 -> 左键 -> 弹出列表 -> 选中“GPIO_Output”

C.配置“晶振”引脚(RCC配置)
如果使用“外部晶振”就还需要继续配置(我们配置HSE为例),包含三个配置:
HSE外部高速时钟、LSE外部低速时钟、MCO时钟输出。

5.Clock配置
这里的配置是比较人性化的配置,结合时钟树,一看就明白(也可以根据参考手册时钟树配置),配置方法一样。

6.“综合”配置
由于我们只配置了PF11引脚,其他功能(如DMA、USB等)没有配置,如果前面配置的有,这里配置的信息就比较多,所以叫“综合配置”。
点击GPIO,弹出配置对话框,按步骤依次填写完信息,点击“OK”就好了:


7.低功耗配置
一般在学习阶段,低功耗配置比较少,在实际项目中配置低功耗需要考虑的东西比较多(包括硬件)。

8.生成代码
在完成上面所有配置之后,最后的工作就是点击“生成代码”按钮:

如果前面配置的生成软件工程,就会拷贝HAL库文件在你的工程:

最后提示打开软件工程(前提是你已经安装了IDE:MDK-ARM)

9.编译下载
打开工程,编译没有错误,没有警告,下载,程序运行;

至此,整个过程就完成了。如果你的开发板LED灯引脚(PF11)和上面配置一样,则下载到开发板,从新复位则可见LED灯亮(低电平点亮LED)。
STM32CubeMX基本IO配置过程(原始版),提供给大家下载地址(360云盘):
https://yunpan.cn/cMm9rBQZNX3H4 访问密码 6735
10.添加代码
上面的工程是简单的工程(配置初始化代码),可以在提示处(如 USER CODE BEGIN)添加自己代码。
我在“USER CODE BEGIN 0”下添加了一个“测试延时”函数; 在“USER CODE BEGIN WHILE”处添加了一个LED亮灭语句。
添加以上两处代码就能实现LED间隔(延时)一段时间亮灭变化。
STM32CubeMX基本IO配置过程(修改版),提供给大家下载地址(360云盘):
https://yunpan.cn/cMmUMDSY8KSgi 访问密码 8304
Ⅲ、说明
以上就是一个“基本IO配置过程”的详细步骤,后续会定期更新使用STM32CubeMX新建各种外设资源工程的文章,敬请等待。
以上总结仅供参考,若有不对之处,敬请谅解。
Ⅳ、最后
更多精彩文章我将第一时间在微信公众号里面分享,对本文有什么疑问可微信留言。
本着免费分享的原则,方便大家手机学习知识,定期在微信平台分享技术知识。如果你觉得分享的内容对你有用,又想了解更多相关的文章,请用微信搜索“EmbeddDeveloper” 或者扫描下面二维码、关注,将有更多精彩内容等着你。


STM32CubeMX新建工程+基本IO配置过程的更多相关文章
- STM32CubeMX软件工程描述_USART配置过程
推荐 分享一个朋友的人工智能教程,零基础!通俗易懂!希望你也加入到人工智能的队伍中来! http://www.captainbed.net/strongerhuang Ⅰ.写在前面 学习本文之前可以查 ...
- [转]caffe的配置过程
caffe的配置过程 转:http://blog.csdn.net/brightming/article/details/51106629 版权声明:本文为博主原创文章,欢迎转载!转载请写明原文链 ...
- FastDFS配置过程
在我的生产环境中利用FastDFS实现动静分离的方案
- CAS SSO:汇集配置过程中的错误解决方法
本教程为gevin.me原创文章,转载请注明: CAS SSO:配置过程中的错误解决方法 | Gevin’s Blog 本文将收集在配置CAS SSO遇到的所有错误,希望对大家有帮助,也方便下次搭建的 ...
- Azkaban2配置过程
Azkaban2配置过程 azkaban2所需环境:jdk1.6.ant.jetty.hadoop.ssl证书 通过http://azkaban.github.io/azkaban2/download ...
- OGG "Loading data from file to Replicat"table静态数据同步配置过程
OGG "Loading data from file to Replicat"table静态数据同步配置过程 一个.mgr过程 GGSCI (lei1) 3> view p ...
- Linux LVM逻辑卷配置过程详解
许多Linux使用者安装操作系统时都会遇到这样的困境:如何精确评估和分配各个硬盘分区的容量,如果当初评估不准确,一旦系统分区不够用时可能不得不备份.删除相关数据,甚至被迫重新规划分区并重装操作系统,以 ...
- elasticsearch5.0.0 安装插件及配置过程
elasticsearch5.0.0 安装插件及配置过程 由于es5.0是里程碑式的更新,所以很多变化的地方,暂时我就插件安装遇到的问题记录一下. 插件安装命令 2.3版本的安装命令 安装Marvel ...
- synergy 两台Windows电脑配置过程
Synergy 介绍 软件作用 Synergy 两台独立电脑,共享一套鼠标和键盘的工具, 软件原理(我自己想的) 保证两台电脑在一个局域网内,可以相互Ping通的电脑(这样才能直接通过TCP连接) 将 ...
随机推荐
- zedboard--嵌入式网络摄像机(mjpg-streamer)的移植和搭建(二十二)
在zedboard上移植和搭建嵌入式网络摄像机mjpg-streamer.具体步骤如下: 来自:http://write.blog.csdn.net/postedit/13741451 1.安装lib ...
- eclipse插件之easyshell
在eclipse marketplace可以找到这个插件,名字就是easyshell,下载安装完以后,可以通过配置快捷键实现: enjoy it.
- (队列的应用5.3.3)POJ 3125 Printer Queue(优先队列的使用)
/* * POJ_3125.cpp * * Created on: 2013年10月31日 * Author: Administrator */ #include <iostream> # ...
- ibatis 调用存储过程
ibatis 调用存储过程 CreationTime--2018年8月15日19点38分 Author:Marydon 1.返回系统游标集合 第一步:返回值,将返回值封装到HashMap中 < ...
- 【Django】pip 安装和卸载 Django
1.在dos命令中输入pip进行安装 注意:如果提示('pip' 不是内部或外部命令,也不是可运行的程序或批处理文件.) 那么先将pip添加到环境变量中,pip路径一般在python的安装路径下,例如 ...
- Mybatis3.x与Spring4.x整合
一.搭建开发环境 1.1.使用Maven创建Web项目 执行如下命令: mvn archetype:create -DgroupId=me.gacl -DartifactId=spring4-myba ...
- 利用pandas进行数据分析之二:DataFrame与Series数据结构对比
Series与DataFrame对比学习 文章为本人原创,未经同意请勿转载,http://www.cnblogs.com/smallcrystal/ Series:构建的方法,一组数组(列表或元组), ...
- cocopods卸载、安装、重装等问题解决(转)
今日在升级af库的时候,头脑发热把cocopods给卸载了,然后重装就出现了一些问题,主要是Mac ox s升级至10.11之后,好多命令都和以前不一样了,现在重新总结其安装步骤,如下: 一.全新安装 ...
- JS应用(资料很全)
http://www.cnblogs.com/meil/archive/2007/02/06/642559.html 如果你找的javascript的东西的话,建议你 ctrl+F 直接在这个页上找 ...
- lamp 一键安装
下载安装(ssh登录服务器,执行如下操作即可,需要用到root用户权限来安装) 源码编译安装 wget http://dl.wdlinux.cn:5180/lanmp_laster.tar.gz ta ...