
今天在测试ST的STM32WL55评估版时,意外的发现其不仅仅是一块具有无线通讯能力的芯片,还具有双核,同时装载M4和M0+的内核。+ y6 v2 W h0 Q; N% B u: D ], _ |# Q* a' T& W5 j! Y# R 因为手上发现只有WL55是双核的,下次尝试试用一下其他芯片试试。 ![]() 5 v5 I+ o8 K' R2 v% C1 H. X% K4 {2 C5 W$ E 它可以使用协处理器来使用双核。这种双核架构使得微控制器能够同时运行多个任务,提高系统的灵活性和性能。每个内核都具有独立的存储器、外设和时钟域,它们可以独立地运行和执行任务,也可以通过共享资源进行通信和同步。 STM32WL 系列提供了多核调度器(MCS)功能,可以动态地管理主内核和辅助内核之间的任务调度和切换,以优化系统性能和功耗。 & y4 z. y3 J/ M" j+ ~/ P/ T& _8 } ![]() 3 Z& _/ {1 `1 p4 p, E 我们在使用CubeMX生成WL的代码的时候可以发现,有一个双核视图。 ![]() ![]() & t j ^/ [3 _9 _ 我们发现其CubeMX界面中可以把不同的内容分配给不同的核心。; K c: @- d ~8 L* U6 [# |# h 创建任务的时候可以选择单核或者多核。! L6 r8 s, q% D6 R. z* \ ![]() 如官网的介绍,每个CPU享有单独的时钟域和外设。- _$ b, z" @7 a/ {: _. t5 D . d: u/ Q( y+ L7 A0 G7 a N% D& t ![]() 从官网的原理图中得知,评估版中有三个LED灯,对应着PB15/9/11。这三个LED作为板载LED,我们将尝试利用双核的特性来尝试同时闪烁。) V: K8 s3 g- w* B; [& ] 9 U- \: |" e& g ![]() 5 l% B+ n( V/ Z& \7 T& x) S 将LED的三个IO初始化。9 U% W7 a: V% f% ^6 a- I 1 V! ~# L( {$ L! s4 b, p7 ] 还有一点非常重要,我们需要开启STM32的IPCC.这也是之后要使用无线的条件。3 z2 {5 s" Y. G$ q 2 ?% v3 Q, c& |7 \* S" Q3 L ![]() IPCC(Inter-Processor Communication Controller)是STM32WL系列微控制器中的一个功能模块,用于实现双核(Dual-Core)之间的通信。 IPCC允许主核和副核之间进行通信和数据交换。 6 z0 u, ^4 M5 C/ f* \ # l6 I- x, x# q- z/ R4 Y1 b ![]() % g- b. G9 V! D/ L6 }. { 创建工程后发现其任务由两个核组成,我们尝试在其中分别添加代码。 1 i) s$ q. x. W ~ 后面的烧录问题卡了我四个多小时,单独写篇文章来描述一下这个烧录的问题。 我们在两个工程的main函数中分别添加LED的代码。& N7 O+ y, o3 o' `6 K+ V0 | w
在第二个核的main函数中也添加LED的代码。! g ^1 K3 O+ c1 L# E& N& s$ a
& @/ A$ u- z0 B5 Q/ H w7 l9 S 转载自 :电路小白/ v% b' l8 p5 @ 如有侵权请联系删除 d( U" q' {% R4 M ( d. Q6 S; |4 E) M+ Y, t: i # h V2 u2 ^/ ~# R |
【新品发布】超低功耗复合调制无线STM32WL3x微控制器
实战经验 | 从STM32WL55JC到STM32WLE5CC的LoRaWAN_FUOTA移植
基于STM32WL55双核烧录过程的问题及解决办法
【无线与云连接】STM32WL私有LoRa网络设计原理以及演示介绍
基于STM32WL LSE 添加反馈电阻后无法起振问题经验分享
STM32WL sub-GHz SoC 未来工业物联网最佳的选择
STM32Wx 助力万物互联3.0
STM32Wx 赋能工业物联网解决方案
基于STM32WL55-NUCLEO开发的LoRaWAN经验分享
【分享】无线测温系统-硬件篇