上篇以选妃的方式点评了套件,毕竟在这个颜值就是生产力的年代,好看,就是优点。
本篇从一个更泛化的点来点评STM32WB55器件,没错就是标题中“躲不过的RTOS”。这tm有什么关系?难道是在cortex上跑rtos谁不会?不急。
至于点灯,demo等演示,估计大家也就是看个热闹,猜都能猜到演示个啥,没什么实际意义,所以这一步我就省掉了,我帮大家看了就可以了。
各种外设,ST官方的下图大家应该看的很多:
公开资料显示STM32WB的主核发展自STM32L4,所以图上常见L4系列中的时钟部件,模拟部件,显示部件,计时器部件,连接性部件等等,常规功能配置。协议核M0,公开资料似乎还没有整理完全,我并没有在ST的公开渠道找到什么有价值的描述,强烈建议ST进一步完善这部分资料。
得益于ST器件功能设计的延续性,L4系列上的功能部件在其他F或L系列的MCU,很大程度上只需要做少许修改或无需修改便可移植运行。
又得益于STM32的HAL、LL、STD等库(配合以STM32CubeMX),不太需要深入了解具体寄存器的情况下便可以在一定程度上很好的使用器件。市面上喋喋不休的讨论开发应该基于寄存器还是库,也说明HAL/LL/STD库已经和寄存器是一个级别的对手。对于寄存器,我个人看法是能躲就躲吧,就如同没有几个人在系统资源充足的情况下还坚持怼汇编。
除去CortexM4部分和L4系列常见的外设,剩下最大的看点也就是两颗内核了。印象中ST应该是第一次出这种异构多处理系统。
我将这种两颗内核的组成称之为异构多处理系统,而不是多核或者异构多核。缘由是他们的总线相对独立,换句话说他们除了挂在总线上的外设可能形成竞争,自身本身并没有仲裁,竞争等问题。
简单看一下框图,反正意思就是所有功能都连起来了,再深下去的内容就不是几篇评测能打住的:
file:///C:/Users/ldc/AppData/Local/Temp/msohtmlclip1/01/clip_image004.png
注意在功能部件里面多了两个之前没有出现在STM32中的东西:HSEM和IPCC。HSEM全称叫Hardware semaphone, IPCC全称叫Inter-processor communicationcontroller。
看出来了吗?CortexM4,CortexM0,HSEM,IPCC一起,组成了一个呼之欲出的更一般的泛化概念,当然就是来自于OS(后面专指RTOS)的进程/线程,进程间通信和进程间同步。如果把整个系统看作一个操作系统,那么:CortexM4是一个进程,CortexM0是另一个进程,HSEM是两个进程之间的同步机制,IPCC用作两个进程之间的通信机制,多么经典的RTOS组件配置。有心的朋友可以逛一圈RTOS,抽丝剥茧之后你会发现RTOS的核心就这三个部件:进程、同步、通信。进程就是一个一定程度上拥有自我独立可执行资源的抽象意义,所以概念上不要拘泥于ThreadCreate产生的,还是上面提的CortexM0 进程这样的说法。
现代的mcu应用,RTOS逃不掉的,借用C++的一句话:把STM32WB当作一个新系统来学习(裸机 VS RTOS)。这篇评测的抽象意义你看懂了吗?
此内容由EEWORLD论坛网友freebsder原创,如需转载或用于商业用途需征得作者同意并注明出处