platformIO环境安装

article/2025/4/26 19:42:32

使用Platform IO作为Arduino的交叉编译环境

文章目录

  • 使用Platform IO作为Arduino的交叉编译环境
    • 1.1 PlatformIO简介
    • 1.2 VScode下安装PlatformIO
    • 1.3软件启动界面
    • 1.4 软件配置
  • 2. 开发平台和固件安装

最新安装方法请查看我另一篇博文: https://blog.csdn.net/kimiyang123/article/details/123726847?spm=1001.2014.3001.5502

1.1 PlatformIO简介

(E:\SCSTwork\Course_SmartHW\tutorialLists\platformIO环境安装.assets\image-20201208103620631.png)]

PlatformIO是一个多元化的硬件平台开发环境,它可以支持市面上的大多数硬件处理器的程序开发。通过它的packages and platforms的管理方式,基本上可以扩展所有的处理器的交叉编译环境。
PlatformIO主要由 platformio IDEplatformio core(CLI)组成。
Platformio IDE不是一个独立的IDE界面,它以后台服务,web方式呈现给用户。官方推荐是寄生在VScode编辑器下,通过扩展的方式安装到VScode中。所以,你必须先要安装Vscode。

1.2 VScode下安装PlatformIO

  1. 在线安装

    在VScode下,PlatformIO属于扩展组件一部分,只要在Vscode的Extensions中搜索PlatformIO即可点击在线安装。

安装过程根据网速情况,速度各不相同,需要耐心等待。有时出现安装失败,需要换个时间段再试。

  1. 离线扩展安装

    打开VScode管网,进入Extensions页面

在这里插入图片描述

搜索PlatformIO

选择右侧的Download Extenson

在VScode的扩展中,选择从VSIX安装...

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-qWG1THRr-1607404715145)(E:\SCSTwork\Course_SmartHW\tutorialLists\platformIO环境安装.assets\image-20201208115528677.png)]

1.3软件启动界面

platformIO安装成功后,在软件下方会有一个小房子图标,该图标是PlatformIO-IDE的Home启动按键。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-jTDuGho9-1607404715149)(E:\SCSTwork\Course_SmartHW\tutorialLists\platformIO环境安装.assets\image-20201208120202672.png)]

点开启动后,可在Platform IO的Home页面进行项目的创建、导入打开等操作。如下图:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-rvD2yCcl-1607404715151)(E:\SCSTwork\Course_SmartHW\tutorialLists\platformIO环境安装.assets\image-20201208120424767.png)]

1.4 软件配置

禁止扩展的自动更新,因为platformIO 等VScode的扩展库都在线存储在国外服务器上,如果自动更新的时候网络由于某种原因被强掉,会造成VScode内的插件临时更是失败。所以,一般开发的时候先自动跟新扩展给禁用,以免应更新而造成软件不能用而影响项目开发。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-v9buAJMQ-1607404715153)(E:\SCSTwork\Course_SmartHW\tutorialLists\platformIO环境安装.assets\image-20201208120948153.png)]

点击禁用后,再次进入应该看到的是"启用自动更新扩展"。

2. 开发平台和固件安装

PlatformIO IDE安装好后,只是一个交叉编译的开发管理环境,需要开发不同的嵌入式平台程序,需要安装不同的Platform固件包和framworks软件框架。

Platform IO在首次创建项目的时候,会自动根据您选择的Board和Framework下载对于的开发板配置和框架代码。所以第一次创建项目会比较慢。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-yEzbmTlk-1607404715154)(E:\SCSTwork\Course_SmartHW\tutorialLists\platformIO环境安装.assets\image-20201208125856436.png)]

全新安装完platform IO后的.platformIO文件夹内容:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-FkQd6QWd-1607404715155)(E:\SCSTwork\Course_SmartHW\tutorialLists\platformIO环境安装.assets\image-20201208130143440.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-8SKbcCBx-1607404715155)(E:\SCSTwork\Course_SmartHW\tutorialLists\platformIO环境安装.assets\image-20201208130156887.png)]

新建nano板项目后的文件夹内容:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Yt3uTM2B-1607404715156)(E:\SCSTwork\Course_SmartHW\tutorialLists\platformIO环境安装.assets\image-20201208130843983.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-F9RbSyiw-1607404715157)(E:\SCSTwork\Course_SmartHW\tutorialLists\platformIO环境安装.assets\image-20201208130918046.png)]


http://chatgpt.dhexx.cn/article/iL1SuV9A.shtml

相关文章

文件IO、标准IO的区别及其效率

系统IO:Unix/Linux下的系统文件IO,即文件访问机制不经过操作系统内核的缓存,数据直接在磁盘和应用程序地址空间进行传输。 标准IO:带缓存的IO,又称为标准IO(C标准库中提供了标准IO库,即stdio),…

如何理解 iowait

Linux中,%iowait 过高可能是个问题,严重的时候,它能使服务停止, 但问题是,多高才算高? 什么时候应该担心呢? 本文将讨论 iowait 的含义、相关的统计数据、原理以及 iowait的瓶颈问题 什么是 i…

Mysql的IO介绍及原因详解

有输入输出类型的交互系统都可以认为是I/O系统。 目录 一、IO操作 二、IO成本 三、IO分类 四、Mysql网络层IO(网络IO) 五、Mysql存储IO(磁盘IO) 一、IO操作 在计算机系统中I/O就是输入(Input)和输出(Outp…

IO概念

IO概念和五种IO模型 一、什么是IO? 我们都知道unix世界里、一切皆文件、而文件是什么呢?文件就是一串二进制流而已、不管socket、还是FIFO、管道、终端、对我们来说、一切都是文件、一切都是流、在信息交换的过程中、我们都是对这些流进行数据的收发操…

顺序IO和随机IO

顺序IO和随机IO 什么是顺序IO和随机IO如何解决随机IO造成的性能损失?问题什么是IOPS?机械硬盘和固态硬盘在随机IO上性能的影响因素?SSD作为随机存储设备,其访问任意一块的时间应该是相等的,为什么顺序IO还是快于随机IO? 什么是顺…

绘图工具-draw.io

draw.io是一个可配置的图表/白板可视化应用程序。draw.io 由英国软件公司JGraph Ltd拥有和开发。这是一个开源项目(但对贡献是封闭的),github链接:https://github.com/jgraph,可以绘制流程图、UML、类图、组织结构图、…

什么是IO Pad?

1.什么是IO pad? IO pad是一个芯片管脚处理模块,即可以将芯片管脚的信号经过处理送给芯片内部,又可以将芯片内部输出的信号经过处理送到芯片管脚。输入信号处理包含时钟信号,复位信号等,输出信号包含观察时钟、中断等…

Drawio使用简介(慢慢更新中)

drawio是一款强大、免费的绘图工具(基本可以替代收费的visio等),使用起来非常方便。支持网页版使用(网页版可以自己部署一套)以及客户端使用(支持windows,MacOS以及Linux)。 该项目…

计算机io接口主要功能,io接口的功能是什么

IO接口又称为输入输出接口,是信息处理系统与外部世界之间的通信。输入是系统接收的信号或数据,输出是从其发送的信号或数据。该术语也可以用作行动的一部分; 到“执行I / O”是执行输入或输出操作。 IO 接口,又称为输入输出接口,是信息处理系统(例如计算机)与外部世界(可能是人…

到底什么是IO

IO 作为操作系统的核心知识之一, 无论是在本机、传统的单体应用、还是分布式系统中,都有非常重要的地位. 今天就和大家系统地聊一聊 IO 相关的东西. IO IO,Input/Output 简写,是指内存和外设之间的数据复制的过程. 输入是指数据从外设复制到内存中, 输…

一文掌握 IO 基础知识与概念

💞哈喽!大家好,我是HappyGirl快乐女孩💞 😜是一位爱好技术的【技术Fans】!😜 💞💞💞 如果有对技术感兴趣的宅友,欢迎关注💞&#x1f4…

韦东山freeRTOS系列教程之【第三章】任务管理

文章目录 系列教程总目录概述3.1 基本概念3.2 任务创建与删除3.2.1 什么是任务3.2.2 创建任务3.2.3 示例1: 创建任务3.2.4 示例2: 使用任务参数3.2.5 任务的删除3.2.6 示例3: 删除任务 3.3 任务优先级和Tick3.3.1 任务优先级3.3.2 Tick3.3.3 示例4: 优先级实验3.3.4 示例5: 修改…

FreeRTOS教程——定时器(二)

Free RTOS定时器 一、概念 一、概论 软件定时器允许设置一段时间,当设置的时间到达之后就执行指定的功能函数,被定时器 调用的这个功能函数叫做定时器的回调函数。回调函数的两次执行间隔叫做定时器的定时周期, 简而言之,当定时…

韦东山freeRTOS系列教程之【第二章】内存管理

文章目录 教程目录2.1 为什么要自己实现内存管理2.2 FreeRTOS的5种内存管理方法2.2.1 Heap_12.2.2 Heap_22.2.3 Heap_32.2.4 Heap_42.2.5 Heap_5 2.3 Heap相关的函数2.3.1 pvPortMalloc/vPortFree2.3.2 xPortGetFreeHeapSize2.3.3 xPortGetMinimumEverFreeHeapSize2.3.4 malloc…

FreeRTOS学习记录(安富莱FreeRTOS教程摘录)

FreeRTOS学习资料: 安富莱论坛FreeRTOS教程 FreeRTOS源码下载链接 第1章 为什么选用FreeRTOS 1.1 FreeRTOS优势 FreeRTOS优势 最大的优势就是开源免费,商业使用的话不需要用户公开源代码,也不存在任何版权问题,是当前小型嵌入…

STM32 FreeRTOS系列教程(一)FreeRTOS简介

参考资料:《正点原子STM32F4 FreeRTOS开发手册_V1.1》《野火FreeRTOS 内核实现与应用开发实战—基于STM32》 学习RTOS的意义 当我们进入嵌入式这个领域的时候,往往首先接触的都是单片机编程,单片机编程又 首选51 单片机来入门。这里面说的单…

FreeRTOS使用教程(配合CubeMX)

FreeRTOS使用教程(配合CubeMX) 一、CubeMX配置 在选择后单片机芯片后,在Middleware中选择FREERTOS的CMSIS_V1版本即可在工程开启FreeRTOS。 关于FreeRTOS的具体配置一般集中在Kernel Setting中。具体参数一般可以默认,有特殊需求…

【STM32】STM32CubeMX使用FreeRTOS教程1----定时器学习

【STM32】STM32CubeMX使用FreeRTOS教程1----定时器学习 前言 本教程将对应外设原理,HAL库、STM32CubeMX和FreeRTOS结合在一起讲解,分析学习过程中遇到的问题和一些注意事项。 知识概括: SMT32定时器原理 STM32CubeMX创建定时器例程 HAL库…

[FreeRTOS系列教程]学习FreeRTOS前的准备工作-----初学者必看

转自:http://bbs.armfly.com/read.php?tid1552 转载说明:本文仅为转载,下面有几位同学询问对应的教程,教程请参考下面的链接,是以帖子的形式分章节说明。 http://bbs.armfly.com/thread.php?fid14&type29&…

FreeRTOS基本教程零:STM32 FReeRTOS 移植流程

一、资料准备 FreeRTOS源码下载地址: https://github.com/FreeRTOS/FreeRTOShttps://github.com/FreeRTOS/FreeRTOS我移植的是FreeRTOSv9.0.0 stm32裸机程序: 二、FreeRTOS目录 一共有三个文件夹 其中Demo文件夹中是FreeRTOS的例程,Licen…