记忆一隅

CubeIDE 浅尝体验

2023-02-13 · 2 min read
STM32

CubeIDE taste experience

自从本科毕业,最近今年都没怎么碰STM32,最近刚好有机会又要用STM32开发点东西,下了CubeIDE尝试使用,来体验一下STM32 All in one开发,自动生成的快乐。
首先,图形化的功能配置界面真的很讨喜,根据选择的功能和外设,自动分配重映射管脚,可以说是能够极大的提高项目初期的效率,避免因为管脚分配错误导致的硬件设计问题。也不用翻阅手册,一个一个去对各个管脚的重映射功能,直接就给分配好了。

然后是CubeIDE是基于HAL库做开发的,之前我一直用的标准库,配合正点原子的一些二次开发库函数,实现一些功能非常的迅速,这次也来浅尝一下HAL库.

首先是尝试了一下使用CubeIDE配置USB虚拟串口,只需要在配置界面将USB还有USB device相关的配置点一点,就可以生成一个包含虚拟串口功能的配置,并生成相应的代码模板,包含所使用的外设初始化,系统的时钟初始化等,可以自己根据需要再进行进一步的修改和配置。

生成的代码模板会给出哪里可以添加代码,在其中添加的代码在后续的配置修改时,不会被覆盖。如果在非指定位置意外的地方更改了代码,在重新构建代码模板时就会被覆盖。

通过CubeIDE,定时器,串口,IIC等外设也都可以很容易的进行图形化的配置,中断优先级,DMA的配置和使用和相当简化。各个中断都提供有可用户重定义的回调函数,功能性完全没有问题,使用起来相当方便。后续再有相关的开发内容,应该会选择CubeIDE作为开发环境来使用。

不过也有些缺点,最主要的是调试功能不强,和Keil的调试功能来比简直小巫见大巫,这点确实是个弱项。