STM32CubeProgrammer和STM32CubeMonitor的新功能

描述

行而不辍,履践致远。为了给嵌入式工程师带来全新的STM32开发调试体验,大幅提升开发感受,ST在生态建设和开发工具创新上的努力从未间断。

STM32Cube系列大家族,相信大家用得很顺手。该系列软件开发工具大家族,提供了从MCU配置、代码生成、编译以及调试,到程序烧录和监测整个软件开发流程需要的全部功能。它们各司其职,也有功能交叠,大家合力,共同给STM32开发者搭建了一个完整的开发平台。

ST 近期推出新版本的 STM32CubeProgrammer、STM32CubeMonitor、STM32CubeMonitor-RF 和 STM32CubeMonitor-UCPD。许多 STM32 开发人员通过使用它们更快地将产品推向市场。所有嵌入式系统工程师都需要面对这样的挑战,为选用的微控制器或微处理器寻找功能全面的开发平台。一个设备可能有很多特性需求,设计人员如何有效地实现这些性能非常关键。因此,泛生态软件工具在推动基于 STM32 的嵌入式系统开发至关重要。让我们一起探索STM32CubeProgrammer和STM32CubeMonitor的新功能。 

STM32CubeProgrammer关键词

统一的体验

STM32CubeProgrammer 旨在统一用户体验。ST 将 ST-LINK Utility、DFU 等实用程序的所有功能引入 STM32CubeProgrammer,使其成为嵌入式系统开发人员的一站式解决方案。ST还将它设计为适用于所有主要操作系统,甚至集成 OpenJDK8-Liberica, 以方便安装。在体验 STM32CubeProgrammer 之前,用户无需自己安装 Java ,也不用为兼容性问题烦恼。该实用程序有两个关键组件:图形用户界面和命令行界面。用户既可以选择直观的图形用户界面进行工作,也可以选择使用命令行工具来编写脚本文件。

STM32 Flasher 和调试器

STM32CubeProgrammer 的核心是帮助调试和烧写 STM32 微控制器。因此,它也包括优化这两个过程的功能。例如,2.6 版引入了导出整个寄存器内容和动态编辑任何寄存器的能力。以往,更改寄存器的值意味着更改源代码、重新编译并刷新固件。如今,测试新参数或确定某个值是否导致错误要简单得多。同样,工程师现在可以使用 STM32CubeProgrammer 一次烧写所有外部存储器。但在以前,烧写外部嵌入式存储和 SD 卡需要开发人员单独启动每个进程。而STM32CubeProgrammer 可以一步完成。

开发人员面临的另一个挑战是解析通过 STM32CubeProgrammer 传递的大量信息。刷过固件的人都知道跟踪所有日志有多么困难。因此,我们带来了自定义跟踪功能,允许开发人员为不同的日志信息设置不同的颜色。它确保开发人员可以快速将特定输出与日志的其余部分区分开来,从而使调试变得更加直接和直观。此外,它可以帮助开发人员使用与 STM32CubeIDE 一致的配色方案,STM32CubeIDE 是我们独特的生态系统的另一个成员,旨在为开发者提供支持。

STM32 上的安全门户

STM32CubeProgrammer 是 STM32Cube 生态系统中安全解决方案的核心部分。该实用程序附带 Trusted Package Creator,它使开发人员能够将 OEM 密钥上传到硬件安全模块并使用相同的密钥加密他们的固件。然后,OEM 使用 STM32CubeProgrammer 将固件安全地安装到支持SFI的 STM32 微控制器上。开发人员甚至可以使用 I2C 和 SPI 接口,这为他们提供了更大的灵活性。此外,STM32L5 和 STM32U5 还支持外部安全固件安装 (SFIx),使 OEM 可以在微控制器外部的内存模块上刷新加密的二进制文件。

Sigfox 规定

使用 STM32WL 微控制器时,开发人员可以使用 STM32CubeProgrammer 提取嵌入到 MCU 中的 Sigfox 证书。首先,开发人员将这个 136 字节的字符串复制到他们的剪贴板或将其保存在二进制文件中。其次,他们访问 my.st.com/sfxp,在那里粘贴证书并立即以 ZIP 文件的形式下载 Sigfox 凭据。第三,他们通过 STM32CubeProgrammer 将下载包的内容加载到 MCU,并使用 AT 命令获取 MCU 的 Sigfox ID 和 PAC。最后,开发者去 https://buy.sigfox.com/activate/ 进行注册。激活后两年有效,开发者可以在一年内每天免费发送 140 条消息。

调试器

▲ STM32CubeProgrammer

STM32CubeProgrammer 的新功能

双重认证

最新版本 STM32CubeProgrammer 2.9 现在支持双重身份验证系统,通过 JTAG 或引导加载程序为 STM32WB 上的蓝牙协议栈配置OEM的密钥。简而言之,该功能使制造商能够保护其蓝牙协议栈防止最终用户随意更新协议栈。事实上,在大多数情况下,如果开发人员知道自己在做什么,他们就可以使用 ST 的安全固件更机制升级新蓝牙协议栈。但是,制造商可能会希望使用特定版本的协议栈配置,希望对其进行保护。因此,双重身份验证系统会阻止最终用户随意使用更新机制。ST 已发布了AN5185 应用笔记以提供更多详细信息。

脚本模式

新软件对其命令行界面 (CLI) 进行了更新,以支持创建脚本。由于脚本管理器是应用程序的一部分,因此它不依赖于操作系统或其外壳环境。因此,脚本是高度可共享的。另一个优点是脚本管理器可以保持与目标的连接。使用传统的批处理文件时,STM32CubeProgrammer CLI 需要在每一步都重新连接。另一方面,新的脚本管理器可以在整个会话期间保持连接。它还可以处理局部变量,甚至支持对这些变量的算术或逻辑运算。因此,开发人员可以创建强大的宏更好地实现复杂流程的自动化。

PKCS#11 支持

现在,STM32CubeProgrammer 2.9在为 STM32MP1 加密固件时可支持 PKCS#11。公钥加密标准 (PKCS) 11,也称为 Cryptoki,是一种在低级别管理加密过程的标准。PCKS#11标准化的API 方便嵌入式系统开发人员使用相关机制,因而越来越受流行。在 STM32MP1 上,PKCS#11 允许工程师分离私钥的存储和安全秘密配置 (SSP) 的加密过程。

SSP 相当于 MPU 的安全固件安装SFI。开发人员在将代码发送给 OEM 之前,可以通过STM32CubeProgrammer 使用公私钥系统对其固件进行加密。第三方无法读取OEM的软件代码。在生产过程中,OEM 将使用硬件安全模块 (HSM),将解密的固件加载到 MPU 内部,HSM中包含固件加密密钥,这个密钥无法保护在HSM中无法被读出。到目前为止,加密 MPU 代码的开发人员可以访问私钥。但一些组织必须限制对此类关键信息的访问。解决这个问题的新方法是使用新版 STM32CubeProgrammer 和 PKCS#11,即使在开发人员的加密过程中,私钥仍然可隐藏在 HSM 中。

审核编辑 :李倩

 

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

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分