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

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

3天内不再提示

STM32CubeIDE解决产品开发和项目管理固有的挑战

星星科技指导员 来源:意法半导体 作者:意法半导体 2022-05-10 15:36 次阅读

ST新版本的STM32 Finder移动应用程序和STM32CubeIDE的新视频功能。因此,新版本为使用 STM32 微控制器或使用 STM32 微控制器的每个人创造了更全面的体验。STM32CubeMX还将继续获得改进,以优化开发人员的工作流程。由于几乎所有依赖 STM32 的项目都使用这些工具中的一种或多种,​​因此确保所有人都可以使用它们来解决产品开发和项目管理固有的挑战至关重要,无论他们的角色和经验如何。今天的更新还提供了即将发生的事情的味道。

STM32CubeIDE

STM32CubeIDE是什么?

STM32CubeIDE是 ST 的第一个集成开发环境,可作为STM32 微控制器开发人员的参考。许多人使用来自第三方供应商的工具链,我们将继续与 IAR、Keil 等合作,以确保他们为用户提供卓越的体验。STM32CubeIDE 是一项极具象征意义的举措,因为它为爱好者和专业人士提供了一个免费且功能丰富的独特环境,这要归功于支持更高效工作流程的 STM32CubeMX 等工具的集成。STM32CubeIDE 可用于 Windows、macOS 和 Linux,具有特定于 Debian/Ubuntu、Fedora 的版本,以及用于其他发行版的更通用的安装程序。

STM32CubeIDE 的显着特点之一是它集成了 STM32CubeMX。开发人员可以在配置管脚和时钟树后选择他们的开发板或微控制器并启动项目。因此,开发人员可以更轻松地从编写代码切换到配置实用程序。如果需求发生变化或团队意识到他们必须做出调整,更新项目就变得更加直接。STM32IDE 也完全兼容 Eclipse。使用插件检查其源代码、查找错误或使用任务管理系统管理团队的开发人员可以使用熟悉的工具,从而降低学习曲线。

STM32CubeIDE 有什么新功能?

用户首先会注意到新的主屏幕。开发人员通常很难知道有什么新功能。有如此多的进步和更新,以至于很难跟踪所有内容。通过在主页上展示新的功能和软件,用户可以更快地获得更多信息。例如,当前的主屏幕宣传如何访问 Azure RTOS TraceX 导出机制。开发人员可以导出跟踪并在 TraceX 中对其进行分析,以加快调试操作。ST 还展示了其 MPU Bootloader 部署工具。该工具将确保用户可以在STM32MP1 MPU上更快地加载和测试他们的 Linux 实现。

STM32CubeIDE 的另一个重要新增功能是它的视频角。主屏幕上一个名为“访问视频”的新选项卡提供了大量的教程视频。目前,大部分内容都集中在集成开发环境和 STM32CubeMX 上,但更多内容正在开发中。一旦用户点击缩略图,链接就会打开一个指向 YouTube 的浏览器窗口。因此,开发人员围绕蓝牙、GNSS、MEMSNFC 等启动应用程序时,可以先查看相关视频。因此,这些视频可作为 STM32CubeIDE 中已有的大量用户手册的补充。

STM32CubeIDE 从何而来?

在 STM32CubeIDE 之前,开发人员使用的是 System Workbench 的免费版本SW4STM32 。它在爱好者和校园中很受欢迎,例如密歇根大学迪尔伯恩分校,它们使用工具链编写了他们的无人驾驶汽车应用程序。STM32CubeIDE 现在接管了我们的微控制器和STM32 MPU,同时还集成了 STM32CubeMX。ST暂时继续支持SW4STM32,即使它不会收到任何额外的更新。我们了解到,一些开发团队仍然希望使用旧版工具。但是,STM32CubeIDE 提供了从 SW4STM32 轻松移植项目的能力,以促进向新 IDE 的过渡。

最终导致 STM32CubeIDE 到来的一个事件是 ST 在 2017 年收购了 Atollic。这家软件公司以 TrueSTUDIO 闻名,它帮助许多开发人员了解其应用程序的内部工作原理。例如,跟踪和分析工具允许实时跟踪数据、事件、内存历史记录和可视化变量,这对于在不冻结代码执行的情况下掌握代码行为非常宝贵。收购后,STM32CubeIDE 获得了所有这些功能以及更多功能。STM32CubeIDE 还提供了从 TrueSTUDIO 轻松移植项目的能力,以帮助用户从一个迁移到另一个。

STM32CubeMX?

STM32CubeMX 是什么?

STM32CubeMX 是一个图形工具,可帮助开发人员生成初始化系统的代码。用户可以获得一个界面来配置微控制器的引脚排列和解决冲突,以及设置硬件外围设备和中间件。他们还可以配置他们的时钟树,并从自动执行特定计算的向导中受益。同样,另一个实用程序在具有 STM32MP1 MPU 的系统上设置和调整 DDR。该工具还有助于选择正确的 MCU 或 MPU 并下载其软件包。因此,对于希望创建应用程序的开发人员来说,这通常是第一步。该工具可在 STM32CubeIDE 中获得,也可作为独立下载获得。

STM32CubeMX 还协助开发人员完成其他工作。例如,查找文档可能是摩擦的根源。ST 以其广泛的文档而闻名,合作伙伴经常告诉我们这是他们选择我们设备的原因之一。因此,我们决定在 STM32CubeMX 独立版本中提供教程视频,以帮助开发人员搜索信息。因此,用户可以更直观地了解我们的工具和产品。例如,我们提供有关如何配置时钟树、引脚或不同软件功能的视频。不熟悉我们工具的程序员可以更快地启动他们的应用程序,这是降低进入门槛和减少摩擦的另一种方式。

对 STM32CubeMX 有何期待?

开发人员经常使用独立版本的 STM32CubeMX 来选择和初始化 STM32 微控制器。他们有一个来自 Keil 或 IAR 的 IDE,仅举几例。因此,我们的目标之一是改进 STM32CubeMX 中可用的搜索功能。我们还将继续帮助开发人员从该实用程序中找到额外的 X-CUBE 和 I-CUBE 包(稍后会详细介绍)。因此,开发人员依靠 STM32CubeMX 来获取他们需要的所有中间件、头文件和其他代码,而无需离开 STM32CubeMX。此外,我们不断添加示例项目来快速启动工作流程。因此,用户可以获得板或设备的完整配置,以更快地开始编写代码。

STM32 查找器

STM32 Finder 是什么?

并非每个使用 STM32 的人都必须编写代码或设计 PCB。例如,经理可能会计划一个项目,或者决策者可能想知道组件的规格。在这种情况下,必须单独下载 STM32CubeIDE 或 STM32CubeMX 会很麻烦。因此,我们创建了 STM32 Finder,这是 ST 用于智能手机和平板电脑手机,用于查找 STM32 微控制器。该工具包括广泛的搜索功能,可快速查找设备或相关开发板。用户还可以下载各种文档或快速访问社交媒体渠道和社区论坛

STM32 Finder 有什么新功能?

为了改善用户体验,ST 加快了 STM32 Finder 的速度,并为高级用户增加了功能。前者来自对移动版本的大修。通过优化其代码,我们显着增加了响应时间。我们还采用了响应式设计,允许用户一次比较多个设备,而不管显示尺寸如何。ST 还更改了应用程序的更新系统,仅将更改下载到数据库中,而不是全新的。因此,更新更频繁,安装时间更短,以确保搜索是最新的。最新版本还包括指向各种在线渠道的新链接,用于寻找合作伙伴、提出问题或了解新功能。

ST 还重新设计了搜索功能,使其更加可定制。例如,用户现在可以区分包。结果,他们可以看到各种模型如何影响热性能或价格等。该应用程序还可以对规范的类别进行分组。例如,用户可以通过将 UART、LPUART 和 USART 组合在一起来搜索设备。因此,查找设备的外围设备总数可以帮助回答特定问题,而无需深入研究数据表。开发人员还可以使用新的分组系统来搜索具有 SPI 和 USART 的设备,因为后者也用作 SPI。

STM32Cube生态系统

STM32CubeEcosystem是什么?

五年前推出的STM32Cube品牌指定了我们的解决方案,以帮助开发人员设计产品和应用程序。软件生态系统依赖于两大支柱:嵌入式软件包和软件工具。STM32Cube 包有两种类型:MCU 包和扩展包。MCU 包(例如STM32CubeF4)包含 Nucleo 和 Discovery 板的驱动程序、低级 API 以及演示和示例代码。正如我们最近在X-CUBE-AI中看到的那样,STM32Cube 扩展包通过提供额外的中间件或驱动程序来补充 MCU 包,这是业界第一个能够将神经网络转换为 STM32 MCU 优化代码的包。

用于 PC的STM32Cube 软件工具有助于应用程序的设计。本博文重点介绍 STM32CubeIDE、STM32CubeMX 和 STM32 Finder,因为它们通常是产品开发的核心。经常听到合作伙伴说他们依赖其中一个或多个来完成他们的项目。我们的许多教程都使用它们来使我们的技术更易于访问。但是,还有许多其他 STM32Cube 软件工具。例如,STM32CubeMonUCPD是一款监控工具,可与我们所有的USB-C PD 接口和库配合使用,以方便测试和实现操作。而STM32CubeProgrammer是一种编程工具,可以让STM32 MCU 更易于访问和更高效。

STM32Cube 生态系统中的工具如何协同工作?

随着时间的推移,STM32CubeIDE 将集成其他 STM32Cube 软件工具。我们将在它们可用时分享更多详细信息,但与此同时,开发人员确信该工具链将成为满足他们所有 STM32Cube 需求的一站式商店。与 STM32CubeMX 一样,我们将继续为使用其他工具链的开发人员发布我们的 STM32Cube 工具的独立版本,确保任何人都可以轻松地从我们的 STM32Cube 生态系统中受益,无论工程师是在寻找软件包还是软件实用程序。我们的工程师和研究人员也将使用 STM32CubeIDE 进一步改进它。

STM32Cube 生态系统中的软件包如何协同工作?

到目前为止,想要使用 STM32Cube 扩展包的开发人员必须找到合适的,下载并解包。这意味着将源文件添加到 IDE 甚至探索其源代码。此外,如果应用程序使用特定引脚或 IP,将其从一个 MCU 移植到下一个 MCU 并不总是那么简单。可能还必须安装驱动程序、库或中间件。到目前为止,ST 提供文档和教程来帮助开发人员。当只有几个扩展包时,事情就简单多了。现在 STM32Cube 生态系统这么大,摩擦会显着增加。

该解决方案来自STM32CubeMX内部STM32Cube扩展包的集成。简而言之,开发人员可以直接从 MCU 配置工具中选择 X-CUBE 包。它要求我们更新现有的包,并提供兼容的解决方案列表。我们还将继续确保 ST 即将推出的大多数 STM32 扩展包都支持此功能。通过将这些软件包集成到 STM32CubeMX 中,用户可以选择软件包、生成文件并开始编码。因此,它降低了对我们的生态系统不太熟悉的开发人员的进入门槛。

ST授权合作伙伴如何将他们的软件包引入STM32Cube生态系统?

开发人员可能遇到的另一个问题与共享他们的定制解决方案的能力有关。对于有特定需求的公司来说,创建其扩展包是很常见的。合作伙伴可能还想为社区提供解决方案。例如,我们在博客上谈到了Segger 的embOS和Rowebots 的Unison RTOS,但还有很多其他的。这些解决方案是在 I-CUBE 倡议下发现的,可帮助工程师添加功能并试验各种技术。但是,在公司或社区内共享自定义包并不总是显而易见或容易的。因此,我们希望帮助合作伙伴更轻松地创建高度可共享的包。

为了解决这个特殊的摩擦点,ST 正在向 I-CUBE 封装开放 STM32CubeMX。简而言之,我们为 STM32 扩展 (X-CUBE) 带来的相同集成现在可供所有开发人员使用。现在任何人都可以使用 STM32CubePackCreator 创建一个包来创建一个可以出现在 STM32CubeMX 中的解决方案。但是,我们将在 MCU 配置器工具中管理默认可见的内容。我们提供文档来指导开发人员在此过程中确保 STM32Cube 生态系统内的一致性和兼容性。我们还提供 STM32PackCreator。该实用程序位于 STM32CubeMX 中,有助于从头开始创建软件包。

扩展软件遵守 CMSIS-Pack(Cortex 微控制器软件接口标准)。许多还可以在 STM32CubeMX 的 GUI 中进行配置。要遵守 CMSIS-Pack 规范,开发人员必须包含 PDSC(包描述)文件。这样的文档使用 XML 并且需要关于所有包内容的精确、具体和详细的​​信息。同样,为了使 X-CUBE 或 I-CUBE 在 STM32CubeMX 中可配置,STM32PackCreator 使用特定的 UI。它打开了一个系统的大门,该系统将丰富的选项置于用户的指尖。开发人员不再需要通过编写代码手动配置所有内容。简而言之,STM32PackCreator 通过自动生成 PDSC 文件来消除摩擦。它还确保软件组件可在 STM32CubeMX 中进行配置。

审核编辑:郭婷

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

    关注

    48

    文章

    7547

    浏览量

    151333
  • mcu
    mcu
    +关注

    关注

    146

    文章

    17135

    浏览量

    351031
  • 嵌入式
    +关注

    关注

    5082

    文章

    19111

    浏览量

    304872
收藏 人收藏

    评论

    相关推荐

    stm32cubeIDE烧录报错Error是怎么回事?

    请问各位前辈 , stm32cubeIDE 烧录报错Error!
    发表于 07-03 06:42

    请问STM32CubeIDE如何加载外部bin文件?

    我有一个外部的bin文件,想要编译、链接到stm32工程里,如何用stm32cubeide来实现呢? 我知道在keil中可以添加一个.s文件可以实现,但是keil中用汇编指令INCBIN,在stm32cubeide中如何实现呢?
    发表于 05-30 06:41

    STM32CubeIDE里面为什么找不到STM32C0的page,这个怎么回事啊?

    STM32CubeIDE里面为什么找不到STM32C0的page,这个怎么回事啊
    发表于 05-21 07:16

    STM32CUBEIDE出现error downloading following files的原因?

    STM32CUBEIDE出现error downloading following files
    发表于 05-20 07:05

    stm32cubeIDE代码运行时间如何查看?

    stm32cubeIDE 代码运行时间,如何查看?就如 keil 调试时候那样,可以测试代码的运行时间。但是在stm32cubeIDE 中,一直没有找到这个功能,不知道哪位高人可以提示下在哪里查看的?
    发表于 04-16 08:10

    STM32cubeide如何能打开以前cubemx工程文件(*.ioc文件)?

    请教: STM32cubeideSTM32CubeMX+编译器的整合版本 为了缩减开发时间,想直接打开原来cubemx的项目。 请教:STM32c
    发表于 04-16 08:03

    STM32CubeIDE有没有软件仿真?如果有的话,如何设置?

    STM32CubeIDE有没有软件仿真?如果有的话,如何设置?
    发表于 04-16 06:00

    stm32CubeIDE如何能生成Lib?

    请问stm32CubeIDE如何能生成 Lib?
    发表于 04-12 07:57

    请问如何把keil工程导入Stm32CubeIDE ?

    如何把keil工程导入Stm32CubeIDE ?
    发表于 04-09 08:30

    STM32CUBEIDE软件生成工程怎么使用CCRAM型号?

    求助STM32CUBEIDE软件生成工程怎么使用CCRAM 型号:STM32G474VE
    发表于 04-08 08:20

    STM32CubeMX生成stm32cubeide工程报错的原因?怎么解决?

    使用STM32CubeMX,建立了STM32F103VC的工程文件,能够生成IAR工程,正常使用没有问题。由于IAR调试时老是闪退,想换STM32CubeIDE用用,安装了最新的1.42版本。但就是
    发表于 04-07 07:14

    请问STM32CubeIDE如何查看代码总行数?

    近期填写资料,需要写当前项目源代码总行数,使用的STM32CubeIDE开发的,想请教一下,这个IDE怎么看代码的总行数?
    发表于 03-28 07:07

    STM32CUBEIDE无法直接下载package包怎么解决?

    STM32CUBEIDE无法直接下载package包
    发表于 03-11 07:38

    如何将Kile 5中项目移动到stm32cubeide中?

    如何将Kile 5中项目移动到stm32cubeide中,菜菜,捞捞
    发表于 03-08 08:01

    STM32CubeIDE找不到elf

    STM32CubeIDE是STMicroelectronics公司推出的一款集成开发环境(IDE),用于开发STM32系列微控制器的应用程序。它基于Eclipse
    的头像 发表于 01-02 16:32 1797次阅读