查看原文
其他

“STM32CubeMonitor” 拍了拍你

STM32 STM32单片机 2022-10-14

ST最近新推出了一款变量检测及可视化的工具STM32CubeMonitor。应该有小伙伴们已经使用过STMStudio来实时监测变量,与STMStudio相比,STM32CubeMonitor除了同样可以提供变量监测的功能,还有非常丰富的组件可以搭建各种风格的图形化界面,以及众多免费的第三方组件可以进行功能扩展。此外,STM32CubeMonitor还支持远程监测功能。


那么,接下来我们就一起来认识一下这位新的STM32Cube家族新成员。




基本介绍


STM32Cube系列软件开发工具

STM32Cube系列软件开发工具,提供了从MCU配置,代码生成,编译以及调试,到程序烧录和监测整个软件开发流程需要的全部功能。


其中,STM32CubeMX提供图形化的配置界面,帮助开发者快速创建一个新工程(支持STM32CubeIDE, IAR, KEIL等IDE);

STM32CubeIDE基于Eclipse和GCC工具链,提供代码编辑,编译,调试功能。


STM32CubeProgrammer是STM32程序烧录工具,可以对片上flash及片外的存储器进行擦除和编程,支持ST-LINK调试接口以及UART/USBDFU bootloader接口。


还有图形化功耗测量软件STM32CubeMonitor-Power, STM32WB FR性能测试软件STM32CubeMonitor-RF等。



新添STM32CubeMonitor

现在推出的STM32CubeMonitor变量监测及可视化工具,支持通过ST-LINK的SWD或者JTAG接口连接到目标MCU,可以在程序全速运行不被打断的情况下,读取需要检测的变量值。非常适合那些需要在程序全速运行下进行调试的情况,是对传统的通过设置断点进行调试的方式的补充。

STM32CubeMonitor基于NODE-RED开发,有丰富的图形开发组件,可以开发出灵活多变的可视化图形界面。


NODE-RED作为一个开源的可视化界面开发工具,有一个活跃的开发者社区,里面有众多开发者开发的各种功能的新节点,STMCubeMonitor支持导入这些第三方的节点来不断扩展功能。




关键特性

STM32CubeMonitor可以通过非侵入式的方式(Direct模式)检测程序变量,对采集的数据实时分析,协助程序诊断。除了Direct模式以外,Snapshot模式下通过往应用程序添加特定采样代码,可以提供更精确的采样。变量可以根据可执行文件导入,也可以直接根据变量地址进行手动添加,还可以对采集的变量进行各种后处理运算,设置采样触发条件等。


STM32CubeMonitor采用图形化的编程界面,整个编程过程通过拖拽的方式就可以完成,无需写代码。有大量可选的图形化组件(仪表盘,柱状图,点线图……)可用。


提供Windows, Mac, Linux等多操作系统的安装程序。当STM32CubeMonitor在一台电脑上运行后,还可以通过浏览器在其他的电脑,平板或手机上打开其界面进编辑或者查看Dashboard(需要在同一个局域网)。




工作模式

STM32CubeMonitor有两种工作模式:设计模式和Dashboard模式。设计模式即是编辑模式,打开STM32CubeMonitor默认就是处在这个模式。设计模式下,最左边一栏列出了所有当前可用的节点,我们可以通过拖拽不同的节点来创建或者编辑不同的逻辑数据流(Flow),来实现想要的功能。比如将要检测的变量通过点线图进行实时显示,或者通过一个按钮来控制某个GPIO口的状态等。设计模式下最右边一栏可以看到当前选中节点的使用说明和程序运行的调试信息等内容。


待所有的节点都编辑完成并部署运行后,可通过右上方的DASHBOARD按钮进入Dashboard模式。在Dashboard模式下,我们可以看到在设计模式下编辑的“流”运行的结果,看到我们之前设计的界面,通过这个界面去检测或者控制变量的值。



开放社区

STM32CubeMonitor基于Node-RED,Node-RED是一个基于“流(Flow)”的开发工具。那么何为“流”? Node-RED提供了很多功能节点,这些节点可以分为输入节点,输出节点和功能节点。把这些节点连接起来就是一个”流”。多个“流”的组合,我们也把它叫做“流”。比如在设计模式下的标签页面我们也称作“流”,它里面实际会包含多个不同功能的单个“流”。


远程监测

上图是通过STM32CubeMonitor进行远程监测的连接示意图。如我们前面所说,将STM32开发板通过ST-LINK连接到本地电脑,STM32CubeMonitor可以在本地电脑(Host PC)上运行,同时也可以在其他的电脑,平板或手机上通过浏览器访问host PC的IP地址(端口号1880)打开STM32CubeMonitor的界面,进行编辑或者查看Dashboard(需要在同一个局域网)。



资源链接

从ST官网可以下载最新的STM32CubeMonitor安装程序。


STM32CubeMonitor所有的技术文档都是网页版的,放在了STM32MCU wiki下的对应板块中(https://wiki.st.com/stm32mcu/wiki/Category:STM32CubeMonitor),而且内容还在不断的更新。这样的好处就是每次打开网页看到的都是最新的文档版本,不用频繁去官网查询最新版本,也不用担心自己会遗漏重要更新。


另外还有一个STM32社区,有任何关于STM32CubeMonitor的问题都可以到这个社区提问,你也可以去看看别人的问题,说不定会有新的启发(https://community.st.com/s/topic/0TO0X000000x33lWAA/stm32cubemonitor)


最后还有一个STM32CubeMonitor的视频,可以帮助初学者快速了解其基本功能。



实践操作


三个例程演示




在这一部分,将会通过“基本的数据采集流程”,“实时波形监测”和“利用公有云平台进行远程数据监控”等三个例子,来介绍STM32CubeMonitor不同功能的使用。本课程提供有三个例程所对应的MCU及CubeMonitor的程序,开发板使用的是Nucleo-L4R5ZI和X-NUCLEO-IKS01A2 传感器扩展板(仅在第三个例程中用到)。你也可以使用其他的STM32开发板,按照每个例程的说明实现对应MCU的功能就可以。


例程详细内容请到STM32中文官网阅览


例程一网址:

https://www.stmcu.com.cn/ecosystem/Cube/STM32CubeMonitor

例程二网址:

https://www.stmcu.com.cn/ecosystem/Cube/STM32CubeMonitor2

例程三网址:

https://www.stmcu.com.cn/ecosystem/Cube/STM32CubeMonitor3

以上网址请复制粘贴到外部浏览器阅读


点击此处“阅读原文”了解三个例程详细内容



您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存