STM32Cubemx 是一个便捷,方便管理的软件平台。极大的优化了开发的过程,尽管很多人对此不适应。它包括了ST产品的每个系列除了STM8。平台包括了STM32Cube 硬件抽象层(一个STM32抽象层嵌入式软件,确保在STM32系列最大化的便携性)和一套的中间件组件(RTOS, USB, FatFs, TCP/IP,  Graphics, 等等).
  • 直观的STM32微控制器的选择和时钟树配置
  • 微控制器图形化配置外围设备和中间件的功能模式和初始化参数
  • C代码生成项目覆盖STM32微控制器的初始化符合IAR™,Keil的™和GCC编译器。

对于产品设计,它无疑方便了产品的统一管理成为可能,而不再是一团乱的团队开发情况.节省了大量管理时间。

平台:原子STM32F429 阿波罗

1.新建工程
打开STM32cubeMX软件,点击New Project。选择对应开板MCU(STM32F429IG LQFP)。

选择工程后进入工程界面,如下图所示。(提示 看不清图片的朋友,单独点击图片,或者放大网页(按住CTRL键+鼠标滚轮往前推))原图是超大的超清的 ,被博客缩小了而已。

2.  配置外设。

RCC设置,选择HSE(外部高速时钟)为Crystal/Ceramic Resonator(晶振/陶瓷谐振器)

GPIO口功能选择,PB0,PB1为LED1-LED2.找到对应管脚设置为GPIO_Output模式。就会从灰色状态变为激活的绿色状态(黄色引脚为该功能的GPIO已被用作其他功能,可以忽略。绿色表示管脚已使用)

3. 时钟配置

时钟配置采用图形配置,直观简单。各个外设时钟一目了然。STM32F429最高时钟为180M,此处只有在HCLK处输入72,软件即可自动配置。(RCC选择外部高速时钟)。

4.功能外设配置

  相比于旧版,新版的功能设置界面比较隐藏. 名字:System view 在右上方(熟悉的功能界面又显示出来了)就是长了点

在配置框我们可以看到有几个区域,分别对应的功能设置如下
  • Multimedia(多媒体):音频视频、LCD
  • Timers(控制):定时器
  • Analog(模拟):DAC、ADC
  • Connectivity(通讯连接):串口、SPI 、I2C、USB、ETH
  • SYStem Core(系统核心):DMA(直接存储器存取)、GPIO、NVIC、RCC
  • middlewares(中间件): FreeRTOS、FATFS、LwIP、USB
  • Security:安全
  • Computing:计算
此工程中DMA没用的不用配置,NVIC(嵌套中断向量控制器(Nested Vectored Interrupt Controller))配置中断优先级。RCC不用配置。

  • GPIO Pin Level (管脚状态):高电平
  • GPIO mode (管脚模式 ):推挽输出
  • Maximum output speed (最大输出速度):高速
  • User Label (用户标签):Opt_Led0

更改用户标签,管脚配置图会显示管脚的标签。

4.  功耗计算

这个根据配置的外设计算功耗,不用理会。

5. 生成工程报告

输入工程名,选择工程路径(注意不要出现中文,否则可能出错)。工具链/IDE选择MDK-ARM V5。最后面可以设置堆栈大小,此处默认不作修改。

在Code Generator中找到Generated files框,勾选Generated periphera initialization as a pair of '.c/.h' files per IP。外设初始化为独立的C文件和头文件。

点击Project –>Generate Reports或者点击快捷图标生成报告。系统会提示先创建一个工程项目。点击Yes设置工程。

生成完以后,OpenProject 然后进入Option,选择Debugger分支,下载器选择ST-LINK,同时修改里面的选项每次下载后自动重启。保存关闭工程再打开即可开始你的开发之路。

持续更新Ing....

转载于:https://www.cnblogs.com/Engineer-Lai/p/10072673.html

STM32CubeMX系列教程 5.0版本环境开发——1.工程搭建相关推荐

  1. 微信公众号开发系列教程一(调试环境部署)

    http://www.cnblogs.com/zskbll/p/4074855.html 目录 C#微信公众号开发系列教程一(调试环境部署) C#微信公众号开发系列教程一(调试环境部署续:vs远程调试 ...

  2. 微信公众号开发系列教程一(调试环境部署续:vs远程调试)

    微信公众号开发系列教程一(调试环境部署) 微信公众号开发系列教程一(调试环境部署续:vs远程调试) C#微信公众号开发系列教程二(新手接入指南) C#微信公众号开发系列教程三(消息体签名及加解密) C ...

  3. php yii2支付宝开发,yii2 支付宝支付教程 [ 2.0 版本 ]

    yii2 支付宝支付教程 [ 2.0 版本 ] 支付宝支付流程个人理解大致就这三步 1.前台页面将支付信息数据通过立即支付按钮 ajax提交到订单处理层 2.在订单处理层引用支付宝的接口 将支付数据写 ...

  4. STM32CubeMX系列教程8:配置工程模板(串口+不定长数据收发+DMA+IDLE中断+软中断)

    文章目录 摘要 生成工程 配置外设 1.配置时钟与Debug 2.配置串口与DMA 3.配置定时器与中断 配置时钟树 配置工程设置 点击`GENERATE CODE`生成工程 修改源码 配置软中断 配 ...

  5. STM32CubeMX系列教程04_STM32CubeMX各窗口界面描述

    说明: 本文原创作者『strongerHuang』 首发于微信公众号『嵌入式专栏』,同时也更新在我的个人网站:EmbeddedDevelop 标签:STM32. STM32CubeMX. LL库. H ...

  6. 关于 Kotlin 一系列的学习教程、文章。学好 Kotlin 从这里开始,争取做到最全、最详细。让没有编程经验的朋友也能通过这个系列教程用 Koltin 语言来开发项目

    KotlinLearn 项目地址:Jetictors/KotlinLearn 简介: 这是一个关于 Kotlin 一系列的学习教程.文章.学好 Kotlin 从这里开始,争取做到最全.最详细.让没有编 ...

  7. unity2d游戏开发系列教程:一、环境安装

    从这篇文章开始,一步一步教大家从0开始通过2DGameKit项目进行2D游戏开发 第一步.环境安装 1.先使用手机下载Unity Connect并注册登陆 2.进入unity官网https://uni ...

  8. python微信爬取教程_PYTHON爬虫之旅系列教程之【利用Python开发微信公众平台一】...

    感谢大家的等待,好啦,都准备好瓜子.板凳,老司机要发车啦-- 本系列课程讲述"PYTHON爬虫之旅",具体大纲可参考:[PYTHON爬虫之旅]概要目录. 本节课讲述如何利用Pyth ...

  9. mysql8安装版安装教程_MySQL8.0版本安装教程

    这几天被各种环境的配置搞疯了,查询了很多资料,也算有点经验,对于Mysql的安装,以及可能会出现的问题做出解决方案. 我这里讲的是zip的安装教程. 1.进入官网后的界面是: 3.点击进去后,选择第一 ...

最新文章

  1. red hat DHCP服务器配置
  2. 关于:last-child的一点见解
  3. android第一次作业
  4. zabiix监控磁盘io
  5. JS-JavaScript学习笔记(一)
  6. della计算机驱动检测,nexus6安装BPTOOLS中的diag驱动图文教程
  7. memcpy和memmove的区别
  8. 判断一个数是不是回文数
  9. Python爬虫之解析网页
  10. JS 中 call()、apply()、bind() 的用法
  11. C++之泛型编程(模板)
  12. GB28181开放流媒体服务平台LiveGBS实际测试时问题排查
  13. C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(二)让物体动起来②
  14. 2009-03-24 20:01 Matlab 7.0 添加BNT工具箱(转)
  15. 专利申请之:交底和挖掘的方法
  16. 谷歌浏览器Chrome播放rtsp视频流解决方案
  17. R语言使用mean函数计算dataframe指定数据列的均值
  18. ffmpeg时间戳校正到相同或+1
  19. day23 Java8新特性
  20. [HttpServlet] Error occured when handling uri: /cat/s/router

热门文章

  1. 李洪强iOS经典面试题36-简单介绍 ARC 以及 ARC 实现的原理
  2. Eclipse/MyEclipse安装FindBugs
  3. Linux复习(六)
  4. RDIFramework.NET 中多表关联查询分页实例
  5. 《C陷阱与缺陷》和《C专家编程》两本书又翻印了
  6. Nginx静态资源优化配置之sendfile
  7. ConcurrentHashMap的源码分析-resizeStamp
  8. Java并发编程的基础-其他的线程复位
  9. SpringMVC的数据响应-回写数据-返回对象或集合(应用)
  10. Bean的依赖注入方式