当前位置: 首页 > article >正文

VScode + PlatformIO 了解

​Visual Studio Code

Visual Studio Code(简称 VS Code)是一款由微软开发且跨平台的免费源代码编辑器。该软件以扩展的方式支持语法高亮、代码自动补全(又称 IntelliSense)、代码重构功能,并且内置了工具和 Git 版本控制系统。用户可以更改主题和键盘快捷方式实现个性化设置,也可以通过内置的扩展程序商店安装其他扩展以拓展软件功能

下载链接:VS Code

插件拓展十分丰富,真正使用建议下载大量插件,向我下载了Chinese中文、C/C++、CMake、Gcc、Mrakdown、Python、Tree、ROS、URDF、Vim、Amazon Q等插件;

PlatformIO(插件)

PlatformIO(也称 PIO)是一款开源且跨平台的嵌入式系统与产品程序的开发工具,可用于多种嵌入式架构与平台的开发。

PlatformIO支持多种嵌入式平台,例如STM32STM8ESP32Amtel AVRESP82668051等。

PlatformIO的核心组件是称为 “PIO Core” 的命令行工具,基于Python编写,它可以独立于集成开发环境与文本编辑器使用。PlatformIO 也为许多集成开发环境与文本编辑器开发了插件,包括AtomEclipseEmacsNetBeansVimVisual StudioVisual Studio Code

PlatformIO支持单元测试与远程开发功能,还附带了简易的串口调试工具。PlatformIO为不同的嵌入式平台提供不同的框架,开发者可以选用厂商提供的或者跨平台的 SDK,比如 Arduino 框架;同时 PlatformIO 也提供第三方代码库的引用与管理功能,能够直接在IDE内安装这些第三方库。

安装PlatformIO

在VS Code中找到扩展插件,在插件中搜索PlatformIO,即可安装。

(最好有梯子,没有基本不用了解了,哪怕看其他博主使用别人的.platformio文件。)

在这里插入图片描述

使用PlatformIO

在这里插入图片描述

界面介绍

在这里插入图片描述

新建工程

在这里插入图片描述

编译运行

鼠标放上面自然显示用法
在这里插入图片描述

工作区

随便一个新建文件;

platform.ini有这个文件详细信息:平台、板子系列、工作框架;

在这里插入图片描述

在这里插入图片描述

  • .pio:该文件夹是 PlatformIO 的工作目录,包含编译生成的二进制文件、日志文件等。

  • .vscode:如果你在 ** VSCode** 中使用 PlatformIO 插件,该文件夹包含了与项目相关的配置文件,如任务配置、调试配置等。

  • include:存放头文件。

  • lib:该文件夹用于存放项目依赖的库文件。你可以通过 PlatformIO 的库管理器安装所需的库,并它们会自动下载到该文件夹。

  • src:该文件夹是存放源代码的主目录。你的主要代码文件(通常是 .cpp.h 文件)应放在这个目录下。

  • test:用于存放项目的测试代码和测试数据。这个目录通常用于编写单元测试或集成测试的代码,用于验证项目的功能和逻辑是否正确。

  • .gitignore:如果你使用版本控制系统如 Git 进行项目管理,你可以在这个文件中指定需要忽略的文件和文件夹。

  • platformio.ini:这是 PlatformIO 的配置文件,用于指定项目的配置选项,如目标硬件平台、编译选项、上传设置等。

PlatformIO 创建的项目中,libinclude 目录都是用于存放代码文件的特定目录。它们的区别如下:

lib 目录:用于存放项目的依赖库文件。在这个目录下,可以放置项目需要引用的第三方库或自己编写的库。这些库文件通常是以源代码的形式提供,可以是单个文件或多个文件的集合。在构建过程中,这些库文件会被编译并链接到项目中。

include 目录:用于存放项目的头文件。头文件包含了函数、类、变量的声明,供其他源文件在编译时引用。在这个目录下,可以放置项目自定义的头文件,或者是一些需要被其他文件引用的第三方库的头文件。在编译过程中,编译器会在该目录下查找所需的头文件。

总结一下,lib 目录主要用于存放项目的依赖库文件,而 include 目录用于存放项目的头文件。这样的组织结构可以方便地管理项目所需的库文件和头文件,并在构建过程中正确引用和链接它们。

主要的代码,我们可以写在 main.cpp 中,src 目录下的 main.cpp 文件基本等同于 Arduino IDE 中创建的 .ino 文件。
在这里插入图片描述

参考:

博客园的一篇使用VS Code 搭建 platformio 平台
极克侠ESP32教程
arduino GitHub
espressif GitHub
platformio GitHub
platformio 资源搜索


http://www.kler.cn/a/379007.html

相关文章:

  • Java环境下配置环境(jar包)并连接mysql数据库
  • C#如何封装将函数封装为接口dll?
  • 操作系统(10) (并发(2)------基于软件/硬件/操作系统层面解决两个进程之间的临界区问题/抢占式/非抢占式内核)
  • Jmeter——结合Allure展示测试报告
  • Postgresql源码(137)执行器参数传递与使用
  • Balluff EDI 项目需求分析
  • WMV怎么转MP4?五个简单好用的视频格式转换方法!
  • Faces in Things数据集: 由麻省理工学院、微软等联合发布,探索人类视觉错觉的新里程碑
  • 每日OJ题_牛客_最长上升子序列(二)_贪心+二分_C++_Java
  • 做一个能适配「手机」的网站需要注意什么
  • 匹配——rabin_karp是怎么滚动的?
  • 多波束T50P和SES2000 Medium100安装记录(2024年10月)
  • Android 斗鱼面经
  • flutter 打包
  • 2024年华为OD机试真题-VLAN资源池-Java-OD统一考试(E卷)
  • 存在sql注入的公网站点
  • selenium无头浏览器截图并以邮件发送
  • C++学习笔记----10、模块、头文件及各种主题(一)---- 模块(1)
  • 网络安全法详细介绍——爬虫教程
  • 华为设备配置端口隔离实验
  • FreeRTOS 中的列表与列表项详解
  • java基础day08
  • 数据结构,问题 B: 反向输出
  • 探索智能投顾:正大金融数据分析如何优化市场策略
  • DICOM标准:CR图像模块属性详解——计算放射线照相术(CR)及其在DICOM中的表示
  • 《数字图像处理基础》学习05-数字图像的灰度直方图