基于CubeMx配置RTOS和GUI时的两个小问题

描述

有人使用STM32cubeMx做配置,在涉及到FREERTOS或GUI配置时可能遇到两个小问题,这里分享交流下。

第一个问题,在使用FREERTOS中间件时有个CMSIS版本选择问题,如下图所示:

FreeRTOS

到底选择CMSIS-v1还是CMSIS-v2往往让人困惑、纠结不知如何选择。

这里的CMSIS-V1和CMSIS-V2是指CMSIS里面的一个跟RTOS有关的软件组件。所谓CMSIS,全称为CortexMicrocontroller Software Interface Standard,即基于CORTEX内核微处理的软件接口标准。

我们知道ARM公司只是提供内核部件及相关技术,具体的微处理器则由其它诸如ST公司基于相应内核基础上添加其它外设与组件而产生。CMSIS是独立于芯片制造商的硬件抽象层,为各芯片制造商描述或定义系统资源以及如何将这些资源划分为多个项目和执行区域统一了规范与方法,为微处理器提供一致而简单的软件接口,以用于接口外设、实时操作系统和各类中间件,简化软件的重复规划与设计,减少应用开发人员在基于同类内核不同微控制器的学习时间,加速新产品的上市。

CMSIS由众多个部件组成,其中就包括RTOS v1和RTOSv2.

FreeRTOS

这里的RTOS组件就是那些针对实时操作系统的通用公共API以及RTX相关的参考函数,包括可运行于在多个RTOS系统的软件组件。RTOSV1主要支持基于CortexM0/M0+/M3/M4/M7内核的芯片,而RTOSv2组件是基于RTOSv1的扩展,除了支持全系列的CortexM内核芯片外,还支持Cortex-A5/A7/A9内核的芯片,支持动态对象创建,支持多核系统配置,向下兼容RTOS v1组件。

说到这里,下次碰到这个地方就该知道如何选择了。因为RTOS v2是对RTOSv1的扩展且与之兼容,所以一般选RTOSv2没问题。当然,如果你的芯片是CortexM核的芯片,选择RTOS v1组件也合适。

另外,如果有人想更多详细了解CMSIS的话,可以到下面站点查看:

https://developer.arm.com/tools-and-software/embedded/cmsis

第二个问题,有人使用STM32做图像开发,用到TouchGfx。在使用CubeMx做GUI配置时发现找不到那个GRAPHICS菜单项。下面基于CubeMx6.0版本来介绍下怎么找到它。

首先你要在CubeMx环境下将TouchGFX的扩展软件包安装完成。

FreeRTOS

安装完成之后,再点击softwarepack菜单项,选择selectcomponents,如下图所示:

FreeRTOS

然后就可以看到下图所示界面,先点击左边软件组件的“Graphics”。之后按照下图右侧所示,在Application栏选择TouchGF Generator。

FreeRTOS

记得在右下角点击OK确认!【上面截图没有截全】

然后,在CubeMx目录栏里的Softwarepacks就可以看到有关TouchGFX的Cube软件拓展包选项了。

FreeRTOS

其它后续操作该怎么进行就怎么进行了。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分