STM32CubeMX实战教程(一)——软件入门

软件入门

    • 前言
    • 新建工程
    • 界面简介
        • MCU
        • 外设配置
        • 时钟树
        • 工程设置
        • 工具
        • 生成代码
        • 代码分析
          • main.c
          • gpio.c
          • stm32f4xx_it.c
        • 程序下载
        • 现象
    • 结语

前言

STM32Cube 是一个全面的软件平台,包括了ST产品的每个系列。平台包括了STM32Cube 硬件抽象层(一个STM32抽象层嵌入式软件,确保在STM32系列最大化的便携性)和一套的中间件组件(RTOS, USB, FatFs, TCP/IP, Graphics, 等等).
直观的STM32微控制器的选择和时钟树配置

  • 微控制器图形化配置外围设备和中间件的功能模式和初始化参数
  • C代码生成项目覆盖STM32微控制器的初始化符合IAR?,Keil?和GCC编译器。
  • 对于新的产品设计,我们强烈推荐使用STM32Cube来加速你的开发过程,并为以后的产品平台移植打下良好的基础。

本系列教程就将以STM32F407ZGT6为例介绍STM32单片机基于STM32CubeMX的开发方法,所用开发板为正点原子的探索者如果发现什么问题,欢迎指正

新建工程

首先,打开STM32CubeMX,第一次使用的朋友可以点击右侧的CHECK FOR UPDATEINSTALL/REMOVE检查一下软件更新并且找到对应芯片的固件库然后下载,软件和固件库都推荐是使用最新版的,这里不多介绍。

MCU

首先是这中间这块芯片,其中有所有引脚的映射,用鼠标左右键点击某一引脚可以直接对其进行配置,一般在引脚用作普通IO或者将引脚的其他功能映射至非默认引脚时需要对引脚直接操作。

外设配置

左边这一栏是外设配置栏,所有内核有关,数模转换有关或是其他外设配置的初始化都在其中进行设置,包括一些第三方组件和实时操作系统的移植都可以在其中完成,还是非常方便的。这里我们设置一下RCC时钟源,高低速时钟源都由外部晶振产生。

工程设置

上面一栏的第三个选项是工程设置的选项,这里一般在新建工程后首先配置,因为一般不变,而且容易忽略。这里介绍几个一般配置的点,其他地方基本可以不用关注。

工具

最后一个工具选项里面可以进行功耗计算,不常用,这里不必理会。

代码分析

到这里,前期的初始化工作已经全部完成了,可以先战术性喝杯水,偷个懒什么的,但是这里我想跟大家简单分析一下STM32CubeMX到底帮我们写了什么代码。

main.c

首先来看到main.c里面,主要是这个RCC的配置,也就是我们刚刚对时钟的操作已经全都变成代码写进来了。而main函数里面也已经帮我们做好相关外设的初始化了。另外,很容易发现这里有大量的USER CODE BEGINUSER CODE END字样,其实这是非常重要的,也就是STM32CubeMX给用户预留出来的编程地方当我们在STM32CubeMX里面进行调整并重新生成代码后,在这两行之间的代码会被保留,而用户在其他地方作出的修改则一律被删除,所以这里是不允许在这之外的地方进行编程或是修改的。

gpio.c

现象

空的工程当然也就没有具体现象了

结语

这次的工程太简单,就不发了,以后的教程中会附上工程源码~
非常感谢大家的阅读,如有不当或者错误的地方,欢迎指正,谢谢支持。

奥里给~

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2020年1月12日
下一篇 2020年1月12日

相关推荐