初始化mcu程序选用32k_STM32G4:具备数学加速器、高分辨率定时器的独特混合信号MCU...

cf3fbbe9fd0ade56fef0060e4f54d91b.png

STM32G4是F3系列的升级版本,适用于电机控制和数字电源应用。

STM32G4微控制器系列是史上第一款包含五个模数转换器、七个数模转换器、六个运算放大器和七个比较器的产品,同时还集成了USB-C供电控制器,184 皮秒的高分辨率定时器,具有灵活数据速率的CAN接口以及可加速某些三角函数的数学单元。

在计算吞吐量方面,STM32G4与STM32F4的算力接近。STM32G4作为“混合信号”微控制器领域的新秀,可为数字和模拟应用提供新颖和优化的功能。其Cortex-M4 内核主频达到170 MHz,DMIPS 为213 ,CoreMark跑分高达550分;产品架构上有很多优化改进,以提升设计开发过程中的便捷性和开发能力。

STM32G4的新架构借鉴了STM32F3的通用DNA,但同时也增加了创新和优化功能,以满足各种市场的特殊需求。例如,数学加速器的加入,在电机控制 FOC 算法的应用场景下,性能出色;而 CAN FD 极大地支持工业场景下数字电源的应用。通过在裸片上集成更多的模拟和数字组件,STM32G4可以为服务器中心创建更密集、功能更强大的电源,对于注重性价比的消费类产品,亦可提供适合的数字电源。STM32G4 还为开发者指明了一条面向未来的设计路径,例如,车用碳化硅(SiC)器件或氮化镓(GaN)晶体管的兴起,要求更精确的计时器以适应其更高的开关频率,STM32G4凭借其12通道高分辨率计时器,能够驱动这类组件的设计,从而开发设计更前沿更高端的未来电子产品。

5db49336e2b8ecde8a616d420f8d091a.png
▲ STM32G4产品系列全景图

STM32G4的创新

新型数学加速器

STM32G4是第一款具有两个数学加速器的STM32,一个用于三角计算(坐标旋转数字计算器或CORDIC),另一个用于数字滤波功能(滤波数学加速器或FMAC)。CORDIC 加速器为三角函数提供硬件加速,这些三角函数通常出现在电机控制、计量、信号处理及其他应用中。另一方面,FMAC支持在信号处理中实现两个主要的初级滤波器:有限脉冲响应(FIR)和无限脉冲响应(IIR)数字滤波器。

e9491db49d80c49ef9dd1101a5dcbeff.png
▲STM32G474E-EVAL板

在无刷直流电动机(BLDC / PMSM)中,相电流在两个坐标系(α轴和β轴)中创建定子的参考系。FOC矢量计算可精确控制电动机的旋转,这是硬件中三角函数能力显着提高的原因。同样,工程师可以将时域馈入IIR和FIR滤波器,以进一步放大、降低或消除频率,从而获得一个新的时域信号,该信号的噪声更小或者没有,可混叠或漂移,最终应用程序可以在更高质量的数据下工作。

这两个加速器带来的性能提升非常显著。CORDIC加速器的正弦运算速度比ARM软件库快5倍,它的存在还大幅减轻了Cortex-M4内核的负担,在数学加速器计算新角度时,系统可以执行其他任务。同理,当开发者采用电机控制库来进行FOC算法控制BLDC电机时,相比以往不带新型数学加速器的其他STM32产品,G4的性能提高了约12%。这意味着开发人员在降低工作频率和功耗时,对性能没有负面影响。

一个高分辨率计时器和

三个高级电机控制计时器

STM32G4系列具有很高的标志性意义,它是第一个包含分辨率低于200皮秒计时器的ST MCU体系结构,最显著的好处是G4能够驱动LLC谐振拓扑中的高精度电源。由于有七个时基,开发人员可以结合使用,从而获得非常精细的调制,该计时器还提供了高度灵活的脉宽调制(PWM)。高分辨率计时器因具备事件处理程序,可帮助工程师更轻松地配置和调用计时器或使用它生成中断。

7c95c881cbd7df637d22c51e5b8fb3b9.png
▲ NUCLEO-G474RE板

STM32G4系列集成了三个16位高级电机控制计时器,可支持PWM模式以更好地控制电源开关,并具有功率级保护系统,在发生故障时可以禁用PWM输出。计时器还具有用于正交编码器和霍尔传感器的不同模式,以自动调整计数方向,从而允许计时器在使用转速计时检测转子的位置或其速度。因此,开发人员可以使用计时器读取角度或方向,以简化代码并提高应用程序的精度。

双存储区闪存和安全的存储区

STM32G47x MCU还具有双存储区闪存形式的关键功能。很简单,MCU将闪存组织为两个具有读边写(RWW)功能的物理存储体。结果,可以下载,安装然后运行新固件而不会受到任何干扰。系统在一个存储库上运行,而另一存储库则接收新固件。然后,系统可以热交换银行并无缝切换到第二个银行以运行新代码。开发人员甚至可以通过使用STM32G4上可用的新安全功能(如安全存储区)来保护下载操作:安全存储区:可以存储秘密密钥或执行软件例程的内存部分,在重置后仅运行一次,之后对用户代码不可见。

STM32G4的优化

CCM-SRAM 例行增强器

STM32G4还借鉴了其他STM32产品的诸多创新。与STM32F3一样,开发人员可以将一些可用的SRAM用作核心耦合存储器(CCM),ST将这项技术称为“例程增强器”,程序员可以将一段代码放入内核的SRAM中,以加快关键例程的执行速度并保持其确定性。STM32G4可使用其指令总线来调用代码,同时用数据总线来检索信息,代码可以在可用的最高时钟频率下运行,并等待状态为零,从而达到优化性能的效果。开发人员将CCM-SRAM用于实时或计算密集型应用程序,可以避免例程和数据必须共享同一总线时发生的瓶颈。

b005c662ec36fc0ce1c021f4390cdec6.png
▲P-NUCLEO-IHM03电机套件

开发者从CCM-SRAM中受益是非常直接的,只需要为CCM-SRAM定义内存地址区域,并使用特殊的属性标记代码段即可告诉编译器将其移至耦合的核心内存。接下来,程序员在启动时通过修改启动文件将代码加载到CCM-SRAM中,如有必要,将初始化变量复制到主函数中,然后调用有问题的代码。因此,仅需几行代码就可以显著优化应用程序。

众多外围设备和优化

STM32G4除了其众多的模拟外设之外,还集成了优化功能来进行信号处理。例如,模数转换器在硬件中包括增益和失调补偿,可以减轻CPU负载并获得更好的性能。同样,系统还可以自动并最多连续八次处理硬件中的异常事件。当系统对超出其看门狗窗口的信号进行采样时,通常会设计一个例程对信号进行重新采样,以评估该信号只是故障还是系统性问题。由于STM32G4的高度硬件集成,开发人员可以更有效地管理异常事件处理。此外,数据表中还列出了的大量外设,同时也隐藏了众多硬件优化功能。

关注微信公众号“STM32”了解最新内容:

30deb39358ac178c243ace132e175dfb.gif
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值