STM32Cube 是一个全面的软件平台,包括了ST产品的每个系列。(如,STM32CubeF4 是针对STM32F4系列).

平台包括了STM32Cube 硬件抽象层和一套的中间件组件(RTOS, USB, FS, TCP/IP,  Graphics, 等等).

cubeMX的主要优点:

1.直观地进行STM32选择

2.图形化配置

3.C代码项目产生,涵盖STM32初始化部分。兼容IAR, KEIL和GCC编译器

4.支持Eclips

安装软件 到ST官网下载软件包和cube库,并安装好。
新建工程

点击NEW Project,新建工程,

或者file-->new project也可

选器件 下面是选择器件板子,可以根据MCU进行选择,也可以根据board型号选择
选板子

我用的板子是STM32F411RE,所以产商选择STMicroelectric,

版本选择Nucleo,型号选择F4系列,便可看到列表中有F411选项了

引脚配置

双击F411RE,可以进入pinout引脚配置界面,在这个界面可以配置引脚,

可以直接在芯片示意图上配置,十分方便

其他配置 其他的配置选项如图,有时钟配置,外设配置,功耗计算
时钟配置

时钟配置如图,也是图形化界面,很方便快捷就可以配置好,

只需要更改数字就可以得到想要的频率

外设配置

外设的配置如图,只需要双击要配置的外设即可进行配置,比如我配置GPIO,

进入后可见如图窗口,可以选择GPIO的模式,上下拉,输出速度

功耗计算 功耗选项如图,并不常用
生成工程

配置完成后,点击生成工程文件按钮,弹出工程设置窗口,填写工程名,选择目录,

选择编译器,可选EWARM,MDK等。最后点击OK,便可生成工程文件了,

用编译器打开后,就可以方便地编写代码了,省去了繁琐的配置工作

注意事项

  • 使用起来总体还是比较简单的,只要对STM32比较了解,看着软件里的提示就可以独立完成
  • 在生成的文件里写代码时要在指定区域内写,不然下次再用CubeMX的话会被删掉的
  • 手动添加库目录:  C:\Users\<用户名>\STM32Cube\Repository

【MCU】【STM32】1.cube MX库使用笔记的更多相关文章

  1. STM32 Cube固件库编程之新建工程

    Cube固件库是ST现在主推的固件库,并且在它的官网已经找不到原来的标准库可供下载.Cube固件库的构架图如下 这种新式构架可以有效的加快软件工程师的工程进度. 新建一个工程项目主要包括以下的步骤: ...

  2. 【玩转单片机系列002】 如何使用STM32提供的DSP库进行FFT

    前些日子,因为需要在STM32F103系列处理器上,对采集的音频信号进行FFT,所以花了一些时间来研究如何高效并精确的在STM32F103系列处理器上实现FFT.在网上找了很多这方面的资料做实验并进行 ...

  3. STM32软件复位(基于库文件V3.5)

    源:STM32软件复位(基于库文件V3.5) void SoftReset(void) { __set_FAULTMASK(); // 关闭所有中端 NVIC_SystemReset();// 复位 ...

  4. 基于STM32的USB枚举过程学习笔记

    源:基于STM32的USB枚举过程学习笔记 基于STM32的USB枚举过程学习笔记(一) 基于STM32的USB枚举过程学习笔记(二) 基于STM32的USB枚举过程学习笔记(三) 基于STM32的U ...

  5. python 库安装笔记

    python 库安装笔记 zoerywzhou@163.com http://www.cnblogs.com/swje/ 作者:Zhouwan 2017-2-22 友情提示 安装python库的过程中 ...

  6. stm32开发之标准库的介绍

    1 STM32标准外设库概述 STM32标准外设库之前的版本也称固件函数库或简称固件库,是一个固件函数包,它由程序.数据结构和宏组成,包括了微控制器所有外设的性能特征.该函数库还包括每一个外设的驱动描 ...

  7. numpy, matplotlib库学习笔记

    Numpy库学习笔记: 1.array()   创建数组或者转化数组 例如,把列表转化为数组 >>>Np.array([1,2,3,4,5]) Array([1,2,3,4,5]) ...

  8. Modbus库开发笔记之十一:关于Modbus协议栈开发的说明

    对于Modbus协议栈的整个开发内容,前面已经说得很清楚了,接下来我们说明一下与开发没有直接关系的内容. 首先,关于我为什么开发这个协议栈的问题.我们的初衷只是想能够在开发产品时不用每次都重写这一部分 ...

  9. Modbus库开发笔记之一:实现功能的基本设计(转)

    源: Modbus库开发笔记之一:实现功能的基本设计

随机推荐

  1. mysql 自动备份和nginx自动安装脚本

    一.自动备份Mysql脚本: 如下脚本为mysql自动备份脚本,仅供参考,可以根据实际情况修改. #!/bin/sh #auto backup mysql #wugk #Define PATH定义变量 ...

  2. 关于GDB使用

    编译时要加上 -g  才可以提供给gdb符号信息. 启动: $gdb (target-program) 单步执行: $n 设断点: 1.程序入口 $break (functionname()) 2.行 ...

  3. ucos中的三种临界区管理机制

    熟悉ucos,或者读过Jean.J.Labrosse写过的ucos书籍的人,一定会知道ucos中著名的临界区管理宏:OS_ENTER_CRITICAL()和OS_EXIT_CRITICAL(). 同样 ...

  4. Intent四个重要属性

    Intent四个重要属性   Intent作为联系各Activity之间的纽带,其作用并不仅仅只限于简单的数据传递.通过其自带的属性,其实可以方便的完成很多较为复杂的操作.例如直接调用拨号功能.直接自 ...

  5. Repeater多列分别合并单元格

    GridView.Repeater合并单元格可以参考http://www.cnblogs.com/zhmore/archive/2009/04/22/1440979.html,但是原文例子是合并一列的 ...

  6. LayoutInflater的使用

    在实际工作中,事先写好的布局文件往往不能满足我们的需求,有时会根据情况在代码中自定义控件,这就需要用到LayoutInflater.LayoutInflater在Android中是“扩展”的意思,作用 ...

  7. 简单的canvas时钟

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  8. Pod(转)

    一.CocoaPods的安装 (1)使用淘宝的Ruby镜像替换官方的ruby源,在终端输入命令 $ gem sources --remove https://rubygems.org/ $ gem s ...

  9. php curl 采集

    curl 采集五个步骤: 1.curl_init()初始化curl 2.curl_setopt()设置传输数据和参数 3.curl_exec()执行传输并获取返回数据 4.curl_errono()返 ...

  10. Kafka是如何实现高吞吐率的

    Kafka是如何实现高吞吐率的 原创 2016-02-27 杜亦舒 性能与架构 Kafka是分布式消息系统,需要处理海量的消息,Kafka的设计是把所有的消息都写入速度低容量大的硬盘,以此来换取更强的 ...