|
今天在测试ST的STM32WL55评估版时,意外的发现其不仅仅是一块具有无线通讯能力的芯片,还具有双核,同时装载M4和M0+的内核。 0 O T$ m! r; F 因为手上发现只有WL55是双核的,下次尝试试用一下其他芯片试试。; r4 ]& |4 R g% s! V 1 e( S; U, ?( c; b7 x
0 f4 `+ c; ^& m$ K6 k3 D" G7 a9 Y: P 它可以使用协处理器来使用双核。这种双核架构使得微控制器能够同时运行多个任务,提高系统的灵活性和性能。每个内核都具有独立的存储器、外设和时钟域,它们可以独立地运行和执行任务,也可以通过共享资源进行通信和同步。, p' c3 s& e2 Q- X6 h) \ STM32WL 系列提供了多核调度器(MCS)功能,可以动态地管理主内核和辅助内核之间的任务调度和切换,以优化系统性能和功耗。
我们在使用CubeMX生成WL的代码的时候可以发现,有一个双核视图。 ! Q9 ^% f+ p' Q7 p* Z8 \
4 M2 ~4 N% m5 S+ A5 t 我们发现其CubeMX界面中可以把不同的内容分配给不同的核心。 创建任务的时候可以选择单核或者多核。9 o5 G% e3 u* M. {. k/ g B, E9 E - u3 \0 \1 r& ]+ u+ r0 @* v8 X, X9 [
如官网的介绍,每个CPU享有单独的时钟域和外设。
从官网的原理图中得知,评估版中有三个LED灯,对应着PB15/9/11。这三个LED作为板载LED,我们将尝试利用双核的特性来尝试同时闪烁。1 T5 b$ i" [7 E" R
将LED的三个IO初始化。 还有一点非常重要,我们需要开启STM32的IPCC.这也是之后要使用无线的条件。
. P& ~% L9 @0 `! |5 v1 V; u IPCC(Inter-Processor Communication Controller)是STM32WL系列微控制器中的一个功能模块,用于实现双核(Dual-Core)之间的通信。 , X+ @& i8 w, G3 K, b/ y IPCC允许主核和副核之间进行通信和数据交换。$ m [4 _8 @) e+ V " Q/ ^6 d( x# V6 G/ e
创建工程后发现其任务由两个核组成,我们尝试在其中分别添加代码。 后面的烧录问题卡了我四个多小时,单独写篇文章来描述一下这个烧录的问题。$ f( B" u2 @8 D8 f 我们在两个工程的main函数中分别添加LED的代码。
在第二个核的main函数中也添加LED的代码。2 I( i% p' y4 ^: x6 h$ T0 w
: u. k' Y! T1 d9 M. B) v. N: v ' P3 Q3 Q1 C5 W# i0 M 转载自 :电路小白 如有侵权请联系删除: b9 R: n0 \% L0 e" s* _* k7 n e4 C $ g" R$ p& \, C7 Z+ O7 m+ Y 4 U& a$ i5 E7 @# f6 D$ a- }, l |
STM32WLE55 无线收发功能调试记录
STM32 无线 MCU HSE 频率与启动时间精确调谐实战指南
STM32新品选型指南:WL3R、C5、H5F/E、U3B/3C5 特性解析与场景适配
【新品有奖】新品STM32WL3R:低功耗智能交互,无线遥控新选择
STM32WL3R重磅登场,把无线遥控MCU卷到新高度
告别通用内卷!STM32WL3R凭“专用”破局,开启无线遥控新时代
经验分享 | STM32WL LoRa CAD 开启实操指南:低功耗信道活动检测实现方案
兔哥心中的ST中文论坛
小白也能明白的STM32的低功耗与唤醒机制
2025软件工具兔哥知道
微信公众号
手机版