文章目录

前言
其实这套工具链(除开STM32CubeMX)不仅STM32能用,还能给8051,ESP32,Arduino等芯片使用,只要你所使用的烧录工具以及芯片本身被PlatformIO支持。
在本文介绍的这套工具链中,Visual Studio Code为文本编辑器,gcc-arm-none-eabi为编译器,STM32CubeMX用于创建基础代码,而PlatformIO则将上述内容组合到一起,形成了一个强大的IDE。
为什么要抛弃Keli与MDK
抛弃这些老旧的IDE的理由很多,对于初学者而言,这些IDE通常没有如代码补全之类的现代IDE的基本功能,UI也异常老土;对于大多团队,MDK等老旧IDE通常仅有Windows版本,就大多数情况而言,统一开发平台往往比较困难,甚至有部分团队因为各种各样的原因不得不在Linux平台上进行开发;而对于嵌入式领域从业者而言,该类IDE通常为专有软件,使用其进行嵌入式开发,必须遵守相关的协议,具体内容包括但不限于软件付费,编译器限制代码行数等。

其次,STM32CubeMX以及HAL库的出现向老旧的生产方式发起了挑战,使用STM32CubeMX以及HAL库,我们可以很轻松地生成STM32 MCU的初始化代码以及工程,而不需要深入了解ARM架构中海量的寄存器以及芯片内部各种晦涩难懂的电路。

尽管这种不需深入理解硬件便直接“浮沙筑高台”的开发方式以及HAL库本身的代码质量一直饱受诟病,但不得不承认,此乃大势所趋。

但是STM32CubeMX只是一个项目生成工具,HAL也仅仅只是一个代码库,我们还需要一个代码编辑器。
Visual Studio Code是微软牵头的一个半开源软件(其开源项目名为vscodium,Visual Studio Code是微软构建的发行版,两者关系类似于AOSP和Android),该软件基于Electron框架构建,定位为代码编辑器,但得益于其强大的扩展能力以及社区生态(当然还有微软的钱),打满插件的Visual Studio Code可以摇身一变,成为21世纪最好用的IDE。
但其实,对于我们的需求,只需要打一个PlatformIO IDE插件就足够了。
PlatformIO是一个开源项目,其的本体是一个Python脚本,它是一个集成工具,提供了对各种嵌入式平台的一键部署和调试,以及代码补全功能。PlatformIO的开发者为该项目编写了相应的Visual Studio Code插件,以使该套系统能集成在Visual Studio Code上,形成一个强大的嵌入式IDE。

工具链介绍
STM32CubeMX
STM32CubeMX是一种图形工具,通过分步过程可以非常轻松地配置STM32微控制器和微处理器,以及为Arm® Cortex®-M内核或面向Arm® Cortex®-A内核的特定Lin

本文介绍了一种使用STM32CubeMX、VisualStudioCode、PlatformIO等工具链进行STM32嵌入式开发的方法,该方法适用于多种芯片,并详细讲解了配置流程及首个工程的实现。
最低0.47元/天 解锁文章
1581

被折叠的 条评论
为什么被折叠?



