|
今天在测试ST的STM32WL55评估版时,意外的发现其不仅仅是一块具有无线通讯能力的芯片,还具有双核,同时装载M4和M0+的内核。1 k6 y& r; O9 |5 {: [' D1 V% i 因为手上发现只有WL55是双核的,下次尝试试用一下其他芯片试试。 6 o) W/ S) s( z% |3 e
) P2 l! N8 G% I% S8 p7 t# E 它可以使用协处理器来使用双核。这种双核架构使得微控制器能够同时运行多个任务,提高系统的灵活性和性能。每个内核都具有独立的存储器、外设和时钟域,它们可以独立地运行和执行任务,也可以通过共享资源进行通信和同步。; @$ i! w6 E3 A) d1 m7 P STM32WL 系列提供了多核调度器(MCS)功能,可以动态地管理主内核和辅助内核之间的任务调度和切换,以优化系统性能和功耗。
; n4 n& M3 A# @0 b; ?4 \ 我们在使用CubeMX生成WL的代码的时候可以发现,有一个双核视图。) g8 e3 {/ u6 H' N3 t* n6 s: D
! s4 s* | U: A9 {
我们发现其CubeMX界面中可以把不同的内容分配给不同的核心。 创建任务的时候可以选择单核或者多核。6 H7 g1 Z) C9 ?6 |* l ( z* t* B5 v; S# K6 @0 ^! X7 l
如官网的介绍,每个CPU享有单独的时钟域和外设。$ H5 N5 l" c& l* f u
! U* t. a: w* M- b' g( k. Z% T 从官网的原理图中得知,评估版中有三个LED灯,对应着PB15/9/11。这三个LED作为板载LED,我们将尝试利用双核的特性来尝试同时闪烁。6 x6 T4 f( P7 r+ ]9 J & Z8 e, ~6 @2 Q9 `$ {( M+ \* F7 z
将LED的三个IO初始化。 4 c X+ T' B8 Y8 U7 P 还有一点非常重要,我们需要开启STM32的IPCC.这也是之后要使用无线的条件。4 R; v/ Y6 @% o
IPCC(Inter-Processor Communication Controller)是STM32WL系列微控制器中的一个功能模块,用于实现双核(Dual-Core)之间的通信。: R' Q# {6 p% U+ }* C) D4 u ; W5 i) n c4 e IPCC允许主核和副核之间进行通信和数据交换。1 ]/ c4 e4 N6 H $ O" B- }7 ]5 s: ^9 o
创建工程后发现其任务由两个核组成,我们尝试在其中分别添加代码。" u" z$ Y) ]1 W# G5 p2 a& r3 | d& P 后面的烧录问题卡了我四个多小时,单独写篇文章来描述一下这个烧录的问题。 我们在两个工程的main函数中分别添加LED的代码。% o, ~, z5 F: D, i; L3 m
在第二个核的main函数中也添加LED的代码。
+ T# P+ v) `) ?. } 转载自 :电路小白" R: T. ?$ q! L: U 如有侵权请联系删除7 V( \' o% e9 W& k0 r . X% I" t8 X. N |
STM32 无线 MCU HSE 频率与启动时间精确调谐实战指南
STM32新品选型指南:WL3R、C5、H5F/E、U3B/3C5 特性解析与场景适配
【新品有奖】新品STM32WL3R:低功耗智能交互,无线遥控新选择
STM32WL3R重磅登场,把无线遥控MCU卷到新高度
告别通用内卷!STM32WL3R凭“专用”破局,开启无线遥控新时代
经验分享 | STM32WL LoRa CAD 开启实操指南:低功耗信道活动检测实现方案
兔哥心中的ST中文论坛
小白也能明白的STM32的低功耗与唤醒机制
2025软件工具兔哥知道
STM32为何在诸多的单片机中脱颖而出?
微信公众号
手机版