
今天在测试ST的STM32WL55评估版时,意外的发现其不仅仅是一块具有无线通讯能力的芯片,还具有双核,同时装载M4和M0+的内核。 - [; M8 v+ b( |% K$ z 因为手上发现只有WL55是双核的,下次尝试试用一下其他芯片试试。 ![]() ( y) F% W5 p1 m* ~5 b 它可以使用协处理器来使用双核。这种双核架构使得微控制器能够同时运行多个任务,提高系统的灵活性和性能。每个内核都具有独立的存储器、外设和时钟域,它们可以独立地运行和执行任务,也可以通过共享资源进行通信和同步。 STM32WL 系列提供了多核调度器(MCS)功能,可以动态地管理主内核和辅助内核之间的任务调度和切换,以优化系统性能和功耗。% S& `% r* j3 B4 H' _/ B& v7 e1 P9 s4 F ![]() 我们在使用CubeMX生成WL的代码的时候可以发现,有一个双核视图。. x5 o8 F6 ]9 D, } 2 P5 m; q' |1 J+ o8 G* @( x ![]() 0 ~; p* [; T% x" L ![]() ) _" \+ Q9 E3 ?% \0 R0 {) h 我们发现其CubeMX界面中可以把不同的内容分配给不同的核心。 ) U4 k0 p$ f/ N: p0 T 创建任务的时候可以选择单核或者多核。 & W% c( j9 |, @ B9 s ![]() ; g9 n# ^# ?' {; ? 如官网的介绍,每个CPU享有单独的时钟域和外设。8 S9 ~! ]* K- { ( s& {" x! Q, I% P ![]() ; p) P0 b+ T8 V; w4 z) o 从官网的原理图中得知,评估版中有三个LED灯,对应着PB15/9/11。这三个LED作为板载LED,我们将尝试利用双核的特性来尝试同时闪烁。) W/ T2 V( @2 p/ ^5 b' {$ y* H: t ![]() 将LED的三个IO初始化。 $ j# R# b0 R& J* s0 T 还有一点非常重要,我们需要开启STM32的IPCC.这也是之后要使用无线的条件。 ![]() & u: b% f% }2 U6 U$ |2 d* n IPCC(Inter-Processor Communication Controller)是STM32WL系列微控制器中的一个功能模块,用于实现双核(Dual-Core)之间的通信。5 R2 \ X- Y# \5 T: q; I ) H) M2 X/ J# h& E 3 h; f, u* z, t1 f+ i$ `7 D+ P. ` IPCC允许主核和副核之间进行通信和数据交换。; ~/ O0 J0 s! B# T/ H/ t, g7 l % S6 Z+ b! e) f5 t* h( Z) y" C' c7 S ! |' v" K1 j- r+ R+ R: t ![]() 创建工程后发现其任务由两个核组成,我们尝试在其中分别添加代码。4 K& l! Q. ? F) m7 |$ w & y% j5 F0 n/ B8 f 后面的烧录问题卡了我四个多小时,单独写篇文章来描述一下这个烧录的问题。. q* h$ M( }/ b/ D, @9 o3 Z 我们在两个工程的main函数中分别添加LED的代码。
在第二个核的main函数中也添加LED的代码。
; j/ @" w" M* H' Q; \1 Q 转载自 :电路小白' X6 _3 h$ t7 a0 i1 W% c 如有侵权请联系删除 ; c8 y e+ L) Q' w! K/ \- J! r 0 v) @! _9 i3 E6 _) w; e( o% L |
【新品发布】超低功耗复合调制无线STM32WL3x微控制器
实战经验 | 从STM32WL55JC到STM32WLE5CC的LoRaWAN_FUOTA移植
基于STM32WL55双核烧录过程的问题及解决办法
【无线与云连接】STM32WL私有LoRa网络设计原理以及演示介绍
基于STM32WL LSE 添加反馈电阻后无法起振问题经验分享
STM32WL sub-GHz SoC 未来工业物联网最佳的选择
STM32Wx 助力万物互联3.0
STM32Wx 赋能工业物联网解决方案
基于STM32WL55-NUCLEO开发的LoRaWAN经验分享
【分享】无线测温系统-硬件篇