0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

STM32CubeMX系列的开发配置步骤解析

STM32嵌入式开发 来源:微雪电子 作者:微雪电子 2020-08-31 13:52 次阅读

STM32Cube 是一个全面的软件平台,包括了ST产品的每个系列。平台包括了STM32Cube 硬件抽象层(一个STM32抽象层嵌入式软件,确保在STM32系列最大化的便携性)和一套的中间件组件(RTOS, USB, FatFs, TCP/IP, Graphics, 等等)。

直观的STM32微控制器的选择和时钟树配置

微控制器图形化配置外围设备和中间件的功能模式和初始化参数

C代码生成项目覆盖STM32微控制器的初始化符合IAR,Keil的和GCC编译器。

对于新的产品设计,我们强烈推荐使用STM32Cube来加速你的开发过程,并为以后的产品平台移植打下良好的基础。

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

选择工程后进入工程界面,如下图所示。

配置外设

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

GPIO口功能选择,PF6,PF7,PF8,PF9为LED1-LED4.找到对应管脚设置为GPIO_Output模式。(黄色引脚为该功能的GPIO已被用作其他功能,可以忽略。绿色表示管脚已使用)

时钟配置

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

功能外设配置

在配置框我们可以看到有几个区域,分别对应的功能设置如下

Multimedia(多媒体):音频视频、LCD

Control(控制):定时器

Analog(模拟):DACADC

Connectivity(通讯连接):串口、SPI 、I2C、USB、ETH

SYStem(系统):DMA(直接存储器存取)、GPIO、NVIC、RCC、看门狗

middlewares(中间件): FreeRTOS、FATFS、LwIP、USB

此工程中DMA没用的不用配置,NVIC(嵌套中断向量控制器(Nested Vectored Interrupt Controller))配置中断优先级。RCC不用配置。

GPIOPinLevel(管脚状态):低电平

GPIOmode (管脚模式 ):推挽输出

Maximum output speed (最大输出速度):低速

UserLabel (用户标签):LED1

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

功耗计算

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

生成工程报告

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

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

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

点击生成报告,工程目录下会生成txt文件和pdf文件,里面记录了我们刚才的设置。

生成工程代码

点击Project –>Generate Code或者点击快捷图标生成工程代码。

点击Open Project打开工程。到此就配置好工程外设初始化。

点击Build按钮,Build Optput信息框会输出没有错误没有警告。

添加应用程序

在gpio.c文件中可以看到LED管脚的初始化函数。

在stm32f1xx_hal_gpio.h头文件中可以看到GPIO的操作函数。

在main函数中的while循环中添加LED流水灯效果的应用程序。

重新编译程序,点击下载到Open103Z-C开发板。如果提示错误,可以点击图标对Option for Target 的Dubug选项进行修改。选的是ST-LINK)

点击Settings->Flash Download勾选 Reset and Run选项。这样程序下载后自动启动运行,不用再按一下复位或者重新上电才能运行。

程序下载到Open103Z-C开发板。可以看到LED1~LED4依次被点亮,实现流水灯的效果。

总结:STM32Cube提供了固件库,用户可直接调用固件库函数来开发,并且可以很好的实现STM32-MCU全系列的代码一致性。同时STM32CubeMX工具提供的可视化引脚、外设、时钟等配置功能,可以帮助快速完成工程的建立、初始化。大大降低了开发者的工作量。后续我们会结合微雪Open746I-C开发板,通过STM32cubeMX系列教程讲解如何学习STM32F7系列的片上外设。通过STM32F7系列的学习,可以让各位更快的掌握其他系列的使用方法。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • stm32cubemx
    +关注

    关注

    5

    文章

    260

    浏览量

    14457

原文标题:STM32CubeMX-系列教程入门

文章出处:【微信号:c-stm32,微信公众号:STM32嵌入式开发】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    STM32CUBEMX开发GD32F303(8)----USART收发配置

    本章STM32CUBEMX配置STM32F103,并且在GD32F303中进行开发,同时通过GD32303C_START开发板内进行验证。
    的头像 发表于 11-29 10:40 2510次阅读
    <b class='flag-5'>STM32CUBEMX</b><b class='flag-5'>开发</b>GD32F303(8)----USART收<b class='flag-5'>发配置</b>

    STM32CubeMX系列教程新鲜出炉

    Open746I-C开发板,通过STM32cubeMX系列教程讲解如何学习STM32F7系列的片上外设。以图形化
    发表于 05-04 11:29

    STM32CUBEMX配置教程

    STM32CUBEMX配置教程(四)定时器中断配置基于STM32H743VI使用STM32CUBEMX两年了,始终觉得这个工具非常的方便,但
    发表于 08-17 09:02

    STM32CubeMX配置步骤教程

    STM32CubeMX配置步骤教程
    发表于 12-03 07:57

    STM32F407的串口UART 基础配置STM32CubeMX

    STM32F407的串口UART 基础配置STM32CubeMX
    发表于 11-29 16:06 51次下载
    <b class='flag-5'>STM32</b>F407的串口UART 基础<b class='flag-5'>配置</b><b class='flag-5'>STM32CubeMX</b>

    STM32cubeMX I2S DMA双缓冲配置

    STM32cubeMX I2S DMA双缓冲配置开发测试环境cubeMX配置方法1,配置I2S模
    发表于 12-03 09:06 35次下载
    <b class='flag-5'>STM32cubeMX</b> I2S DMA双缓冲<b class='flag-5'>配置</b>

    keil + STM32CubeMX 开发stm32L0 踩坑

    keil + STM32CubeMX 开发stm32L0 踩坑我个人喜欢下载东西全部走官网 不喜欢去下别人给的乱七八糟的资源。原因有二,一、找到头疼,版本说不定还旧。二、病毒,和各种奇奇怪怪
    发表于 12-03 09:06 30次下载
    keil + <b class='flag-5'>STM32CubeMX</b> <b class='flag-5'>开发</b><b class='flag-5'>stm32</b>L0 踩坑

    STM32CUBEMX系列——CAN通讯的配置

    STM32CUBEMX系列——CAN通讯的配置CUBEMX配置说明CAN相关函数说明过滤器的配置
    发表于 12-04 20:06 13次下载
    <b class='flag-5'>STM32CUBEMX</b><b class='flag-5'>系列</b>——CAN通讯的<b class='flag-5'>配置</b>

    STM32CubeMX——搭建环境、编译烧写

    二、用STM32CubeMX生成工程文件(一)选择MCU和封装(二)配置时钟(三)配置调试模式(四)配置GPIO(五)代码生成三、填写main函数四、编译与仿真运行五、烧写与硬件实现六
    发表于 12-07 10:21 19次下载
    <b class='flag-5'>STM32CubeMX</b>——搭建环境、编译烧写

    STM32cubemx教程及STM32入门(一)

    生成C 初始化代码,可以大大减轻开发工作,时间和费用,提高开发效率。STM32CubeMX几乎覆盖了STM32系列芯片。在
    发表于 12-07 17:36 13次下载
    <b class='flag-5'>STM32cubemx</b>教程及<b class='flag-5'>STM32</b>入门(一)

    STM32CUBEMX配置教程(一)基础配置

    STM32CUBEMX配置教程合集(一)
    发表于 12-14 18:41 16次下载
    <b class='flag-5'>STM32CUBEMX</b><b class='flag-5'>配置</b>教程(一)基础<b class='flag-5'>配置</b>

    参照STM32时钟树配置STM32CubeMX Clock Configuration(STM32L011G4U6为例)

    本文将详细解析STM32微控制器的时钟树和STM32CubeMX Clock Configuration的配置关系。
    发表于 12-14 18:42 2次下载
    参照<b class='flag-5'>STM32</b>时钟树<b class='flag-5'>配置</b><b class='flag-5'>STM32CubeMX</b> Clock Configuration(<b class='flag-5'>STM32</b>L011G4U6为例)

    STM32CUBEMX配置教程(二)时钟等内部参数配置

    STM32CUBEMX配置教程(二)时钟等参数配置基于STM32H743VI使用STM32CUBEMX两年了,始终觉得这个工具非常的方便,但
    发表于 12-14 18:42 19次下载
    <b class='flag-5'>STM32CUBEMX</b><b class='flag-5'>配置</b>教程(二)时钟等内部参数<b class='flag-5'>配置</b>

    STM32CUBEMX配置教程(九)STM32串口DMA收发数据

    ,因此写下这一系列教程以供记忆,顺便让我这个大萌新给广大小萌新提供一些学习帮助。此次工程效果:串口115200波特率,接收串口助手XCOM发送的数据并发送回XCOM本次配置的工程链接在最下方,有需要自取。0基础可以从第一个教程开始阅读S
    发表于 12-24 18:47 24次下载
    <b class='flag-5'>STM32CUBEMX</b><b class='flag-5'>配置</b>教程(九)<b class='flag-5'>STM32</b>串口DMA收发数据

    stm32cubeMX结合matlab使用

    文章目录前言一、软件的安装二、使用步骤1.先配置stm32cubeMX(我这里做的是一个串口通讯)2.matlab的配置3.工程生成总结前言今天带大家把Matlab和
    发表于 12-24 18:58 9次下载
    <b class='flag-5'>stm32cubeMX</b>结合matlab使用