使用VScode开发ESP8266,PlatformIO开发ESP8266

2023-11-17

arduino IDE安装开发板库

安装arduino IDE

首先下载arduino IDE并安装。在官网下载即可。如果官网下载慢,可以找第三方资源下载。

下载开发板库

安装后进入“文件”-“首选项”,在附加开发板管理器地址后添加http://arduino.esp8266.com/stable/package_esp8266com_index.json
在这里插入图片描述
之后点击工具 - 开发板 - 开发板管理器,找到 esp8266 并安装:
在这里插入图片描述
安装的过程中要从github上下载东西,因此要保证自己PC能正常打开github,否则会失败。
安装完成后,重启 Arduino IDE 软件。在工具 - 开发板选项中即会看到 ESP8266 开发板的选项:
在这里插入图片描述

测试并下载程序

打开闪灯例程,“文件”-“示例”-“ESP8266”-“Blink”
在这里插入图片描述
把ESP-12F的GPIO0短接到地,其他保持和上面的推荐电路一致,然后上电。
把板子信息选好,我是使用裸模块测试的,我的设置如下:
在这里插入图片描述
点击上传,等待上传成功即可。
在这里插入图片描述

使用VScode开发ESP8266

安装arduino扩展并配置

然后打开VScode安装arduino扩展
在这里插入图片描述
“File”-“Preference”-“settings”
在这里插入图片描述
打开设置窗口,输入arduino搜索,往下拉找到arduino Path,把刚才arduino IDE的安装路径复制进去,注意要将 “\” 改为 “/”
在这里插入图片描述

编写并下载程序

新建一个文件夹,在其中新建一个.ino文件。
在这里插入图片描述

然后用VScode打开这个文件夹。
在这里插入图片描述

PS:不能只打开ino文件,因为VScode有一些配置文件需要保存,因此它需要文件夹。

打开文件夹后,在VScode中打开.ino文件,点击右下角来配置编程器、开发板参数、COM口,和在arduino IDE中一样。
在这里插入图片描述
在这里插入图片描述
这些配置和上面arduino IDE中的一样即可
在这里插入图片描述
ESP8266的GPIO0短接到地上电,点击右上角下载程序。
在这里插入图片描述
等待下载完成即可。
在这里插入图片描述

安装platformIO

platformIO介绍

  PlatformIO 是一个用于物联网开发的开源生态系统。它提供跨平台的开发环境和统一的调试器,还支持远程单元测试和固件更新等。也就是基本常见的单片机都可以用它来开发,免去了你用Keil,我用IAR,他用gcc…最后还得移植才能共用的麻烦。现在已经支持:
  Platforms: Atmel AVR, Atmel SAM, Espressif 32, Espressif 8266, Freescale Kinetis, Infineon XMC, Intel ARC32, Intel MCS-51 (8051), Kendryte K210, Lattice iCE40, Maxim 32, Microchip PIC32, Nordic nRF51, Nordic nRF52, NXP LPC, RISC-V, Samsung ARTIK, Silicon Labs EFM32, ST STM32, ST STM8, Teensy, TI MSP430, TI Tiva, WIZNet W7500

  Frameworks: Arduino, ARTIK SDK, CMSIS, ESP-IDF, ESP8266 RTOS SDK, Freedom E SDK, Kendryte Standalone SDK, Kendryte FreeRTOS SDK, libOpenCM3, mbed, PULP OS, Pumbaa, Simba, SPL, STM32Cube, Tizen RT, WiringPi, Zephyr RTOS

PlatformIO 解决的问题

  嵌入式开发的世界让很多人望而却步的主要原因是针对某一个单片机或开发板开发环境复杂的配置过程:交叉编译链工具下载、安装和配置,另外还得使用厂商独有的 IDE (有时还不是免费的) ,还有有时还不得不使用 IDE 只支持的 Windows
  多个硬件平台 (单片机, 开发板) 需要不同交叉编译链工具和开发环境, 所有相应的开发人员需要花费大量精力在配置新的开发环境上
  为了学习如何使用常规的传感器或执行器件等外设,需要花时间查找合适的库和例程
  每个团队成员可能会使用不用的操作系统,这就为他们之间共享成果形成阻碍

安装

在这里插入图片描述

我的VScode是1.62.3版本,我记得我没装PlatformIO 扩展,它自己就有了,不知道是不是这个版本的VScode自带了。

打开PlatformIO

点击左下角PlatformIO Home启动
在这里插入图片描述
确保自己的电脑能正常访问,否则会报

Error: C:\Users\qlexcel\.platformio\penv\lib\site-packages\platformio\__main__.py:70: DeprecationWarning: 'resultcallback' has been renamed to 'result_callback'. The old name will be removed in Click 8.1.
  @cli.resultcallback()
ERROR:    [Errno 10048] error while attempting to bind on address ('127.0.0.1', 8010): 通常每个套接字地址(协议/网络地址/端口)只允许使用一次。

	at c:\Users\qlexcel\.vscode\extensions\platformio.platformio-ide-2.4.0\node_modules\platformio-node-helpers\dist\index.js:1:9851
	at ChildProcess.r (c:\Users\qlexcel\.vscode\extensions\platformio.platformio-ide-2.4.0\node_modules\platformio-node-helpers\dist\index.js:1:5134)
	at ChildProcess.emit (events.js:315:20)
	at ChildProcess.EventEmitter.em...

报错后,可以重启VScode,再打开试试。
没啥问题,顺利打开后:
在这里插入图片描述

新建工程

点击“New Project”
在这里插入图片描述
工程名和开发板,开发板可以输入“8266”搜索,选择一个与自己开发板相近的。
在这里插入图片描述
点击Finish,第一次创建工程需要下载固件库,是从github上下载,所以一定要保证能正常连上github,而且固件库还不小,根据自己的网速等两三个小时都很正常。
创建完成后,可以从下面打开它。
在这里插入图片描述
PlatformIO 工程目录作用如下:
在这里插入图片描述

简单开发

打开src文件夹下的main.cpp,输入如下代码:

/**
 * Blink
 *
 * Turns on an LED on for one second,
 * then off for one second, repeatedly.
 */
#include "Arduino.h"

// Set LED_BUILTIN if it is not defined by Arduino framework
// #define LED_BUILTIN 13

void setup()
{
  // initialize LED digital pin as an output.
  pinMode(LED_BUILTIN, OUTPUT);
}

void loop()
{
  // turn the LED on (HIGH is the voltage level)
  digitalWrite(LED_BUILTIN, HIGH);

  // wait for a second
  delay(1000);

  // turn the LED off by making the voltage LOW
  digitalWrite(LED_BUILTIN, LOW);

   // wait for a second
  delay(1000);
}

在这里插入图片描述
点击左下角按钮编译
在这里插入图片描述
编译成功
在这里插入图片描述
然后点击下载
在这里插入图片描述
下载成功,重新上电程序正常运行。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用VScode开发ESP8266,PlatformIO开发ESP8266 的相关文章

  • Systick_Handler B.卡死处理方法

    Systick Handler B 卡死处理方法 注 鄙人在学习国产GD32芯片和STM32芯片做嵌入式时候出现过单片机卡死在 s启动文件Systick Handler B 处 现做系列总结 文章目录 1 中断开启未处理 2 引入C C 代
  • CentOS7.5离线安装jdk1.8

    目录 前言 一 环境准备 1 1 CentOS的安装 1 2 安装前检查是否有残余JDK 二 安装配置JDK 2 1 安装 2 2 修改配置文件 2 3 修改文件夹名称和脚本对应上 正常不需要操作 该步骤是方便以后部署使用脚本 前言 由于每
  • k8s笔记25--k8s 跨主机网络flannel

    k8s笔记25 k8s 跨主机网络flannel 简介 不同机器上网络设备区别 flannel 网络常见三大后端模式 UDP VXLAN host gw 如何查看集群用哪种网络模式 阿里云flannel容器网络 alloc 参考文档 简介
  • 解决IDEA中:Error running Tomcat8: Address localhost:1099 is already in use

    今天在运行Web项目的时候 突然运行不起来 最后报Error running Tomcat8 Address localhost 1099 is already in use 从而致web项目无法运行 看了一下原来是1099端口被占用 解决

随机推荐

  • PyTorch3D 安装记录

    1 PyTorch 安装 PyTorch 官网 PyTorch 官网 最新版本的 PyTorch 最新版本的 PyTorch 以 cuda 11 3 Python 3 9 Pytorch 1 12 1 为例 conda 安装 conda i
  • 端口重复处理

    不废话上代码之 端口重复处理 Description Web server failed to start Port 8080 was already in use Action Identify and stop the process
  • fragment嵌套viewpager嵌套fragment第二次加载数据不显示问题

    这几天做项目遇到一个问题 就是有这么一个页面是activity嵌套一个fragment1然后fragment1里放了一个viewpager viewpager里放了几个fragment 本来只有这么一个页面 显示出来也没什么问题 现在加新需
  • [架构之路-207]- 人人都是产品经理 - 常见的需求分析技术:实用的需求分析与建模详解过程(实操性强)

    目录 1 1 需求分析建模的要点与误区 1 1 1 需求分析到底做什么 1 1 1 1 分解的方法 1 1 1 2 提炼 合并 重组 1 1 1 3 消除矛盾 1 1 2 建模的目标和要点 1 1 2 1 建模的目的 1 1 2 2 建模的
  • 请问肾阴虚吃什么药?饮食注意什么?还有桂附地黄丸是治肾阴虚还是治肾阳虚的?谢谢

    如果确属肾阴虚当用 六味地黄丸 但肾阴虚那么多的特征里 最为明显的就是 夜间盗汗 如果不能确定 还是改用 桂附地黄丸 在 六味 的基础上加了 肉桂 与 附子 两味温药 作用就是在滋阴的基础上 温补肾阳 适宜平补 即 阴阳双补 最适宜服用的季
  • 揭秘区块链的核心技术之「哈希与加密算法 」

    大家都知道 区块链的关键技术组成主要为 P2P网络协议 共识机制 密码学技术 账户与存储模型 而这些技术中 又以 密码学与共识机制 这两点为最核心 那么今天我们来详细的聊一聊密码学 看一看密码学技术是如何在区块链中应用的 首先 我们需知道区
  • 完整版彻底卸载SQL Server2019

    首先我是因为SQL Server2019突然出现了一些问题然后重新安装了 简直被这个软件整的没脾气 希望我写的这个能帮助曾经和我一样被SQL Server卸载折磨得要疯的人 我是总结了很多前辈写的 然后重新安装SQL Server成功了 希
  • javase学习笔记

    01 01 计算机基础知识 计算机概述 了解 A 什么是计算机 计算机在生活中的应用举例 计算机 Computer 全称 电子计算机 俗称电脑 是一种能够按照程序运行 自动 高速处理海量数据的现代化智能电子设备 由硬件和软件所组成 没有安装
  • jdk8源码之Queue-ArrayQueue

    关于队列这个数据结构 大家应该都是比较熟悉 列队是一种先进先出 FIFO 的数据结构 删除操作只能在表的头部 插入操作只能在表的尾部 Queue一般是作为一个缓冲队列使用的 简单举例 生产端的生产速度偶尔会大于消费端的消费速度 但又不想等待
  • OOP面向对象(继承,方法重写/覆盖,多态,instanceof运算符)2021-07-19java学习日记

    7 19java学习日记 7 19日 java基础p 436 p460 学习时间 7 小时 关键词 OOP extends继承 方法覆盖 重写 多态 运算符instanceof 面向对象中的继承 extends 只可以继承一个类 不支持多继
  • 让 Notion AI 介绍 Notion AI

    Notion AI 是一种新型的人工智能技术 它可以帮助我们更好地管理和组织信息 并提高工作效率 Notion AI 结合了自然语言处理和机器学习技术 可以自动识别和分类文本 图像和音频等多种形式的信息 帮助我们更快地找到所需的信息 除了以
  • qt中控件的使用函数

    1 Text Edit编辑框 将编辑框中的内容转化成Utf8编码 ui gt textEdit gt toPlainText toUtf8 2 Combo Box下拉框的应用 1 将内容加入下拉框中 ui gt comboBox gt ad
  • Jmter生成MD5 jmter使用md5 jmter使用自定义参数 jmter生成自定义参数 jmter编写java代码

    Jmter生成MD5 jmter使用md5 jmter使用自定义参数 jmter生成自定义参数 jmter编写java代码 1 创建一个线程组 2 创建线程组 http请求 3 在 http请求添加前置处理器 BeanShell 4 请求测
  • Nginx、FFmpeg实现浏览器无插件播放大华IPC、NVR设备视频

    Nginx FFmpeg实现浏览器无插件播放大华IPC NVR设备视频 使用Nginx FFmpeg将rtsp流转换为hls流 web页面通过video js实现视频播放 一 软件安装 1 安装Nginx Windows平台下 下载Ngin
  • 小米推出物联网软件平台Xiaomi Vela;苹果11月11日再开发布会,自研处理器Mac有望推出;华为:计划在上海建芯片厂...

    EA周报 2020年11月06日 每个星期7分钟 元宝带你喝一杯IT人的浓缩咖啡 了解天下事 掌握IT核心技术 周报看点 1 小米推出物联网软件平台Xiaomi Vela 可打通 IoT 应用 2 证监会回应蚂蚁集团暂缓上市 避免蚂蚁仓促上
  • python王者归来 pdf下载_OpenStack开源云王者归来 PDF

    给大家带来的一篇关于OpenStack相关的电子书资源 介绍了关于OpenStack 开源云方面的内容 本书是由清华大学出版社出版 格式为PDF 资源大小315279 MB 戢友编写 目前豆瓣 亚马逊 当当 京东等电子书综合评分为 8 2
  • RabbitMQ学习总结(含java代码)

    MQ的概念 MQ message queue 本质是一个队列 先进先出 MQ的作用 1 流量削峰 流量高峰期 将请求订单分多次进行处理 防止服务器崩溃 但是会影响一定的用户体验 2 应用解耦 在多模块系统中 一个应用有多个模块系统 当一个系
  • 面试:Java有哪几种引用类型

    Interviewer 你好 请先做一下自我介绍吧 applicant interviewer 你好 俺叫小明 巴拉巴拉巴拉巴 Interviewer 小明啊 那你说一下 Java有哪几种引用类型吧 applicant 嗯啊 enenene
  • kafka处理快速的原因

    生产者分析 生产者 producer 是负责向Kafka提交数据的 我们先分析这一部分 Kafka会把收到的消息都写入到硬盘中 它绝对不会丢失数据 为了优化写入速度Kafka采用了两个技术 顺序写入 和 MMFile 顺序写入 因为硬盘是机
  • 使用VScode开发ESP8266,PlatformIO开发ESP8266

    arduino IDE安装开发板库 安装arduino IDE 首先下载arduino IDE并安装 在官网下载即可 如果官网下载慢 可以找第三方资源下载 下载开发板库 安装后进入 文件 首选项 在附加开发板管理器地址后添加http ard