vscode+platformIO开发stm32f4的实现

 更新时间:2026年02月07日 15:35:04   作者:Laggage  
这篇文章主要介绍了vscode+platformIO开发stm32f4的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

我的电脑环境

win10
vscode 1.36.1

vscode安装插件

安装完这个插件后会提示你安装 platformIOCore,按照提示安装即可.安装过程可能比较缓慢

新建项目

选择板子的的型号和要用的框架

点击完成,等待项目创建完成.(首次创建项目要挺久的)

项目创建完成后,打开查看platformio.ini

修改一下platformio.ini文件

[env:black_f407zg]
platform = ststm32
board = black_f407zg
framework = cmsis
upload = stlink ; 使用stlink烧写代码

debug_tool=stlink ; 使用stlink进行在线调试


; 头文件路径和宏定义

build_flags =

-Isrc/Core

-Isrc/Hardware/inc

-Isrc/LaSystem/inc

-Isrc/Lib/inc        ; 添加头文件搜索路径

-D STM32F40_41xxx      ; 定义全局宏,在keil中也有类似的操作

-D USE_STDPERIPH_DRIVER   ; 同上


build_type = release ; 这里我这边必须选择debug模式编译,否则代码烧到芯片中无法正常运行

配置库函数等操作

我这里选择使用的框架是CMSIS,要自己去把对应的32库函数复制到src目录下面,才能使用

注意这里面的目录和刚才 platformio.ini文件中配置的头文件搜索目录是对应的.

烧写代码到板子上

首先STLink接好,板子供好电.

底部状态栏左侧有一个 水平向右的箭头符号 , 点击它就是上传代码.

底部状态栏上的 勾号 是编译,烧代码之前先编译一下,检查一下有没有啥错误.

总结

platformIO真正用起来之后还是很好的, 但是网络上很少我这种自己复制32的进来编译烧写的, 大部分都是基于 stm32cube 或者 arduino 框架来开发的.

主要遇到的坑:

  • platform国内下载的速度感觉比较慢,不知道是不是我用的节点不太好的问题.
  • 由于国内网络环境问题, 第一次新建platformio项目的时候速度比较慢,等了好久.
  • 还有就是配置platformio.ini这个文件,具体看上面,注释写的比较清楚.

到此这篇关于vscode+platformIO开发stm32f4的实现的文章就介绍到这了,更多相关vscode+platformIO开发stm32f4内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:

相关文章

  • C++实现合并排序的方法

    C++实现合并排序的方法

    这篇文章主要介绍了C++实现合并排序的方法,实例分析了合并排序的原理与相关实现技巧,需要的朋友可以参考下
    2015-07-07
  • C语言中文件操作Error处理的方法示例

    C语言中文件操作Error处理的方法示例

    在 C 语言中,ferror() 是一个内置函数,用于在文件操作期间检查文件是否发生错误,它提供了一种简单的方法,在你的 C 程序中进行文件操作时不会中断,本文给大家介绍了C语言中文件操作Error处理的方法,需要的朋友可以参考下
    2025-10-10
  • C++ continue和break语句

    C++ continue和break语句

    这篇文章主要介绍了C++ continue和break语句,文章围绕continue和break语句的相关资料展开详细内容,需要的朋友可以参考一下,希望对大家有所帮助
    2021-11-11
  • C语言对数组元素进行冒泡排序的实现

    C语言对数组元素进行冒泡排序的实现

    这篇文章主要介绍了C语言对数组元素进行冒泡排序的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-02-02
  • Qt5 串口类QSerialPort的实现

    Qt5 串口类QSerialPort的实现

    在Qt5以上提供了QtSerialPort模块,方便编程人员快速的开发应用串口的应用程序。本文主要介绍了Qt5 串口类QSerialPort的实现,,感兴趣的可以了解一下
    2022-05-05
  • c/c++中的左值右值详解

    c/c++中的左值右值详解

    这篇文章主要介绍了c/c++中的左值右值,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2025-04-04
  • C++中的hpp文件及使用hpp文件的好处

    C++中的hpp文件及使用hpp文件的好处

    hpp文件是C++程序中一种特殊头文件,它可以包含类的声明和实现,详细介绍了使用hpp文件的好处及注意事项,感兴趣的朋友跟随小编一起看看吧
    2024-02-02
  • C++双目运算符+=的重载详解

    C++双目运算符+=的重载详解

    这篇文章主要介绍了详解C++编程中的双目运算符重载,是C++入门学习中的基础知识,需要的朋友可以参考下,希望能够给你带来帮助
    2021-09-09
  • 使用C语言实现本地socke通讯的方法

    使用C语言实现本地socke通讯的方法

    这篇文章主要介绍了 使用C语言实现本地socke通讯,代码分为服务器代码和客户端代码,代码简单易懂,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-12-12
  • C语言动态内存分配函数的实现

    C语言动态内存分配函数的实现

    这篇文章主要介绍了C语言动态内存分配函数的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-05-05

最新评论