ESP8266开发实战之(一)-开发环境配置

2023-05-16

 最近买了一块ESP8266的小板子,上面自带WIFI功能,可以进行一些好玩的物联网开发。因此,我打算将对整个板子的的熟悉过程通过一系列的文档记录下来。

我拿到的板子型号是NodeMUC 1.0(ESP-12E),长下面这个样子。

拿到板子后第一件事情就是熟悉其开发环境,因此有了下面的这篇文章。

概述

esp8266的开发方式有多种:可以使用C/C++语言进行开发,使用的开发环境为Arduino。可也可以使用Micropython,开发环境为Pycharm。这篇文章介绍如何使用Arduino+C/C++语言开发esp8266应用。

安装配置Arduino环境

安装Arduino IDE

首先,打开Arduino的官方网址Arduino - Home。在页面中,点击【SOFTWARE】,进入软件下载页面。

然后在下载页面中的左侧(如红框中标注),根据自己当前所用的操作系统类型,点击相应的链接下载Adrunio安装包。

然后会进入到一个界面,问你是不是要捐献一点点钱给他们。如果你愿意的,可以选择相应的金额;不愿意的话,可以直接点击【Just Download】就可以继续下载了。

下载完成之后,找到安装包,双击安装即可。不同的操作系统安装方式不同,请自行根据自己所用的操作系统实际情况来决定。

在Windows系统中,直接一路点击Next往下安装。

Windows安装界面

安装完成后,即可以启动Arduino,启动界面如下。

安装esp8266开发包

Arduino默认只支持对Arduino开发板进行开发,而现在我们要使用其为esp8266开发应用。因此,需要为Arduino添加esp8266的支持包。具体添加方式如下。

在Arduino的菜单中,选择【文件】 -> 【首选项】。

进入Arduino的首选项配置界面后,在【附加开发板管理器网址】一栏中输入链接:http://arduino.esp8266.com/stable/package_esp8266com_index.json。

之所以这样做,是告诉Arduino软件需要新增一些开发板的支持,其中就包括ESP8266。这些信息可通过这个链接获取。注意,可以使用键盘快捷键复制+粘贴,鼠标右键不支持。输入之后,点击确定按钮退出。

之后,我们需要进入到Arduino的开发管理器中,下载8266相关的开发包。依次点击【工具】->【开发板】->【开发板管理器】,进入开发板管理器界面。

该界面列出了目前Arduino软件支持的所有开发板相关的信息。在搜索框中输入esp8266,将过滤显示esp8266相关的信息项。

选中esp8266,然后点击【安装】,即可自动从网络上下载esp8266的开发工具包到本地计算机上。安装完成后,点击【关闭】按钮退出。

特别注意:由于开发包是从github.com上下载,而对github.com的访问,国内是非常不稳定的。因此,在下载过程中会极有出现下载速度慢、下载错误等情况。碰到这种情况时,需要多次重复尝试下载,或者换一个其它的时间下载,或者找一些能够访问外网的工具。

下载安装完成之后,再次进入开发板管理,即可在Arduino中看到【ESP8266 Boards】。这就表明Arduino软件现在已经增加了好了对ESP8266的支持。

安装USB驱动

在Arduino编写好的程序,需要通过串口才能将程序下载到esp8266中。因此需要先将esp8266连接到计算 机的串口。不过目前的计算机没有串口,所以需要一些USB接口转串口的芯片,比如CP2102、CH340等。淘宝上一般有这些现成的USB转串口的模块可以购买,请自行搜索,连接方式参考下图。

我所用的开发板上自带了CH340芯片,已经连接到了ESP8266上。

将所有的硬件连接好,包括USB转串口,串口到ESP8266。进入Windows的设备管理中,找到【端口】列表,看看是否有所使用的USB转串口芯片设备。

如果没有正确的设备,请选安装好CP2102、CH340等相应芯片的驱动程序。驱动程序请自行百度下载。另外要注意,要选择4线的USB数据线。有些USB数据线仅仅用来供电,所以只有2根线,插上后计算机是识别不了芯片的。

编程测试

打开示例工程

在打开Arduino时,其会自动创建一个空白的工程,里面有两个简单的函数,函数里面为空,什么都不做。我们可能直接使用该工程进行测试,也可以使用其自带的示例工程测试。

如果要使用示例工程,可以依次点击【文件】->【示例】->【01.Basics】=>【Blink】。Arduino会自动创建一个可以闪烁开发板上LED的工程。这样将程序下载到开发板上后,可以直观地看到程序的运行效果。

该示例工程的程序,目前如下。程序较简单,loop会被反复应用,最终的效果就是控制LED灯每2秒闪烁一次。

选择目标设备

在将这个程序下载到开发板之前,我们必须告诉Arduino,这个程序是给哪一种型号的ESP8266开发板所使用的,以及下载的时候通过哪种途径下载。因此我们需要做两步设计。

首先,进入【开发板】=>【ESP8266 Boards】列表,根据自己实际所使用的板子型号,在列表中找到相应的项。我这边选择的是【Node MCU 1.0】。

然后,在【工具】->【端口】中选择程序下载的端口,选择前面在【设备管理器】中看到的USB转串口芯片所对应的端口。我这里是COM4,你的话可能是其它名字。注意,此时确保USB线是插上的。

编译下载

之后,我们可以点击【编译】按钮对程序进行编译。Arduino会使用其内部的GCC编译器对程序进行编译。如果编译没有问题,则在下方的输出窗口会有相应的编译结果。如果有错误,相关的错误信息也会显示出来。

编译完成之后,可以点击【上传】按钮,将程序下载到ESP8266开发板中。

运行效果

程序下载到ESP8266之后,会自动运行。此时,可以在开板上看到LED灯每隔1秒亮一次、灭一次。

结束语

进行到这一步,就说明ESP8266的开发环境已经配置好了。接下来,我们就可以使用Arduion和ESP8266完成一些有趣的应用。

最后,如果你在学习过程中,有什么问题,欢迎在下方评论区留言。也可关注下我,后续我还会带来更多ESP8266相关的文章给大家。

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

ESP8266开发实战之(一)-开发环境配置 的相关文章

  • 如何正确使用电烙铁

    焊接技术是一项无线电爱好者必须掌握的基本技术 xff0c 需要多多练习才能熟练掌握 1 选用合适的焊锡 xff0c 应选用焊接电子元件用的低熔点焊锡丝 2 助焊剂 xff0c 用25 的松香溶解在75 的酒精 xff08 重量比 xff09
  • 2.13 STM32 串口传输最佳处理方式 FreeRTOS+队列+DMA+IDLE (一)

    当多个串口数据都有大量数据来时 我们如何最佳处理STM32串口通信数据 可以通过FreeRTOS 队列的发送方式 下面将串口DMA发送处理过程 中心思想 1 建立一个大的环形数组 2 发送的数据时 将数据存入到大的数组 3 需要发送数据的长
  • 最流行的开源飞控项目ArduPilot Mega(APM)介绍及发展历史

    ArduPilotMega APM 是市面上最强大的基于惯性导航的开源自驾仪 特性包括 免费开源固件 xff0c 支持飞机 xff08 34 ArduPlane 34 xff09 xff0c 多旋翼 四旋翼 六旋翼 八旋翼等 直升机 xff
  • 解密Apache HAWQ ——功能强大的SQL-on-Hadoop引擎 [作者:常雷]

    作者 xff1a 常雷 博士 xff0c Pivotal中国研发中心研发总监 xff0c HAWQ并行Hadoop SQL引擎创始人 xff0c Pivotal HAWQ团队负责人 xff0c 曾任EMC高级研究员 专注于大数据与云计算领域
  • 超简单的麻将算法

    麻将的算法 提高篇 1 先说说 xff0c 数值的构成 类型字 0 xff1a 东南西北中发白 1 xff0c 2 xff0c 3 xff0c 4 xff0c 5 xff0c 6 xff0c 7 类型万 1 xff1a 1 万 2万3 万
  • Android布局常用

    1 控件隐藏 在XML 文件里设置属性隐藏 android visibility 61 34 invisible 34 android visibility 61 34 visible 34 android visibility 61 34
  • 乘法

    乘法 请仔细把下面的看懂 xff0c 看完后 xff0c 也许你能口算出 1 xff5e 199 之间数的平方 xff0c 或许能口算出多个数的结果 1 乘法的本质 xff1a 乘法的本质就是求和 从上面两张图片中 xff0c 你可以知道
  • Android Activity之间跳转与传值

    一 Activity 跳转与传值 xff0c 主要是通过 Intent 类来连接多个 Activity xff0c 通过 Bundle 类来传递数据 最常见最一般的页面跳转代码 xff0c 很简单 xff0c 如下 xff1a Intent
  • URLEncoder.encode和decode

    http www apkbus com forum php mod 61 viewthread amp tid 61 13853 amp fromuid 61 3402
  • JPCT-AE资料相关

    JPCT AE相关 1 网站参考 xff1a 官方网站 http www jpct net download html API http www jpct net jpct ae doc JPCT AE wiki http www jpct
  • 分享本人VSCode配色(如何修改VSCode各种颜色)

    按下Command 43 Shift 43 P打开命令面板输入settings Open Settings为用户自定义设置Open Default Settings为默认设置 xff08 只读 xff0c 不能修改的 xff09 选中Ope
  • ROS学习番外篇12—Mac M1(Pro+Max)安装ROS1或ROS2须知

    由于苹果换了芯片架构 xff0c 因此裸机安装ROS2或者源码安装ROS1和ROS2变得非常困难 使用Parallels Desktop或者其他虚拟机 xff08 比如UTM xff09 安装Ubuntu然后再在Ubuntu上安装ROS是目
  • stm32cubemx hal学习记录:PWR 低功耗停止模式

    一 低功耗停止模式 1 所有时钟都已经停止 2 进入方式 xff1a 配置PWR CR寄存器的PDDS 43 LPDS位 43 SLEEPDEEP位 43 WFI或WFE命令 3 唤醒方式 xff1a 任意外部中断 4 关闭所有1 8v区域
  • Ubuntu下查看文件、文件夹和磁盘空间的大小

    在实际使用ubuntu时候 xff0c 经常要碰到需要查看文件以及文件夹大小的情况 有时候 xff0c 自己创建压缩文件 xff0c 可以使用 ls hl 查看文件大小 参数 h 表示Human Readable xff0c 使用GB MB
  • stm32cubemx hal学习记录:FreeRTOS任务管理

    一 基本配置 1 配置RCC USART1 时钟84MHz 2 配置SYS xff0c 将Timebase Source修改为除滴答定时器外的其他定时器 xff0c 因为滴答定时器被用于时钟基准 xff0c 可以实现任务切换 Timebas
  • 【面试笔试-c/c++】2013年校园招聘创新工场笔试题(北邮场)

    2013年校园招聘创新工场笔试题 xff08 北邮场 xff09 及一面 题目节后补上 回家了 xff0c 上网不方便 面试题 一面 xff1a 1 手写二叉树的中序非递归遍历 xff0c 一步一步解释代码 xff0c 给个二叉树示范代码流
  • PX4驱动分析之MPU6000

    PX4驱动分析之MPU6000 前言 xff1a 首先分析PX4中MPU6000传感器驱动的注册 xff0c 调用 xff0c 实例的过程 xff0c 先要理解一个事情 就是PX4是使用了一个类Linux操作系统的Nuttx操作系统 也就是
  • PX4分析系列之添加北醒TOF传感器(使用UART)

    PX4分析系列之添加北醒TOF传感器 xff08 使用UART xff09 提示 xff1a 一个飞行器爱好者 xff0c 才疏学浅 通过自己学习PX4源码的过程 xff0c 进行分析和记录 欢迎各路大神讨论 xff0c 并指正文中错误 x
  • 产品化的理解

    我对产品化的理解 产品化的时机是看业务的需要 xff0c 不管是对前景的落实 xff0c 还是项目转化成产品 xff0c 这些都不是技术人员能考虑的 xff0c 业务的发展和策划 xff0c 如何进行市场细化等如果都由技术人员考虑 xff0
  • JS对象转insert语句

    function obj2Sql tablename obj var sqls 61 34 34 f 61 34 34 v 61 34 34 obj forEach o 61 gt f 61 34 34 v 61 34 34 for let

随机推荐

  • HTML5小试 双人贪吃蛇

    lt html gt lt head gt lt head gt lt body gt lt div style 61 34 float left 34 gt 当前速度1 xff1a lt button nclick 61 34 jianc
  • 九个Console命令,让js调试更简单

    九个Console命令 xff0c 让js调试更简单 一 显示信息的命令 lt DOCTYPE html gt lt html gt lt head gt lt title gt 常用console命令 lt title gt lt met
  • echarts自定义功能按钮图片 网络路径格式

    toolbox show true orient 39 vertical 39 x 39 left 39 top 39 20 39 feature myTool show true title 39 自定义扩展方法 39 icon 39 i
  • 上班摸鱼逛博客,逮到一个字节8年测试开发,聊过之后羞愧难当......

    老话说的好 xff0c 这人呐 xff0c 一旦在某个领域鲜有敌手了 xff0c 就会闲得某疼 前几天我在上班摸鱼刷博客的时候认识了一位字节测试开发大佬 xff0c 在字节工作了8年 xff0c 因为本人天赋比较高 xff0c 平时工作也兢
  • Ubuntu下USB权限问题以及udev规则文件笔记

    在ubuntu系统下使用传感器的时候 xff0c 通常会遇到一些权限上的问题 比如我使用ROS驱动包来启动bluefox摄像头 xff0c 如果没有任何关于权限上的处理就会提示权限问题导致无法正常启动该摄像头 xff0c 如下图 xff1a
  • 三.卡尔曼滤波器(EKF)开发实践之三: 基于三个传感器的海拔高度数据融合

    本系列文章主要介绍如何在工程实践中使用卡尔曼滤波器 分七个小节介绍 一 卡尔曼滤波器开发实践之一 五大公式 二 卡尔曼滤波器开发实践之二 一个简单的位置估计卡尔曼滤波器 三 卡尔曼滤波器 EKF 开发实践之三 基于三个传感器的海拔高度数据融
  • 树莓派 - 1 安装与配置 - a 系统安装(Raspbian)

    xff08 1 xff09 软件 Raspbian operating system https www raspberrypi org downloads raspbian Etcher SD card writing tool http
  • 分享一个Linux的录屏工具script

    在使用该命令后 xff0c 直接录屏 xff0c 会记录终端在命令行的所有动作 想让别人帮你操作 xff0c 但你的思路跟不上对方敲命令的速度 xff0c 可以先录下来 xff0c 然后回去慢慢琢磨 我的是centos7系统 span cl
  • 最佳Linux防病毒软件推荐!

    看到标题或许你会疑问 xff0c linux如此安全 xff0c 为什么我们还需要安装防病毒软件呢 确实 xff0c linux为全球超过70 的web服务器提供支持 xff0c 黑客极有动机来制造强大的病毒来渗透这些服务器安全系统 xff
  • NvidiaAGXXavier刷机Jetpack5.0.2报错记录(已解决,非搬运)

    网上有很多教程 xff0c 很详细的讲了这个板子刷机应该怎么去做 xff0c 正常的话就按照那个步骤走就可以了 xff0c 这里就不再赘述了 xff0c 但是我在给自己的NvidiaAgxXavier刷Jetpack5 0 2的时候 xff
  • Atmel Cortex-A5跑Nuttx是如此酸爽

    开源RTOS Nuttx已经支持Atmel SAMA5系列MPU xff0c 而且看到Nuttx还支持Graphic API xff0c 决定尝试在Ateml SAMA5D3 Xplained上跑下Nuttx Nuttx是一款开源RTOS
  • Using NuttX OS as a library on Atmel Studio 7

    This document explains how to add NuttX OS to your application on Atmel Studio 7 using NuttX OS as a library With Atmel
  • 【开发备忘】QGroundControl编译

    本文记录在windows下编译最新版QGC的过程 Qt版本为5 15 2 xff0c 编译器为MSVC2015 1 Qt环境配置 尽管目前已有Qt6 xff0c 但是QGC官网明确强调了仅可使用Qt 5 15 2 xff0c 因此首先需要安
  • Linux都应用在哪些领域?发展如何?

    与Windows操作系统软件一样 xff0c Linux也是一个操作系统软件 但与Windows不同的是 xff0c Linux是一套开放源代码程序的 xff0c 并可以自由传播的类UNIX操作系统软件 xff0c 随着信息技术的更新变化
  • opensuse 11.1 在线安装虚拟机 VirtualBox-2.2.4

    有些喜欢的windows软件可以用wine虚拟出来了 xff0c 比如酷狗 xff0c 但是有些就比较麻烦了 xff0c 比如中国特色的在线电影 xff0c 网银 xff0c 或许只有用虚拟机解决起来比较方面 xff0c 说句实在话 xff
  • Linux下CMakeLists.txt编译C++程序笔记

    在Linux下运用ROS系统可免去很多构建框架的步骤 xff0c 所以一般只要按照官网给的教程逐步进行即可 但是ROS自身有许多的毛病 xff0c 比如其稳定性和实时性差 xff0c 有时候数据传输会发现丢失的现象 xff0c 因此其性能不
  • px4: actuators control, control group 和 mixer科普

    原文链接 xff1a https pixhawk org dev mixing Control Mixing This page discusses the general purpose control mixing architectu
  • 如何用开源飞控PIXHAWK进行二次开发?

    著作权归作者所有 商业转载请联系作者获得授权 xff0c 非商业转载请注明出处 作者 xff1a 我是肉包子 链接 xff1a http www zhihu com question 38874663 answer 84239995 来源
  • px4的模式与状态

    一 模式 PX4 native flight stack String Description and notes MANUAL ACRO ALTCTL POSCTL OFFBOARD STABILIZED RATTITUDE in mas
  • ESP8266开发实战之(一)-开发环境配置

    最近买了一块ESP8266的小板子 xff0c 上面自带WIFI功能 xff0c 可以进行一些好玩的物联网开发 因此 xff0c 我打算将对整个板子的的熟悉过程通过一系列的文档记录下来 我拿到的板子型号是NodeMUC 1 0 ESP 12