从学习51单片机开始我的编程软件一直是Keil5,无论是C51还是MDK总是基于Keil的编程,除了使用TI公司的CCS编程过MSP系列,几乎没有使用过其他的编程IDE(除了编程ESP32的Arduino IDE)

但是相比于Arduino IDE,Keil5实在是太糟糕了,首先是不支持C++面向对象的编程(这里可能是我不知道怎么使用,但是使用C++就会异常报错),这导致很多时候开发效率大大的降低,例如前两日我移植美信公司的MAX30100代码就需要将官方例程的C++修改为C语言

而我在Arduino IDE中使用ESP32开发MAX30100的代码非常简便,直接调用MAX30100的构造函数即可。而在Keil5中则需要耗费大量的时间将C++的代码修改为C语言的代码。

此外,由于Keil的变量定义的问题不同文件之间的数据调用时常会出现问题,也非常影响开发。

而且最近在往上部署FreeRTOS的时候也发现,CubeMX生成的IDE无法在最新版的Keil上兼容,需要对Keil的版本进行下降。

所以我时常在想什么时候就放弃使用Keil5来编程了,尝试新的IDE。

其实好多人没在使用Keil进行编程,而是选择了VsCode来编程STM32,而且VsCode也支持C++的编程,对代码面向对象编程的支持度非常的高。

但是我在尝试一个新的选择:STMCubeIDE。

STM32CubeIDE是我在CubeMX生成代码的时候看到的选项。

所以我认为既然是ST公司官方推出的IDE,那么无论是对于STM32的兼容还是对CubeMX的兼容想必会做的非常优秀。

所以我就去ST的官方下载了STM32CubeIDE去试试水。

安装和启动STM32CubeIDE的过程非常简单并且启动速度也非常的快。

而且按照网上的教程STM32CubeIDE可以安装中文拓展包。

不过下载的时间非常非常慢(也可能是第一次启动的原因吧)

我们从一个现有的CubeMX文件中新建工程。

主要语言选择C++

将main.c更改为main.cpp这样子我们就可以使用C++语言的内容啦。


双击CubeMX文件,我们可以直接更改文件,然后修改初始化代码,可以快速更改代码。


/* USER CODE BEGIN Includes */
class Test
{
public:
  void LED0Tog()
  {
    HAL_GPIO_TogglePin(GPIOF, GPIO_PIN_9);
  }
  void LED1Tog()
  {
    HAL_GPIO_TogglePin(GPIOF, GPIO_PIN_10);
  }
};
/* USER CODE END Includes *

嘉立创PCB

还没有评论,抢个沙发!