STM32CubeIDE开发(二), 全面解析cubeMX图形配置工具

这篇具有很好参考价值的文章主要介绍了STM32CubeIDE开发(二), 全面解析cubeMX图形配置工具。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

一、cubeIDE 集成cubeMX

二、STM32CubeMX界面简介

        2.1 总界面及支持功能

       【1】 功能页面

         【2】支持配置的功能栏目

         2.2 通信接口外设配置

        【1】CAN外设

         【2】FMC外设

        【3】I2C外设

        【4】串口通信外设(LPUSART*和USART*)

         【5】QUADSPI外设

        【6】SDMMC外设

        【7】SPI外设

        【8】SWPMI外设

        【9】USB外设

2.3多媒体外设相关设置

        【1】DCMI外设

        【2】DMA2D外设

        【3】LCD外设

        【4】SAI外设

2.4 计算功能相关

        【1】CRC校验计算

        【2】DFSDM外设

2.5 中间件功能相关

        【1】文件系统

        【2】嵌入式系统(FreeRTOS)

        【3】触控感应

        【4】USB(USB设备、USB主机)

2.6 定时器

        【1】低功耗定时器

         【2】RTC实时时钟

         【3】普通定时器

 2.7 系统内核相关

        【1】系统

         【2】系统时钟设置

         【3】中断功能总述

        【4】DMA功能总述

         【5】GPIO引脚配置总述

        【6】看门狗(独立看门狗(硬)、窗口看门狗(软))

        【7】User Constants

 三、时钟树设置

四、图形窗口设置

        4.1 软件包

        4.2 端口视图

        4.3 系统视图

五、工程页面配置

        5.1 工程配置

        5.2 代码生成页面

        5.3 工程高级配置页面

 六、生成代码概述说明


一、cubeIDE 集成cubeMX

        STM32CubeMX是st公司早期产品,现已经成为STM32Cube开发套件的一部分,直接集成到cubeIDE 开发平台省,是一种芯片引脚图形配置工具,可以非常轻松地配置STM32微控制器和微处理器,以及为Arm® Cortex®-M内核或面向Arm® Cortex®-A内核的特定Linux®设备树生成相应的初始化C代码。

        STM32CubeMX配置分布过程:

        【1】选择与所需外设集匹配的意法半导体STM32微控制器、微处理器或开发平台,同时包括在特定开发平台上运行的示例。

        【2】对于微处理器,允许配置GPIO和设置整个系统的时钟,并交互地将外设分配给Arm® Cortex®-M或Cortex®-A内核。特定实用工具(如DDR配置和微调)增强了STM32微处理器的易用性。对于Cortex®-M内核,配置包含了额外步骤,与微控制器的十分相似。

        【3】对于微控制器和微处理器Arm® Cortex®-M,通过引脚分配冲突处理器、时钟树设置助手、功耗计算器,以及用于配置外设(如GPIO或USART)和中间件栈(如USB或TCP/IP)的实用工具来配置各个必需的嵌入式软件。

        【4】借助增强型STM32Cube扩展包,可扩展默认软件和中间件栈。通过STM32CubeMX中可用的专用包管理器,直接下载意法半导体或意法半导体合作伙伴提供的软件包,其他软件包可以从本地驱动器进行安装。

        【5】STM32CubeMX中的独特实用程序STM32PackCreator可帮助开发人员构建自己的增强型STM32Cube扩展包。

        【6】用户可以生成与所选配置匹配的软件包。这一步提供Arm® Cortex®-M初始化C代码(可随时用于多个开发环境),或面向Arm® Cortex®-A的部分Linux®设备树。

二、STM32CubeMX界面简介

        下面将基于STM32L496VGTX型号芯片为示例,全面阐述STM32CubeMX可支持到那些配置功能。

        2.1 总界面及支持功能

       【1】 功能页面

STM32CubeIDE开发(二), 全面解析cubeMX图形配置工具

         【2】支持配置的功能栏目

STM32CubeIDE开发(二), 全面解析cubeMX图形配置工具

         2.2 通信接口外设配置

        【1】CAN外设

STM32CubeIDE开发(二), 全面解析cubeMX图形配置工具

         【2】FMC外设

STM32CubeIDE开发(二), 全面解析cubeMX图形配置工具

        【3】I2C外设

STM32CubeIDE开发(二), 全面解析cubeMX图形配置工具

        【4】串口通信外设(LPUSART*和USART*)

STM32CubeIDE开发(二), 全面解析cubeMX图形配置工具

         【5】QUADSPI外设

STM32CubeIDE开发(二), 全面解析cubeMX图形配置工具

        【6】SDMMC外设

STM32CubeIDE开发(二), 全面解析cubeMX图形配置工具

        【7】SPI外设

STM32CubeIDE开发(二), 全面解析cubeMX图形配置工具

        【8】SWPMI外设

STM32CubeIDE开发(二), 全面解析cubeMX图形配置工具

        【9】USB外设

STM32CubeIDE开发(二), 全面解析cubeMX图形配置工具

2.3多媒体外设相关设置

        【1】DCMI外设

STM32CubeIDE开发(二), 全面解析cubeMX图形配置工具

        【2】DMA2D外设

STM32CubeIDE开发(二), 全面解析cubeMX图形配置工具

        【3】LCD外设

STM32CubeIDE开发(二), 全面解析cubeMX图形配置工具

        【4】SAI外设

STM32CubeIDE开发(二), 全面解析cubeMX图形配置工具

2.4 计算功能相关

        【1】CRC校验计算

STM32CubeIDE开发(二), 全面解析cubeMX图形配置工具

        【2】DFSDM外设

        DFSDM(Digital Filter for Sigma Delta Modulators)数字滤波模块,配合外设配合Σ-Δ器件的使用。

STM32CubeIDE开发(二), 全面解析cubeMX图形配置工具

2.5 中间件功能相关

        【1】文件系统

STM32CubeIDE开发(二), 全面解析cubeMX图形配置工具

        【2】嵌入式系统(FreeRTOS)

STM32CubeIDE开发(二), 全面解析cubeMX图形配置工具

        【3】触控感应

STM32CubeIDE开发(二), 全面解析cubeMX图形配置工具

        【4】USB(USB设备、USB主机)

STM32CubeIDE开发(二), 全面解析cubeMX图形配置工具

2.6 定时器

        【1】低功耗定时器

STM32CubeIDE开发(二), 全面解析cubeMX图形配置工具

         【2】RTC实时时钟

STM32CubeIDE开发(二), 全面解析cubeMX图形配置工具

         【3】普通定时器

               STM32的普通定时器分为高级定时器、 通用定时器 、基本定时器三种。这三个定时器成上下级的关系,即基本定时器有的功能通用定时器都有,而且还增加了向下、向上/向下计数器、PWM生成、输出比较、输入捕获等功能;而高级定时器又包含了通用定时器的所有功能,另外还增加了死区互补输出、刹车信号。

STM32CubeIDE开发(二), 全面解析cubeMX图形配置工具

 2.7 系统内核相关

        【1】系统

STM32CubeIDE开发(二), 全面解析cubeMX图形配置工具

         【2】系统时钟设置

STM32CubeIDE开发(二), 全面解析cubeMX图形配置工具

         【3】中断功能总述

STM32CubeIDE开发(二), 全面解析cubeMX图形配置工具

        【4】DMA功能总述

STM32CubeIDE开发(二), 全面解析cubeMX图形配置工具

         【5】GPIO引脚配置总述

STM32CubeIDE开发(二), 全面解析cubeMX图形配置工具

        【6】看门狗(独立看门狗(硬)、窗口看门狗(软))

STM32CubeIDE开发(二), 全面解析cubeMX图形配置工具

        【7】User Constants

        各个外设及功能都支持自定常量,其实就是在图形配置设置宏定义,各个外设及功能配置页面定义的User Constants均会在main.h中#define声明。

STM32CubeIDE开发(二), 全面解析cubeMX图形配置工具

 三、时钟树设置

        时钟树综合配置,各个最终频率是否生效取决与前面外设功能开启及配置,最终频率数值则由时钟源+各个选择器、分频器、倍频器加权后计算得到。当使用外部时钟源时,必须先启用它们 在RCC外围设备上可用的引脚视图。

STM32CubeIDE开发(二), 全面解析cubeMX图形配置工具

        当MCU支持时,启用HSE上的时钟安全系统(CSS) 只有当HSE时钟直接或通过PLL间接用作系统时钟源时才能使用该功能。 它可以检测HSE 故障并通知软件,从而允许MCU执行救援操作。 当MCU支持时,在LSE上启用CSS 只有当LSE和LSI被使能并且RTC或LCD时钟源被选择为LSE或LSI之后,该功能才可用。 

四、图形窗口设置

        4.1 软件包

STM32CubeIDE开发(二), 全面解析cubeMX图形配置工具

        4.2 端口视图

        pinout菜单主要就是针对引脚图形配置界面提供的相关快捷功能或显示功能设定。

STM32CubeIDE开发(二), 全面解析cubeMX图形配置工具

        4.3 系统视图

        点击已开启功能将会自动弹出相应的外设或功能配置页面。

STM32CubeIDE开发(二), 全面解析cubeMX图形配置工具

五、工程页面配置

        5.1 工程配置

STM32CubeIDE开发(二), 全面解析cubeMX图形配置工具

        5.2 代码生成页面

STM32CubeIDE开发(二), 全面解析cubeMX图形配置工具

        5.3 工程高级配置页面

STM32CubeIDE开发(二), 全面解析cubeMX图形配置工具

 六、生成代码概述说明

        在C代码生成过程中,STM32CubeMX执行以下操作:
        【1】 如果缺失,则从用户存储库下载相关的STM32Cube固件包。 STM32CubeMX存储库文件夹可在帮助>更新器设置菜单中指定。
        【2】如果选择了中间件,它将从固件包,Drivers / CMSIS和Drivers /STM32L4_HAL_Driver文件夹中的相关文件以及Middleware文件夹中复制。
        【3】它生成对应于用户MCU配置的初始化C代码(.c / .h文件),并将其存储在Inc和Src文
件夹中。 默认情况下,还包含以下文件(具体文件名与芯片型号有关):

  •  – – stm32l4xx_hal_conf.h文件:该文件定义启用的HAL模块,并将一些参数(例如外部高速振荡器频率)设置为预定义的默认值或根据用户配置(时钟树)。
  • – – stm32l4xx_hal_msp.c(MSP = MCU支持包):该文件定义了所有初始化函数,根据用户配置(引脚分配,时钟使能,DMA使用和中断)配置外设实例。
  • – – stm32l4xx_it.h/.c文件:中断处理程序
  •  – – system_stm32l4xx.c文件:实现SystemInit、SystemCoreClock、SystemCoreClockUpdate相关函数及一些全局变量。
  • – – sysmem.c文件:系统内存调用函数实现
  •  – – syscalls.c文件:最简系统实现,使用标准C库函数
  • –– main.c负责:
  1.  通过调用重置所有外设的HAL_init()函数将MCU重置为已知状态,初始化闪存接口和SysTick。
  2.  配置和初始化系统时钟。
  3.  配置和初始化未被外设使用的GPIO。
  4.  为每个配置的外设定义和调用一个外设初始化函数,该函数定义一个句柄结构,该句柄结构将被传递到相应的外设HAL初始化函数,然后调用外设的HAL MSP初始化函数。 请注意,当使用LwIP(分别为USB)中间件时,底层以太网(分别为USB外设)的初始化C代码将从main.c移至LwIP(分别为USB)初始化C代码本身。
  •  – – main.h文件:该文件包含与Pinout选项卡中设置的引脚标签相对应的定义语句,以及从Configuration选项卡添加的用户项目常量。

        【4】最后,它会生成一个Projects文件夹,其中包含与用户项目设置相匹配的工具链特定文
件。 双击IDE特定的项目文件启动IDE并加载准备编辑,构建和调试的项目。文章来源地址https://www.toymoban.com/news/detail-411352.html

到了这里,关于STM32CubeIDE开发(二), 全面解析cubeMX图形配置工具的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • STM32开发(18)----CubeMX配置RTC

    本章介绍使用STM32CubeMX对RTC进行配置的方法,RTC的原理、概念和特点,配置各个步骤的功能,并通过实验方式验证。 RTC (Real Time Clock),实质是一个 掉电后还继续运行的定时器。从定时器的角度来说,相对于通用定时器 TIM 外设,它十分简单,只有很纯粹的计时和触发中断的

    2023年04月27日
    浏览(34)
  • STM32开发(14)----CubeMX配置ADC

    本章介绍使用STM32CubeMX对ADC进行配置的方法,ADC的原理、概念和特点,配置各个步骤的功能,并通过单通道,多通道,DMA三种方式实现采集。 ADC 即模拟数字转换器,英文详称 Analog-to-digital converter,可以将外部的模拟信号转换为数字信号。 以下是datasheet当中的内容,我就做个

    2023年04月13日
    浏览(38)
  • STM32开发(6)----CubeMX配置PWM

    本章介绍使用STM32CubeMX对PWM进行配置的方法,PWM的基本原理,并通过示波器来测试实现结果,如果有LED灯也可以,PWM控制LED灯的亮度。 PWM(Pulse Width Modulation)脉冲宽度调制,是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术。它是把每一脉冲宽度均相等

    2024年02月03日
    浏览(41)
  • STM32开发(9)----CubeMX配置外部中断

    本章介绍使用STM32CubeMX对引脚的外部中断进行配置,介绍了中断架构体系,外部中断/事件控制器(EXTI),嵌套向量中断控制器(NIVC),并通过实验展示配置后的效果。 中断是指计算机运行过程中,出现某些意外情况需主机干预时,机器能自动停止正在运行的程序并转入处理

    2024年02月15日
    浏览(39)
  • STM32开发(16)----CubeMX配置DMA

    本章介绍使用STM32CubeMX对DMA进行配置的方法,DMA的原理、概念和特点,配置各个步骤的功能,并通过串口DMA传输实验方式验证。 DMA(Direct Memory Access),即直接存储器访问。 DMA 传输方式无需 CPU 直接控制传输,也没有中断处理方式那样保留现场和恢复现场的过程,通过硬件为

    2024年02月15日
    浏览(39)
  • STM32开发(10)----CubeMX配置基本定时器

    本章介绍使用STM32CubeMX对基本定时器进行配置的方法,STM32F103高性能系列设备包括基本定时器、高级控制定时器、通用定时器、看门狗定时器和 SysTick 定时器,但是STM32F103C6t6上资源比较有限(高级定时器TIM1,通用定时器TIM2和TIM3),没有真正的基本定时器,其实通用定时器和

    2024年02月16日
    浏览(62)
  • 尝试使用CubeMX做stm32开发之十:ADC配置

            参考《STM32中文参考手册_V10》,研究CubeMX中有关ADC的配置。 ADC1 Mode and Configuration:         IN0~IN9:10路12位ADC采样通道,外部模拟量信号输入         Temperature Sensor Channel:MCU内置温度传感器采样通道,用来测量器件周围的温度。在MCU内部与ADC1_IN16通道相连

    2024年02月05日
    浏览(33)
  • STM32CubeMX配置STM32G031多通道ADC采集(HAL库开发)

    时钟配置HSI主频配置64M  勾选打开8个通道的ADC  使能连续转换模式  配置好串口,选择异步模式 配置好需要的开发环境并获取代码  修改main.c 串口重定向  串口重定向一定要勾选Use Micro LIB  获取ADC通道值 主函数   串口输出

    2024年02月15日
    浏览(44)
  • STM32CubeMX配置STM32G031多通道ADC + DMA采集(HAL库开发)

     时钟配置HSI主频配置64M  勾选打开8个通道的ADC  使能连续转换模式  添加DMA  DMA模式选择循环模式  使能DMA连续请求 采样时间配置160.5 转换次数为8  配置好8次转换的顺序  配置好串口,选择异步模式 配置好需要的开发环境并获取代码  修改main.c 串口重定向  串口重定向

    2024年02月08日
    浏览(47)
  • 尝试使用CubeMX做stm32开发之十三:Clock Configuration(时钟树配置)

            参考《STM32中文参考手册_V10》,研究CubeMX中有关时钟树配置。 三种不同的时钟源可被用于驱动系统时钟(SYSCLK): HSI振荡器时钟 HSE振荡器时钟 PLL时钟 时钟源选择对应时钟配置寄存器(RCC_CFGR)中的SW[1:0]位。 三种不同的时钟源可被用于驱动系统时钟​​​​ M

    2024年02月16日
    浏览(41)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包