STM32U5

STM32U5 是ST在2021年推出的新一代超低功耗产品,不仅在工艺(40nm制程),性能(主频160MHz),低功耗(超低功耗模式低至:110nA,动态功耗低至:19μA/MHz )等多个方面都有显著提升,在信息安全方面也增加很多新特性。

STM32U5目前已经推出STM32U575、 STM32U585两个系列,这两者区别之一是 STM32U585芯片内置了AES,SAES和PKA硬件加解密引擎, STM32U575只有软件方式实现的加解密算法。

STM32U5的硬件加解密引擎相对于纯软件实现有多方面的优势,比如:硬件SAES、PKA模块具备侧信道攻击防御能力,有更高的安全性,更高的性能,更快的运算速度,计算过程中不需要CPU参与,CPU可以处理其他更具有实时性要求的任务,同时在存储空间占用和功耗上也更有优势。

我们将从性能、功耗和存储空间占用几方面 ,将STM32U5硬件加解密引擎和软件实现算法做一个对比。

通过EEMBC SecureMarkTLS评测跑分,对比软硬件算法实现

我们使用 EEMBC SecureMarkTLS 对U575(纯软件)和U585(带硬件加速引擎)分别进行性能和能耗的对比。

EEMBC SecureMark是一个公认标准化的、用于衡量加解密操作效率的基准测试套件。在SecureMark中,EEMBC计划支持对不同应用领域的各种安全配置进行测试和分析。其中第一个授权可用的是SecureMark-TLS,它专注于物联网(IoT)边缘节点的传输层安全(TLS)。

SecureMark-TLS基准配置文件对用于安全互联网通信的传输层安全(TLS)协议所需的加解密操作进行建模。TLS协议提供了交换消息的机密性和完整性,并且可以对通信双方进行身份验证。SecureMark-TLS测量物理设备(可以是开发板或最终产品) 在执行一组指定的加解密操作时的性能和功耗。功耗测量被换算成一个最终的单一分数,该分数代表物联网边缘节点设备的TLS操作。想了解 SecureMark-TLS 测试套件的更多信息 ,请访问https://www.eembc.org/securemark/

✦ EEMBC SecureMarkTLS跑分对比

点击链接访问https://www.eembc.org/securemark/scores.ph ,可以看到 ST发布的使用 EEMBC SecureMarkTLS测试套件的测试报告。

选择STM32U575 RevB Core MHz:160 和STM32U585 RevB Core MHz:160 (我们选择的是最大主频 160MHz),可以看到测试的硬件环境如下图所示:

“探秘STM32U5安全特性|硬件加解密引擎与软件算法对比"

测试的软件和Crypto信息如下:

“探秘STM32U5安全特性|硬件加解密引擎与软件算法对比"

请注意蓝框中标出测试的算法库和版本:Software Library(ies) and Version: mbedTLS 2.4.2。

mbedTLS 现已被arm公司收购并由arm技术团队进行维护更新,是对TLS和SSL协议实现的算法库。mbedTLS的目标是:易于理解,使用,集成和扩展。它主要是面向小型嵌入式设备,代码紧凑,而且执行效率高,可以说是行业内最小巧的SSL加密算法库。并且mbedTLS是完全OpenSource的,支持Apache 2.0 license 或者GPL 2.0 license双重许可,可以自由应用于商业项目中。

在 U575 上,我们直接运行的是开源的mbedTLS 2.4.2,算法部分是开源的mbedTLS 2.4.2里面实现的软件算法; 在U585上,同样运行的是开源的mbedTLS 2.4.2,但算法部分使用U585自带的硬件加解密引擎。

在下图的测试结果中,SecureMark-TLS 是对整体功耗的跑分总评,SecureMark-TLS Performance 是对整体性能的跑分总评。后面我们又分别列出了不同算法的性能和功耗的分数。

Benchmark跑分总评

“探秘STM32U5安全特性|硬件加解密引擎与软件算法对比"

“探秘STM32U5安全特性|硬件加解密引擎与软件算法对比"

说明:

  • 测试中硬件加速的部分采用mbedtls ALT function方式,由于数据存储方式,API等原因,并未使U585 HW crypto性能得到最大化利用;
  • 实际应用程序如果直接调用Driver,则可有更高的性能和能耗表现。

Mbedtls软件作为运行的代码进行benchmark,对比U575纯软件和U585带硬件加速的性能和能耗。

Benchmark子项:AES 性能 + 能耗

“探秘STM32U5安全特性|硬件加解密引擎与软件算法对比"

Benchmark子项:SHA 性能 + 能耗

“探秘STM32U5安全特性|硬件加解密引擎与软件算法对比"

Benchmark子项:ECC 性能 + 能耗

“探秘STM32U5安全特性|硬件加解密引擎与软件算法对比"

硬件加解密引擎(HAL驱动)与Cryptolib软件算法对比

软件算法部分采用ST 的 X-CUBE-CRYPTOLIB作为对比的对象。X-CUBE-CRYPTOLIB是基于STM32的软件算法库,支持STM32全系列产品,提供多种主流算法的实现,针对不同的内核进行了算法优化,支持多种使用的配置模式(高性能、小代码量等选择)。硬件引擎的使用则通过直接调用HAL驱动来完成。

我们通过以下几个常用的典型算法进行对比,比较的内容为软硬件实现的性能和存储空间占用情况:

  • AES CBC加密和解密
  • RSA加密和解密
  • ECDSA签名和验签

✦ 性能对比

AES CBC 数据流加解密:每秒数据处理能力 (以8KB数据做测试, 每次处理大小分别为128, 512, 1024, 2048字节的结果)

“探秘STM32U5安全特性|硬件加解密引擎与软件算法对比"

RSA加解密

“探秘STM32U5安全特性|硬件加解密引擎与软件算法对比"

ECC签名验签

“探秘STM32U5安全特性|硬件加解密引擎与软件算法对比"

✦ 存储空间占用情况

存储空间的占用和选择的编译器、编译器版本、编译选项和配置等很多因素有关,下面的数据仅供参考。

X-CUBE-CRYPTOLIB 的更多详细数据,请参考https://wiki.stmicroelectronics.cn/stm32mcu/wiki/Security:STM32U5_Series:_Cryptographic_Library_Performance

Memory Footprint HAL + HW vs. Cryptolib SW

“探秘STM32U5安全特性|硬件加解密引擎与软件算法对比"

“探秘STM32U5安全特性|硬件加解密引擎与软件算法对比"

“探秘STM32U5安全特性|硬件加解密引擎与软件算法对比"

硬件加解密引擎优势总结

综上所述,硬件加解密引擎具有更高安全性、更高性能、更低功耗和更少的系统资源需求。

✦ 更高安全性

  • SAES和PKA引擎具备攻击防御能力(侧信道攻击,错误注入攻击)
  • HUK+SAES提供基于硬件的安全存储功能,防克隆,防软件逻辑攻击

✦ 更高性能

  • 相较于软件实现 x5 倍的数据AES加解密处理能力
  • 相比软件实现快5~10倍的签名验签操作
  • 十倍的Hash运算

✦ 更低功耗

完成相同运算所消耗的能量只有软件运算的几分之一

✦ 更少系统资源需求

  • 运算过程中CPU可以处理器其他高优先级事物
  • 运算无需占用额外Flash与RAM空间

来源:STM32
免责声明:本文为转载文章,转载此文目的在于传递更多信息,版权归原作者所有。本文所用视频、图片、文字如涉及作品版权问题,请联系小编进行处理(联系邮箱:cathy@eetrend.com)。

围观 103

1、前言

LPBAM 全称为 low-power background autonomous mode,系统时钟可以在进入低功耗模式之后打开或关闭,可以触发 DMA 请求,可以在 stop0,stop1,stop2 模式下使用。在 stop 模式下除了 LSI 和 LSE 以外其他时钟都会关闭,但 MSIK 和 HSI16 可以被临时使能,以支持 DMA 传输,这就是 LPBAM 的特点。

另外,LPBAM 需要 DMA 来进行配合,U5 系列的 DMA 有 Linked List 功能,也就是说DMA 可以完成链表设计好的任务。在初始化的时候,以链表模式设置好 DMA 相关寄存器,可以通过链表模式完成内存到内存,或者内存和外设寄存器之间的数据传输。

由于 LBAM 的特性,在进行低功耗应用设计时,可以使用 LPBAM 大大减少功耗,提升产品的低功耗性能。比如,可以在 stop2 模式下进行串口收发,ADC 采集任务等等。

本文将介绍如何使用 CubeMX,配置 DMA Linked List,在低功耗模式下,使用LPBAM 进行 GPIO Toggle。

2. 准备工作

2.1 环境准备

测试硬件:B-U585I-IOT02A 开发板

测试开发环境:IAR 8.50.1

CubeMX 版本:6.30.0

“STM32U5

2.2 设计思路

如图所示,我们先在内存中定义好需要写入 GPIO 寄存器的数值,其中 Set GPIO 就将数据写入 BSRR 寄存器,Reset GPIO 就将数据写入 BRR 寄存器。LPDMA 设置两个节点,一个去 Set GPIO,另一个 Reset GPIO,然后由软件触发,由 LPTIM1 CH1 的上升沿触发 LPDMA 第一个节点进行动作,LPTIM1 CH1 的下降沿触发 LPDMA 第二个节点进行动作。

LPTIM1 设置使用 LSI 32KHz 为时钟,频率为 32KHz,占空比为 50%的 PWM 波输出,也就是说 GPIO 会以 500ms 的频率进行 toggle。

“STM32U5

3.Step By Step

“STM32U5

“STM32U5

“STM32U5

“STM32U5

“STM32U5

“STM32U5

“STM32U5

“STM32U5

“STM32U5

“STM32U5

“STM32U5

“STM32U5

“STM32U5

“STM32U5

“STM32U5

STEP10-1:代码修改 main.c

“STM32U5

“STM32U5

STEP10-2:代码修改 main.h

“STM32U5

STEP10-3:代码修改 stm32u5xx_it.c

“STM32U5

STEP10-4:代码修改 linked_list.c

“STM32U5

STEP10-5:stm32u5xx_hal_msp.c

“STM32U5

“STM32U5

STEP11:

link file 修改 : stm32u585xx_flash.icf

“STM32U5

修改完后,编译工程,在按下 USER BUTTON 后,系统将进入 STOP2 模式, 板载 LED 会停止toggle,但是 LPGPIO 控制的 LED 仍然会继续 toggle。

4、总结

本文介绍了 LPBAM 模式,以及如何使用 CubeMX 方便地配置 DMA Linked List,最后完成了在 CPU 进入 Stop2 模式下的 GPIO toggle 任务。LPBAM 模式将会在打造超低功耗的产品中发挥非常重要的作用。

参考文献

RM0456:

https://www.st.com/content/ccc/resource/technical/document/reference_manual/group0/f3/60/ca/d2/98/c8/47/88/DM00477635/files/DM00477635.pdf/jcr:content/translations/en.DM00477635.pdf

文档中所用到的工具及版本

测试工具版本信息:

• IAR:8.50.1

• CubeMX:6.30.0

来源:STM32单片机
免责声明:本文为转载文章,转载此文目的在于传递更多信息,版权归原作者所有。本文所用视频、图片、文字如涉及作品版权问题,请联系小编进行处理(联系邮箱:cathy@eetrend.com)。

围观 210

STM32U5在芯片生命周期管理方面在STM32L5的基础做了进一步的改进,引入了OEM Key机制,使得RDP的级别状态转换能够通过OEM设置的password进行保护。

详阅请点击下载《STM32U5 带_OEM Key保护的RDP降级》

来源:意法半导体STM
免责声明:本文为转载文章,转载此文目的在于传递更多信息,版权归原作者所有。本文所用视频、图片、文字如涉及作品版权问题,请联系小编进行处理(联系邮箱:cathy@eetrend.com)。

围观 20

【编者按】B-U585I-IOT02A开发板是基于 STM32U585AI 微控制器的功能强大的开发平台,内置 Arm® Cortex®-M33 内核、具备Arm® TrustZone® 安全架构,以及多种智能外设资源。该套件包括 Wi-Fi® 和蓝牙® 模块,麦克风、温度和湿度、磁力计、加速度计和陀螺仪、压力、飞行时间和手势检测等丰富的传感器。B-U585I-IOT02A 套件可基于图形化软件配置工具STM32CubeMX进行配置,简单易用,能够生成包含EWARM、 MDK-ARM、 TrueSTUDIO、 SW4STM32 等初始化代码工程。通过项目管理界面进行初始化配置并生成代码。自动生成的工程就是一个可以正常编译的完整工程,使用的时候只需要添加上用户代码即可。

本文为5篇 B-U585I-IOT02A 开发板网友评测文章的第三篇,与大家分享该板的CubeMX环境搭建。

首先感谢申请到ST的最新最潮的开发板,本次把玩的开发板是B-U585I-IOT02A,这款开发板的特色之处就是低功耗与M33内核,低功耗参数如下:

“基于STM32U5

M33内核是基于M4内核基础上进行的功能拓展,主要具有TrustZone安全优势,针对物联网产品的一颗MCU。而且B-U585I-IOT02A的主频高达160MHz,闪存的2兆字节和SRAM的786千字节的大小,完全可以装下应用代码。

接下来介绍一下B-U585I-IOT02A的硬件部分。

“基于STM32U5

包装还算是中规中矩,使用静电袋防止硬件受损,还是很不错的。

“基于STM32U5

开发板的正面。正面可以看到外设很多,有WiFi,蓝牙,存储也有,而且一般接口都引出了,十分方便,用户到手即用。

“基于STM32U5

开发板背面,有一颗F723,这颗料是ST-LINK V3,速度比V2可好太多,而且价格还不贵,嘿嘿。

“基于STM32U5

B-U585I-IOT02A的蓝牙模块特写,有时间一定要玩玩这部分。

接下来讲讲如何使用CubeMX进行对B-U585I-IOT02A进行硬件配置,CubeMX我之前安装过,但是没用过,知道这个软件很奈斯,可以可视化配置ST的MCU,然后还可以生成代码,但是之前都是使用STM32的标准库习惯了,突然使用HAL还有些不适应。这次就打破这个隔阂,学习一下新东西。

首先说一下,我电脑创建用户的时候,用了中文名字,而且安装CubeMX的时候选择了默认,所以在使用CubeMX的时候出现了一些问题,所以,如果你的电脑用户也是中文名称的时候,建议把CubeMX改一下位置,如下图所示。

“基于STM32U5

首先,选择Updater Settings,然后选择Repository Folder 储存库文件夹,如下图所示,选择一个非中文路径即可。

“基于STM32U5

通过以上操作,就可以解决中文路径下固件包安装不上的问题了。

接下来就可以愉快的使用CubeMX了,CubeMX开发之前需要下载固件包也就是从Manage embedded software packages中进行选择我们要开发的主控芯片型号。

“基于STM32U5

由于本次是开发B-U585I-IOT02A,所以选择STM32U5。(Ps:我之前安装过,所以会是绿色方块,如果没安装过应该是白色方块)

“基于STM32U5

安装完成之后选择新建工程,选择好芯片,就可以进行管脚配置了,如下图所示。

“基于STM32U5

管脚配置要知道外设都接了哪个IO,本次先点个灯,发现开发板的LED是PH6和PH7,设置好这俩IO为输出模式即可,也可以设置其名称,这个名称会在程序中体现出来。时钟方面先默认即可,接下来配置代码输出部分,设置一下工程名字,工程存储路径还有工具链,本次我使用的是MDK开发,所以工具链这块选择MDK-ARM。

“基于STM32U5

都配置好之后,选择generate code,创建代码即可。

“基于STM32U5

创建好的代码,找到其路径,就可以看到有MDK的工程,直接打开。

“基于STM32U5

值得注意的是,自己写的用户代码,需要加载到/* USER CODE BEGIN 3 */这种注释下面,否则当更新CubeMX之后,自己写的应用代码可能被优化没了。

最后,点灯成功,也算是把CubeMX用了起来,奈斯!!!下面是点灯的照片,每500ms闪烁一次。

“基于STM32U5

“基于STM32U5

最后附上工程,有兴趣的可以玩一玩。点击下载:https://doc.weixin.qq.com/txdoc/word?docid=w2_AKcAPgZcANg8qr68HFRSkORsleAfC&scode=AOgA3QdlAAcdlmZjl0AKcAPgZcANg&type=0

来源:STM32论坛网友yangjiaxu 版权归原作者所有
直接转载来源:STM32
免责声明:本文为转载文章,转载此文目的在于传递更多信息,版权归原作者所有。本文所用视频、图片、文字如涉及作品版权问题,请联系小编进行处理(联系邮箱:cathy@eetrend.com)。

围观 146

我们将B-U585I-IOT02A开发板称为“优板”,是因为该板基于STM32U5,“U” 与“优”谐音。那么,“优”在哪里?秘密在于U5的超低功耗微控制器技术,它是首颗基于40nm工艺的低功耗STM32产品系列,集高效的Arm Cortex-M33内核和ST专有创新节能技术及片上IP模块于一身,在提升性能的同时降低功耗。

本文为5篇 B-U585I-IOT02A 开发板网友评测文章的第二篇,与大家分享该板的低功耗特性。

  • 第一篇:基于STM32U5的B-U585I-IOT02A 开发板开箱

  • 第二篇:再探【B-U585I-IOT02A】开发板:低功耗测试

  • 第三篇:基于STM32U5的CubeMX环境搭建

  • 第四篇:B-U585I-IOT02A的蓝牙和WiFi的体验

  • 第五篇:STM32U585AI探索套件压力传感器LPS22HH驱动与海拔换算

“再探【B-U585I-IOT02A】开发板:低功耗测试"

B-U585I-IOT02A开发板主控采用的微控制器是 STM32U5,一款主打超低功耗的M33内核单片机,以超低功耗作为特色,本文不仅进行外围设备控制的测试,还将评测该芯片在不同的低功耗模式下的电流。

意法半导体官方例程提供了 SLEEP 模式和 STANDBY 模式的 Keil 代码,为本文的低功耗评测带来极大方便。我们直接打开编译工程,并用 STM32CubeProg 将 hex 文件烧录进开发板。

两个例程的试验效果是一样的,在正常模式会闪烁 LD7,闪烁5秒后自动进入低功耗模式,按B3可以唤醒并进入正常模式,同时闪烁 LD7,5秒后再次进入低功耗模式,如此循环。

测量MCU的电流使用开发板的JP3,拔掉接线帽用万用表的表笔接触即可。

“再探【B-U585I-IOT02A】开发板:低功耗测试"

“再探【B-U585I-IOT02A】开发板:低功耗测试"

SLEEP 模式功耗对比

“▲
▲ 正常模式

“▲
▲ SLEEP模式

“▲
▲ 动态展示

STANDBY 模式功耗

“▲
▲ 正常模式

“▲
▲ STANDBY模式

“▲
▲ 动态展示

可以看到在 SLEEP 模式下,功耗大约只能降低一半,但是在 STANDBY 模式下功耗由十几毫安直接下降到0.6微安左右。

“再探【B-U585I-IOT02A】开发板:低功耗测试"

其实数据和官方的数据是有一定的出入的,因为开发板上器件太多,肯定有器件在偷偷耗电,官方的测试肯定是无任何外围器件的条件下测试所得。但是也能看出功耗确实很低。在低功耗物联网应用中还是有很大的应用场景的。

来源:STM32论坛网友呐咯密密 版权归原作者所有

直接转载来源:STM32
免责声明:本文为转载文章,转载此文目的在于传递更多信息,版权归原作者所有。本文所用视频、图片、文字如涉及作品版权问题,请联系小编进行处理(联系邮箱:cathy@eetrend.com)。

围观 132

STM32U5是STM32超低功耗微控制器技术的下一项创新,它是首颗基于40nm工艺的低功耗STM32产品系列,集高效的Arm Cortex-M33内核和ST专有创新节能技术及片上IP模块于一身,在提升性能的同时降低功耗。新产品线还增加了适合新应用的前沿技术,例如基于硬件防护的高级安全特性,同时也搭载了图形加速器,可以实现丰富的图形界面,提升用户体验。

STM32U5生态圈逐步上新,包括STM32Cube 软件包、开发工具以及评估板。其中就包括这块 —— 用于开发物联网节点的探索套件 B-U585I-IOT02A,该板集成了更多的 MEMS 和一个用于摄像头模块的端口(带有 CMOS 图像传感器的子板本身单独出售),配备 STSAFE-A110 安全元件和 Wi-Fi 4 模块,可直连上云,已被微软和亚马逊指定为云接入参考平台。

为满足众多蝶粉们的迫切需求,我们特组织了面向广大网友的免费申请B-U585I-IOT02A评测活动,并收到了大量优质反馈。从本期开始,我们将从不同维度陆续为大家分享 5篇 B-U585I-IOT02A 网友评测文章。

  • 第一篇:基于STM32U5的B-U585I-IOT02A 开发板开箱

  • 第二篇:再探【B-U585I-IOT02A】开发板:低功耗测试

  • 第三篇:基于STM32U5的CubeMX环境搭建

  • 第四篇:B-U585I-IOT02A的蓝牙和WiFi的体验

  • 第五篇:STM32U585AI探索套件压力传感器LPS22HH驱动与海拔换算

本文为第一篇,B-U585I-IOT02A 开发板开箱。

开箱

STM32U5上新 B-U585I-IOT02A开发板,适用于物联网节点开发,受邀参与评测活动,超开心,很快就收到了ST顺丰寄来的开发板。

“基于STM32U5的B-U585I-IOT02A

开发板的高清大图如下所示。

“基于STM32U5的B-U585I-IOT02A

反面还有一些内容,预留了备用电池焊点,提供了Arduino兼容接口。

开发板上提供了3个USB接口,其中一个 MicroUSB 接口为 ST-LINK 接口,迫不及待上电测试。

连接电脑产生以下相关内容,非常的Nice。因为电脑安装了MDK Keil5,驱动我满满的,不用再额外安装了。

“基于STM32U5的B-U585I-IOT02A

上电后按下绿色 User Button 可以引起按钮左侧的红色LED翻转,开发板OK,可以正常工作。

“基于STM32U5的B-U585I-IOT02A

打开开发板自带盘符,通过两个链接可以查看开发板的相关内容,会自动跳转到相关的主页。

“基于STM32U5的B-U585I-IOT02A

开发板的相关资源介绍

基本描述

B-U585I-IOT02A 探索套件为 STM32U585AI 微控制器提供了一个完整的演示和开发平台,其特点是 Arm Cortex‑M33 内核,带 Arm 信任区和 Armv8-M 主线安全扩展、2 MB 闪存和 786 KB SRAM 以及智能外围资源。B-U585I-IOT02A 探索套件通过利用低功率通信、多路传感和与云服务器的直接连接,实现了广泛的应用多样性。

它包括 Wi-Fi 和蓝牙模块,以及麦克风、温度和湿度、磁力计、加速度计和陀螺仪、压力、飞行时间和手势检测传感器。

ARDUINO Uno V3、STMod和 Pmod 的支持连接提供了无限的扩展功能,并提供了大量专业附加板选择。

为了更方便用户,机载 STLINK-V3E 调试器提供开箱即用的加载和调试功能,以及 USB 虚拟 COM 端口桥。

B-U585I-IOT02A 探索套件利用 STM32U5 系列关键资产,为健身、计量、工业或医疗领域的各种可穿戴或传感器应用提供原型,具有最先进的能源效率和更高的安全性。

所有功能

  • 基于Arm Cortex‑M33 内核的超低功耗 STM32U585AI6Q 微控制器,带Arm信任区、2 MB 闪存和 786 KB SRAM,以及 UFBGA169 封装中的 SMPS
  • 512-Mbit octal-SPI 闪存,64 兆位octal-SPI PSRAM,256-Kbit I2C EEPROM
  • USB FS、水槽和源功率,2.5 W 功率能力
  • 802.11 b/g/n 符合 MXCHIP 的 Wi-Fi 模块®
  • 来自ST的蓝牙低能耗
  • 来自 ST 的 MEMS 传感器
  • 2 个数字麦克风
  • 相对湿度和温度传感器
  • 3轴磁力计
  • 3D 加速度计和 3D 陀螺仪
  • 压力传感器,260-1260 hPa 绝对数字输出气压计
  • 飞行时间和手势检测传感器
  • 环境光传感器
  • ST外围设备和物联网设备的认证和安全性
  • 2 个用户 LED
  • 用户按钮
  • 重置按钮
  • 板连接器
  • USB type-C
  • ARDUINO Uno 扩展连接器
  • 相机模块扩展连接器
  • 2× STMod+ 扩展连接器
  • Pmod™扩展连接器
  • 灵活的电源选项:ST-LINK、USB V总线,或外部来源
  • 具有 USB 重新计算功能的机载 STLINK-V3E 调试器/程序员:批量存储、虚拟 COM 端口和调试端口
  • STM32CubeU5 MCU 包提供全面的免费软件库和示例
  • 支持广泛选择的综合开发环境 (IDE),包括 IAR 嵌入式工作台、MDK-ARM 和 STM32Cube

“基于STM32U5的B-U585I-IOT02A

“基于STM32U5的B-U585I-IOT02A

打开串口工具,复位单片机打印出以下信息。

“基于STM32U5的B-U585I-IOT02A

先下载手册看看怎么用。手册链接如下:

https://www.st.com/resource/en/user_manual/um2839-discovery-kit-for-iot-node-with-stm32u5-series-stmicroelectronics.pdf%22%20%5Ct%20%22

“基于STM32U5的B-U585I-IOT02A

“基于STM32U5的B-U585I-IOT02A

打开MBED官网,登录账号,查找该开发板或通过下面的链接直接找到该开发板。
https://os.mbed.com/platforms/ST-Discovery-B-U585I-IOT02A/

“基于STM32U5的B-U585I-IOT02A

呃,发现MBED还未提供该开发板的模板和操作例子。

“基于STM32U5的B-U585I-IOT02A

先到这,后面在MDK安装相关的Pack,尝试点灯。

点灯和联网测试

下载STM32Cube_FW_U5,开发资源包。里面有HAL库文件和相关例子
并提供了相关的BSP开发资源文件

我们编译并烧录
STM32Cube_FW_U5_V1.0.0\Projects\B-U585I-IOT02A\Applications\WiFi\WiFiBasics工程,

“基于STM32U5的B-U585I-IOT02A

打开串口助手

发现没办法联网,原来要在程序里设置接入的WIFI热点,修改main.h种的WIFI热点和密码为你可以用的热点

“基于STM32U5的B-U585I-IOT02A

然后串口消息就是

#### Welcome to WiFi Basics Application #####

# build: SPI-NoOS, Network on module, 21:30:32 Sep 29 2021

######### Scan 10 BSS ##########

         0                                          360xgs ch  2 rss -51 Security   WPA2-AES country  .CN bssid c4.36.55.3d.35.0d
         1                                       yzbangong ch  6 rss -59 Security   WPA2-AES country  .CN bssid 90.23.b4.14.34.ae
         2                                        huiyishi ch 11 rss -62 Security   WPA2-AES country  .CN bssid 90.23.b4.14.34.ca
         3                                       H3C_GUEST ch 11 rss -62 Security       Open country  .CN bssid 96.23.b4.14.34.ca
         4                                        zonghebu ch  1 rss -65 Security   WPA2-AES country  .CN bssid 90.23.b4.14.2d.c6
         5                                       H3C_GUEST ch  6 rss -65 Security       Open country  .CN bssid 96.23.b4.14.33.f2
         6                                       H3C_GUEST ch  1 rss -66 Security       Open country  .CN bssid 96.23.b4.14.2d.c6
         7                                     gongchengbu ch  6 rss -66 Security   WPA2-AES country  .CN bssid 90.23.b4.14.33.c2
         8                                       H3C_GUEST ch  6 rss -67 Security       Open country  .CN bssid 96.23.b4.14.33.c2
         9                                      shichangbu ch  6 rss -68 Security   WPA2-AES country  .CN bssid 90.23.b4.14.33.f2
######### End of Scan ##########

Selected Access Point                                        huiyishi ch 11 rss -61 Security   WPA2-AES country  .CN bssid 90.23.b4.14.34.ca

- Network Interface starting:
- Network Interface ready:
 - Device Name    : MXCHIP-WIFI. 
 - Device ID      : EMW3080B. 
 - Device Version : V2.1.11. 
 - MAC address    : 04.78.63.39.49.5D
- Network Interface connecting:


- Network Interface connected:
 - IP address : 192.168.34.28. 


##### Please enter one of the following command:

"      help"            print this message
"      quit"            quit
"      scan"            Wifi Scan
"      ping"            Ping <hostname> (www.st.com by default)
"      echo"            Echo Server Test
"      http"            http <url> (http://public.st.free.fr/500MO.bin by default)
[12hApp>

执行ping 命令

“基于STM32U5的B-U585I-IOT02A

‍‍‍‍‍‍‍总结

该开发板集成了WIFI模块、蓝牙模块,以及环境传感器,还提供了丰富的接口,非常给力,该开发板原厂也是数量有限,看来价格不低。

另外该开发板的主控芯片为 Arm® Cortex®‑M33 core with Arm® TrustZone® and Armv8-M mainline security extension。因此非常适合用于物联网开发,可以确保物联网设备的安全得到有效的技术保障。

总之,该开发板推荐的方案组合,更适合用于高性能、高安全性的场合。

笔者又测试了主控的IO操作,ADC操作以及其他的片上外设操作,结合cubeMX,以及HAL库函数,非常适合习惯STM32单片机开发的人员,很多库函数都是不变的,开发思路也是一致的。不过由于是新品,相关的资源开始逐渐完善,想尝鲜的可以开始下手了。

来源:STM32论坛网友 gaoyang9992006 版权归原作者所有

直接转载来源:STM32
免责声明:本文为转载文章,转载此文目的在于传递更多信息,版权归原作者所有。本文所用视频、图片、文字如涉及作品版权问题,请联系小编进行处理(联系邮箱:cathy@eetrend.com)。

围观 214

2021年3月,意法半导体(ST)宣布推出STM32U5,9月STM32U5首批型号正式量产,这也意味着ST诞生了首款同时达到PSA 3级和SESIP 3安全认证的超低功耗微控制器。

ST中国区微控制器事业部市场及应用总监曹锦东表示,STM32低功耗系列产品从STM32L5到STM32U5,虽然内核一样,都采用了Arm v8架构的Cortex-M33,但是其工艺、电路设计等方面都做了巨大革新,并且采用了全新40nm技术平台,这也是未来ST低功耗MCU技术的重要支撑平台。

“▲ST中国区微控制器事业部市场及应用总监曹锦东"
▲ST中国区微控制器事业部市场及应用总监曹锦东

历史上,超低功耗产品线一直以来都是STM32的战略性产品线。自2007年ST发布第一款基于Cortex-M内核的通用单片机之后,2009年,ST就将Cortex-M系列单片机扩展到了超低功耗领域。

ST部门副总裁、微控制器事业部总经理Ricardo de Sa Earp则在声明中指出:“在过去的五年中,ST微控制器全球份额几乎翻了一倍,STM32超低功耗微控制器出货量迄今超过20亿。ST凭借丰富的低功耗技术储备和对低功耗市场的专注,让我们在超低功耗微控制器类别具有很强的优势,并占有约25%的市场份额。”

ST中国区微控制器产品市场经理彭祖年介绍道:“STM32U5可应用于工业智能流量计、健康及健身类穿戴产品、医疗监护设备、POS支付终端等对于功耗和安全性同时有高要求的场景。”

“▲ST中国区微控制器产品市场经理彭祖年"
▲ST中国区微控制器产品市场经理彭祖年

曹锦东透露,从欧洲总部拿到的STM32U5产品介绍PPT就有接近60页,具有大量独到的创新性。而从ST官方给出的迁移指南,STM32L4(+)到STM32L5为54页,STM32L5至STM32U5则为98页,足足多了一倍,也证明STM32U5具有的跨时代性的变革。而据STM32设计总监Patrick Aidoune介绍,该产品总计涉及到的设计者超过了300名。

那么此次推出的STM32U5,作为U系列平台的首款产品,究竟实现了哪些新特性?就让曹锦东与彭祖年带工程师们逐一解读。

“▲STM32U5相比STM32L5更新一览"
▲STM32U5相比STM32L5更新一览

低功耗与高性能的统一

“为什么说STM32U5是设计最为复杂的低功耗MCU"

首先直接给出EEMBC ULPMark的评分,涵盖了不同模式下的功耗分析,STM32也是目前唯一公布全部4项分数的品牌,也证明了其对于全场景低功耗的信心。彭祖年表示,客户有不同的应用场景,有些是高负载工作,有些则是长待机应用,因此单纯的对比µA/MHz并不能适用于每个客户。通过提供不同工作场景的打分,客户可以更好地进行参考。

除了采用更先进40nm工艺并同时改善了漏电流和动态电流之外,STM32U5改善了功耗管理模式,增加了低功耗后台自主模式(LPBAM,Low Power Background Autonomous Mode),和一些可以在低功耗下运行的外设和功能。

STM32U5中有16kB SRAM作为低功耗后台的自主模式的存储空间,可以在CPU休眠的情况下,将I2C、SPI、串口、ADC等外设数据通过LPDMA传送至其中,然后当数据累积到一定数量时再唤醒CPU进行一次性批处理。通过避免频繁唤醒CPU,从而达到节省功耗的目的。根据ST测试经典数据采集及唤醒处理的模型,可以将CPU唤醒的次数变成原来的1/10。

其次,则是集成了高频率的DC/DC以及LDO,通过集成高频率DC/DC,可减少VDD至内核供电的转换损耗,实现最优化的动态功耗和最快速的动态响应。而通过LDO,则可解决DC/DC启动时间较慢的弊端。

第三,则是类似LPRAM,提供分区的FLASH和SRAM,用户可以根据应用场景,将不常用的Flash关闭并按需开启,又或者通过降低FLASH读取速度降低功耗。

“▲如图所示,丰富的低功耗模式组合,可以让用户更加灵活选择"

“为什么说STM32U5是设计最为复杂的低功耗MCU"

“▲部分低功耗模式框图"
▲部分低功耗模式框图

除了低功耗之外,高性能也是STM32U5的一大特色。高达160MHz的处理器,使得STM32U5系列已经达到了240DMIPS和651Coremark的性能评分,而同样采用Cortex-M33内核的上一代STM32L5主频为110MHz。同时,为了进一步增强性能,STM32U5还集成了FMAC和Cordic数学运算加速器;用于优化内、外部存储上指令与数据吞吐Cache的Art加速器(8 kB指令Cache,4kB数据Cache)以及用于资源受限情况下的2.5D图形加速器Chrom-Art。

更多的功能安全和信息安全

“Cortex-M33是Arm v8架构专门为高数据安全应用所开发的,加入了TrustZone技术,就是为了满足物联网的高安全应用,但实际上我们看到目前MCU还没有做到足够的安全性。”曹锦东说道。

也正是如此,STM32U5在L5的基础上,额外增加了更多的安全功能,以确保物联网的安全性。

“单单内核的隔离或TrustZone的支持显然是不够的。”彭祖年表示。因此,除了内核隔离之外,STM32针对产品内部的存储、总线以及外设都做了隔离配置的设计。

“▲STM32U5的隔离"
▲STM32U5的隔离

此外,STM32U5还增加了更多的安全加密的功能,以及全程可控的多层保护状态机。存储保护则特别针对内部存储防篡改,增加了OTP空间,以及主动式防侵犯的active tampering的设计。

PSA Level3需要同时可以防止软件和硬件两方面的攻击,因此STM32U5特别增加了防止边界攻击的AES模块。

“▲STM32U5的安全特性一览"
▲STM32U5的安全特性一览

彭祖年表示,Arm针对PSA Level3认证的要求,需要芯片在安全的框架下还需要一个非可变的信任根,有了信任根,STM32U5上所支持的安全启动才能基于这个安全的根基发挥功能。针对这样的安全启动特性,ST提供了相关的参考代码,可以帮助用户实现相关的安全启动以及安全的固件加载和安全的固件更新。

如果需要用到TF-M (Trusted Firmware for Cortex-M)架构,除了针对TrustZone可以把内部的服务和软件区分成可信区和非可信区之外,同时也可以在软件权限上设置管理员权限和用户权限。在管理权限下,可信区内也有PSA模块化的本地安全服务可以提供,这里面包括了更多和加解密相关,安全存储相关,可信区初始化以及证书初始化等功能模块。这些对于通过PSA第三级认证以及实现一个TF-M可信的固件框架相当重要。

STM32U5同时提供安全固件加载功能。客户把软件设计好之后,授权第三方生产,无法保证软件的安全。ST通过内部的SFI生产流程,可以帮助用户在第三方的烧录环境下,严格控制烧录固件的安全和烧录的数量控制。

因为增强了防篡改和软件保护功能,STM32U585还适用于控制PIN交易安全(PTS)设备,这种设备必须满足支付卡行业安全标准委员会(PCI SSC)的技术要求。作为一种安全通用MCU,STM32U585为开发者提供了一个简化销售和自助支付终端的设计生产的整体解决方案。

获得“PTS官方批准设备”标志的产品通常需要专门用于防御在线攻击和边带攻击的安全芯片,还要单独用一个MCU管理键盘、显示器和USB连接等功能。现在,STM32U585单片整合了这所有功能,从而简化了产品设计,并优化了从采购和库存管理到最终组装的生产物流。终端制造商还可以根据PCI PTS v6等适用标准更快、更轻松地测试认证产品。

更强大的存储单元

作为MCU选型来讲,处理速度是一方面,存储则是另外一个重要的指标。

STM32U5除了利用分区实现低功耗之外,存储空间还得到了进一步的扩大。

“▲历代低功耗STM32
▲历代低功耗STM32 MCU的存储布局及处理主频

如图所示,STM32U5的Flash规划从128kB至4MB,将极大扩充用户的选型。同时,Flash中最高包含0.5MB具有100,000次读写能力的Flash,为用户数据保存提高可靠保证,其余部分则为传统的10,000次。

而SRAM则为786kB,并且支持ECC,从而满足关键安全应用。

同时,STM32U5还采用了一直以来的可变静态存储控制器FSMC,以及OctoSPI,从而支持更灵活的外部存储扩充。

更精确的模拟外设

针对下一代感测和跟踪应用,新系列产品还提供了先进的高速14位模数转换器(ADC)。

多功能数字滤波器(MDF)和音频数字滤波器(ADF)则取代了ST的Sigma-Delta调制数字滤波器(DFSDM)。极大提高了声音检测功能,通过提高声音活动检测性能,并结合LPDMA低功耗特性,这些功能让用户能够轻松将语音唤醒功能集成到基于低成本、低功耗微控制器的应用场景。

“▲STM32U5产品框图"
▲STM32U5产品框图

更丰富的生态系统

一直以来,STM32就在致力于建设完善的生态系统,如今随着STM32U5的正式发布,配套的评估板、IoT探索套件以及Nucleo最小系统都已配套发售。目前,根据存储空间、硬件加密以及封装形式不同,ST已经推出24个型号的STM32U5。

值得一提的是IoT探索套件,包括STM32U585主处理器,还增加了很多的传感器以及音频麦克风。针对无线功能,则有基于STM32WB蓝牙和ZigBee模组,以及由庆科信息开发的WiFi无线模组,实现更轻松的物联网无线连接。

而针对开发套件,除了STM32Cube软件套装之外,ST也与微软于2020年宣布针对Azure的合作,STM32Cube生态系统直接使用Azure RTOS套件,支持更多的应用代码示例,以及更多的中间件,包括操作系统、文件系统、TCP/IP协议、USB协议等。以往都需要通过不同第三方获得的资源,如今一切都可以免费并一站式获取。

在Github上,ST也共享了STM32Cube嵌入式软件,工程师可以更快跟踪相关信息。彭祖年同时透露,2021年四季度针对LPBAM,将推出相应的配置工具。

“▲STM32Cube软件全家桶"
▲STM32Cube软件全家桶

总结

STM32U5是ST针对低功耗领域一款跨时代的产品。曹锦东也表示,低功耗的MCU要经过仔细打磨。也正因此,为了确保完美发挥Cortex-M33 v8架构的所有优势,ST采取稳妥的策略,一步步进行优化,先推出L5,作为U5和L4的桥梁,再通过进一步迭代,以确保交付完整且优化的产品线。

而U系列相比L系列无论从工艺还是微架构上都实现了重大升级,绝不是类似于L4至L4+的小改款。因此尽管ST没有官方统一答复,但我更愿意相信U系列代表了Ultra,因为无论是功耗、安全还是性能,U系列都做到了低功耗MCU的极致。

来源:EEWORLD
免责声明:本文为转载文章,转载此文目的在于传递更多信息,版权归原作者所有。本文所用视频、图片、文字如涉及作品版权问题,请联系小编进行处理(联系邮箱:
cathy@eetrend.com)。

围观 160

页面

订阅 RSS - STM32U5